using System; using UnityEngine; public class SignalView : BaseSettingView { public static event Action SignalEmmited; [SerializeField] private MSignalButton _signalButton; private string signal; public override SettingDTO CachedSetting { get ; set; } public override void Initialize(SettingDTO setting) { base.Initialize(setting); CachedSetting = setting; signal = setting.SignalValue; _signalButton.OnClick += EmitSignal; } public override void TakeInput(int _, bool action) => _signalButton.TakeInput(action); public override void Select() => _signalButton.SelectAnimation(); public override void Deselect() => _signalButton.DeselectAnimation(); private void EmitSignal() => SignalEmmited?.Invoke(signal); }