using System; using UnityEngine; using UnityEngine.EventSystems; namespace Stary.Evo { public class OnMoveEventTrigger: MonoBehaviour, IMoveHandler { public readonly EasyEvent OnMoveEvent = new EasyEvent(); public void OnMove(AxisEventData eventData) { OnMoveEvent.Trigger(eventData); } } public static class OnMoveEventTriggerExtension { public static IUnRegister OnMoveEvent(this T self, Action onMove) where T : Component { return self.GetOrAddComponent().OnMoveEvent.Register(onMove); } public static IUnRegister OnMoveEvent(this GameObject self, Action onMove) { return self.GetOrAddComponent().OnMoveEvent.Register(onMove); } } }