Files
test/Assets/PerfectWorld/Scripts/UI/GamePlay/AUIToggleAssignSlot.cs
T
2026-04-07 14:52:34 +07:00

41 lines
923 B
C#

using System;
using UnityEngine;
namespace BrewMonster
{
public class AUIToggleAssignSlot : AUIToggle
{
public event Action<bool, int> OnSetSlot;
public override void Awake()
{
UnSubscribeEvents();
SubscribeEvents();
return;
}
public void OnDestroy()
{
UnSubscribeEvents();
}
private void UnSubscribeEvents()
{
uiToggle.onValueChanged.RemoveAllListeners();
}
private void SubscribeEvents()
{
uiToggle.onValueChanged.AddListener(OnToggleValueChanged);
}
private void OnToggleValueChanged(bool isOn)
{
OnSetSlot?.Invoke(isOn, slotIndex);
}
public int GetSlotIndexForAssign() => slotIndex;
public void UncheckAfterAssign()
{
uiToggle.isOn = false;
}
}
}