Beispiel #1
0
        public void PushLocalEvent(int localId, MyEvent.EventType type)
        {
            var evt = new MyEvent(type);

            evt.localID = localId;
            PushLocalEvent(localId, evt);
        }
Beispiel #2
0
 public IEnumerator WaitEvt(MyEvent.EventType type)
 {
     while (!happenedEvt.ContainsKey(type))
     {
         yield return(null);
     }
     happenedEvt.Remove(type);
 }
Beispiel #3
0
        public void dropListener(MyEvent.EventType evtName, EventDel callback)
        {
            List <EventDel> evtListener = null;

            if (m_listeners.TryGetValue(evtName, out evtListener))
            {
                evtListener.Remove(callback);
            }
        }
Beispiel #4
0
 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);
 }
Beispiel #5
0
        /// <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);
        }
Beispiel #6
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);
            }
        }
Beispiel #7
0
        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);
        }
Beispiel #8
0
        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);
            }
        }
Beispiel #9
0
        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);
        }
Beispiel #10
0
 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);
     }
 }
Beispiel #11
0
 //取消特定事件 防止当前状态机接收到 玩家新的动作事件
 void UnRegEvent(MyEvent.EventType evt)
 {
     MyEventSystem.myEventSystem.DropLocalListener(ownerLocalId, evt, OnEvent);
 }
Beispiel #12
0
 public static void PushEventStatic(MyEvent.EventType evt)
 {
     myEventSystem.PushEvent(evt);
 }
Beispiel #13
0
 public void PushEvent(MyEvent.EventType evt)
 {
     PushEvent(new MyEvent(evt));
 }
Beispiel #14
0
 public static void PushLocalEventStatic(int localId, MyEvent.EventType type)
 {
     myEventSystem.PushLocalEvent(localId, type);
 }