41 lines
923 B
C#
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;
|
|
}
|
|
}
|
|
}
|