28 lines
805 B
C#

using System;
using UnityEngine;
public class SignalView : BaseSettingView
{
public static event Action<string> 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);
}