Files
Ultimate-Fishing-Simulator-…/Assets/Scripts/Assembly-CSharp/BindBoolVariableToUnityEvent.cs
2026-03-04 09:37:33 +08:00

52 lines
797 B
C#

using Obvious.Soap;
using UnityEngine;
using UnityEngine.Events;
public class BindBoolVariableToUnityEvent : MonoBehaviour
{
[SerializeField]
private BoolVariable boolToCheck;
[SerializeField]
private bool _CheckOnAwake;
[SerializeField]
private UnityEvent onCheckTrue;
[SerializeField]
private UnityEvent onCheckFalse;
private void Awake()
{
if (_CheckOnAwake)
{
if (boolToCheck.Value)
{
onCheckTrue?.Invoke();
}
else
{
onCheckFalse?.Invoke();
}
}
boolToCheck.OnValueChanged += BoolToCheck_OnValueChanged;
}
private void OnDestroy()
{
boolToCheck.OnValueChanged -= BoolToCheck_OnValueChanged;
}
private void BoolToCheck_OnValueChanged(bool obj)
{
if (obj)
{
onCheckTrue.Invoke();
}
else
{
onCheckFalse.Invoke();
}
}
}