30 lines
619 B
C#
30 lines
619 B
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public abstract class ToggleBehaviour : MonoBehaviour, IBehaviour
|
|
{
|
|
[SerializeField] private Toggle toggle;
|
|
private bool isActivated = false;
|
|
|
|
protected virtual void Start()
|
|
{
|
|
toggle.onValueChanged.AddListener(value => init());
|
|
}
|
|
|
|
private void init()
|
|
{
|
|
if (isActivated)
|
|
Deactivate();
|
|
else
|
|
Activate();
|
|
|
|
isActivated = !isActivated; // flip the flag
|
|
}
|
|
|
|
public abstract void Activate();
|
|
|
|
public abstract void Deactivate();
|
|
}
|