using System; using UnityEngine; using UnityEngine.EventSystems; namespace Stary.Evo { public class OnUpdateSelectedEventTrigger: MonoBehaviour, IUpdateSelectedHandler { public readonly EasyEvent OnUpdateSelectedEvent = new EasyEvent(); public void OnUpdateSelected(BaseEventData eventData) { OnUpdateSelectedEvent.Trigger(eventData); } } public static class OnUpdateSelectedEventTriggerExtension { public static IUnRegister OnUpdateSelectedEvent(this T self, Action onUpdateSelected) where T : Component { return self.GetOrAddComponent().OnUpdateSelectedEvent.Register(onUpdateSelected); } public static IUnRegister OnUpdateSelectedEvent(this GameObject self, Action onUpdateSelected) { return self.GetOrAddComponent().OnUpdateSelectedEvent.Register(onUpdateSelected); } } }