コード例 #1
0
        public void AddEventHandler(string type, NetEventHanlder handler, int priority = 0)
        {
            ArrayList handles = null;

            if (!eventHandles.TryGetValue(type, out handles))
            {
                handles = new ArrayList();
                eventHandles.Add(type, handles);
            }

            EventHandle handle = new EventHandle {
                handler = handler, priority = priority
            };
            int index = 0;

            for (int i = 0; i < handles.Count; i++)
            {
                if (((EventHandle)handles[i]).priority <= handle.priority)
                {
                    index = i;
                    break;
                }
            }

            handles.Insert(index, handle);
        }
コード例 #2
0
        public void RemoveEventHander(string type, NetEventHanlder handler)
        {
            EventHandleRemove remove = new EventHandleRemove {
                type = type, handler = handler
            };

            eventHandlesRemove.Add(remove);
        }