public static void StartListening(string eventName, UnityAction <GameEventArgs> listener) { GameEvent thisEvent = null; if (Instance.eventDictionary.TryGetValue(eventName, out thisEvent)) { thisEvent.AddListener(listener); } else { thisEvent = new GameEvent(); thisEvent.AddListener(listener); Instance.eventDictionary.Add(eventName, thisEvent); } }