using System; using Syntriax.Modules.ToggleState; using UnityEngine; namespace Syntriax.Modules.Trigger { public class Trigger : MonoBehaviour, ITrigger { public IToggleState ToggleStateMember { get; protected set; } = new ToggleStateMember(true); public Action OnTriggerStateChanged { get; set; } = null; private bool _isTrigerred = false; public bool IsTrigerred { get => _isTrigerred; protected set { if (value == _isTrigerred || !ToggleStateMember.IsToggledNullChecked()) return; _isTrigerred = value; OnTriggerStateChanged?.Invoke(value); } } } }