public void Broadcast <T>(string senceName, string name, params T[] args) { if (eventTable.ContainsKey(senceName) && eventTable[senceName].ContainsKey(name)) { EventCenterCallBack <T> callBack = eventTable[senceName][name] as EventCenterCallBack <T>; if (callBack != null) { callBack(args); } else { throw new Exception(string.Format("the senceName:{0} wasn't have callBack,please check{1} ", StringAdd(senceName, "-", name), typeof(T))); } } }
public void RemoveListener <T>(string senceName, string name, EventCenterCallBack <T> callBack) { OnListenerRemove(senceName, name, callBack); eventTable[senceName][name] = (EventCenterCallBack <T>)eventTable[senceName][name] - callBack; OnListenerRemoved(senceName, name); }
public void AddListener <T>(string senceName, string name, EventCenterCallBack <T> callBack) { OnListenerAdd(senceName, name, callBack); eventTable[senceName][name] = (EventCenterCallBack <T>)eventTable[senceName][name] + callBack; }