public void PushLocalEvent(int localId, MyEvent.EventType type) { var evt = new MyEvent(type); evt.localID = localId; PushLocalEvent(localId, evt); }
public IEnumerator WaitEvt(MyEvent.EventType type) { while (!happenedEvt.ContainsKey(type)) { yield return(null); } happenedEvt.Remove(type); }
public void dropListener(MyEvent.EventType evtName, EventDel callback) { List <EventDel> evtListener = null; if (m_listeners.TryGetValue(evtName, out evtListener)) { evtListener.Remove(callback); } }
public void AddLocalEvent(int localId, MyEvent.EventType type, EventDel cb) { regLoalEvtEvts.Add(type, new LocalReg() { localId = localId, cb = cb, }); MyEventSystem.myEventSystem.RegisterLocalEvent(localId, type, cb); }
/// <summary> ///获得注册了特定事件的事件处理器数量 /// </summary> /// <returns>The reg event handler.</returns> /// <param name="evt">Evt.</param> public int GetRegEventHandler(MyEvent.EventType evt) { List <EventDel> evtListeners = null; if (m_listeners.TryGetValue(evt, out evtListeners)) { return(evtListeners.Count); } return(0); }
public void DropLocalListener(int localId, MyEvent.EventType type, EventDel callback) { List <EventDel> evtListeners = null; var key = (long)localId * LocalCoff + (int)type; Log.Sys("DropLocalListener " + localId + " " + type + " " + key); if (localListener.TryGetValue(key, out evtListeners)) { evtListeners.Remove(callback); } }
public void AddLocalEvent(MyEvent.EventType type, EventDel cb) { var localId = GetComponent <NpcAttribute>().GetLocalId(); regLoalEvtEvts.Add(type, new LocalReg() { localId = localId, cb = cb, }); MyEventSystem.myEventSystem.RegisterLocalEvent(localId, type, cb); }
public void RegisterLocalEvent(int localId, MyEvent.EventType type, EventDel callback) { List <EventDel> evtListeners = null; var key = (long)localId * LocalCoff + (int)type; Log.Sys("RegLocalEvent is " + localId + " " + key + " " + type.ToString()); if (localListener.TryGetValue(key, out evtListeners)) { evtListeners.Add(callback); } else { evtListeners = new List <EventDel>(); evtListeners.Add(callback); localListener.Add(key, evtListeners); } }
public void RegisterEvent(MyEvent.EventType evtName, EventDel callback) { List <EventDel> evtListeners = null; if (m_listeners.TryGetValue(evtName, out evtListeners)) { //evtListeners.Remove (callback); evtListeners.Add(callback); } else { evtListeners = new List <EventDel>(); evtListeners.Add(callback); m_listeners.Add(evtName, evtListeners); } Log.Important("RegisterEvent " + evtName + " " + callback); }
public void AddEvent(MyEvent.EventType type, EventDel cb) { if (cb != null) { regEvts.Add(type, cb); MyEventSystem.myEventSystem.RegisterEvent(type, cb); } else { var del = new EventDel(delegate(MyEvent evt){ if (!happenedEvt.ContainsKey(type)) { happenedEvt.Add(type, evt); } }); MyEventSystem.myEventSystem.RegisterEvent(type, del); } }
//取消特定事件 防止当前状态机接收到 玩家新的动作事件 void UnRegEvent(MyEvent.EventType evt) { MyEventSystem.myEventSystem.DropLocalListener(ownerLocalId, evt, OnEvent); }
public static void PushEventStatic(MyEvent.EventType evt) { myEventSystem.PushEvent(evt); }
public void PushEvent(MyEvent.EventType evt) { PushEvent(new MyEvent(evt)); }
public static void PushLocalEventStatic(int localId, MyEvent.EventType type) { myEventSystem.PushLocalEvent(localId, type); }