Files
beyond/Assets/ThirdParty/PlayMaker/Actions/UI/Components/PlayMakerUiBoolValueChangedEvent.cs
2024-11-20 15:21:28 +01:00

48 lines
1.0 KiB
C#

#if !PLAYMAKER_NO_UI
using UnityEngine.UI;
using UnityEngine;
namespace HutongGames.PlayMaker
{
[AddComponentMenu("PlayMaker/UI/UI Bool Value Changed Event")]
public class PlayMakerUiBoolValueChangedEvent : PlayMakerUiEventBase
{
public Toggle toggle;
protected override void Initialize()
{
if (initialized) return;
initialized = true;
if (toggle == null)
{
toggle = GetComponent<Toggle>();
}
if (toggle != null)
{
toggle.onValueChanged.AddListener(OnValueChanged);
}
}
protected void OnDisable()
{
initialized = false;
if (toggle != null)
{
toggle.onValueChanged.RemoveListener(OnValueChanged);
}
}
private void OnValueChanged(bool value)
{
Fsm.EventData.BoolData = value;
SendEvent(FsmEvent.UiBoolValueChanged);
}
}
}
#endif