public void RemoveEventListener(int eventType, IzEventListener listener) { List <IzEventListener> listenerList; if (this._eventListenerMap.TryGetValue(eventType, out listenerList)) { if (listenerList.Contains(listener)) { listenerList.Remove(listener); } } }
public void DispatchEvent(int eventType, GameEvent evt) { List <IzEventListener> listenerList; if (this._eventListenerMap.TryGetValue(eventType, out listenerList)) { for (int i = 0; i < listenerList.Count; i++) { IzEventListener listener = listenerList[i]; listener.ProcessEvent(evt); } } }
public bool HasEventListener(int eventType, IzEventListener listener) { List <IzEventListener> listenerList; if (this._eventListenerMap.TryGetValue(eventType, out listenerList)) { if (listenerList.Contains(listener)) { return(true); } } return(false); }
public void RegisterEventListener(int eventType, IzEventListener listener) { List <IzEventListener> listenerList; if (this._eventListenerMap.TryGetValue(eventType, out listenerList)) { if (!listenerList.Contains(listener)) { listenerList.Add(listener); } } else { listenerList = new List <IzEventListener>(); listenerList.Add(listener); this._eventListenerMap.Add(eventType, listenerList); } }