using System; using UnityEngine; using UnityEngine.EventSystems; namespace Stary.Evo { public class OnPointerDownEventTrigger : MonoBehaviour,IPointerDownHandler { public readonly EasyEvent OnPointerDownEvent = new EasyEvent(); public void OnPointerDown(PointerEventData eventData) { OnPointerDownEvent.Trigger(eventData); } } public static class OnPointerDownEventTriggerExtension { public static IUnRegister OnPointerDownEvent(this T self, Action onPointerDownEvent) where T : Component { return self.GetOrAddComponent().OnPointerDownEvent .Register(onPointerDownEvent); } public static IUnRegister OnPointerDownEvent(this GameObject self, Action onPointerDownEvent) { return self.GetOrAddComponent().OnPointerDownEvent .Register(onPointerDownEvent); } } }