public static void StopListening(GameObjectEventType eventType, UnityAction <GameObject> action) { if (Instance._eventRegisterGameObject.TryGetValue(eventType, out var listener)) { listener.RemoveListener(action); } }
public static void RaiseEvent(GameObjectEventType eventType, GameObject arg = null) { if (Instance._eventRegisterGameObject.TryGetValue(eventType, out var listener)) { listener.Invoke(arg); } }
public static void StartListening(GameObjectEventType eventType, UnityAction <GameObject> action) { if (!Instance._eventRegisterGameObject.Keys.Contains(eventType)) { Instance._eventRegisterGameObject.Add(eventType, new UnityEventWithGameObject()); } var eventListener = Instance._eventRegisterGameObject[eventType]; eventListener.AddListener(action); }