using System; using Script; using UnityEngine.Events; using UnityEngine.UI; public class ToggleButton : BaseBehaviour { public Button[] btns; [Serializable] public class ToggleButtonEvent : UnityEvent { } public ToggleButtonEvent onValueChanged = new ToggleButtonEvent(); public bool IsOn { get { if (btns == null || btns.Length == 0) { return false; } return btns[0].gameObject.activeSelf; } set { if (btns == null || btns.Length == 0) { return; } if (value) { btns[0].gameObject.SetActive(true); btns[1].gameObject.SetActive(false); } else { btns[0].gameObject.SetActive(false); btns[1].gameObject.SetActive(true); } onValueChanged?.Invoke(value); } } private void Reset() { btns = GetComponentsInChildren