private static void Trigger <TArgs>(EventType eventType, EventTarget target, TArgs args) { if ((eventType & EventType.Global) == EventType.Global) { TargetEvent.Trigger(target.name, args); } if ((eventType & EventType.Target) == EventType.Target) { TargetEvent.Trigger(target, args); } List <Transform> _objs = new List <Transform>(); if ((eventType & EventType.TargetAndParent) == EventType.TargetAndParent) { ((GameObject)target.target).GetParents(_objs); _trigger(target, args, _objs); } if ((eventType & EventType.TargetAndOffspring) == EventType.TargetAndOffspring) { ((GameObject)target.target).GetOffspring(_objs); _trigger(target, args, _objs); } else if ((eventType & EventType.TargetAndChild) == EventType.TargetAndChild) { ((GameObject)target.target).GetOffspring(_objs, 1); _trigger(target, args, _objs); } }
public static void Trigger <TArgs>(EventType eventType, string name, TArgs args) { Trigger(eventType, new EventTarget(name, null), args); }
public static void Trigger(EventType eventType, string name) { Trigger(eventType, new EventTarget(name, null), new EmptyEventArgs()); }
public static void Trigger(EventType eventType, string name, GameObject target) { Trigger(eventType, new EventTarget(name, target), new EmptyEventArgs()); }
public static void Trigger <TArgs>(EventType eventType, string name, GameObject target, TArgs args) { Trigger(eventType, new EventTarget(name, target), args); }