Пример #1
0
 /// <summary>
 /// Uns the register message handler.
 /// 解注册一群消息 一个模块的多个消息公用一个回调可以;
 /// </summary>
 /// <param name="commands">Commands.</param>
 /// <param name="del">Del.</param>
 public void UnRegisterMessageHandler(int[] commands, OnRecvMessageDelegate del)
 {
     foreach (int c in commands)
     {
         UnRegisterMessageHandler(c, del);
     }
 }
Пример #2
0
    /// <summary>
    /// Uns the register message handler.
    /// </summary>
    /// <param name="command">Command.</param>
    /// <param name="del">Del.</param>
    public void UnRegisterMessageHandler(int command, OnRecvMessageDelegate del)
    {
        if (mMessageHandlers.ContainsKey((int)command))
        {
            List <OnRecvMessageDelegate> handlerList = null;
            mMessageHandlers.TryGetValue((int)command, out handlerList);

            if (handlerList != null)
            {
                handlerList.Remove(del);
            }
        }
    }
Пример #3
0
    /// <summary>
    /// Registers the message handler.
    /// 注册一个消息的委托;
    /// </summary>
    /// <param name="command">Command.</param>
    /// <param name="del">Del.</param>
    public void RegisterMessageHandler(int command, OnRecvMessageDelegate del)
    {
        List <OnRecvMessageDelegate> handlerList = null;

        if (mMessageHandlers.ContainsKey(command))
        {
            mMessageHandlers.TryGetValue(command, out handlerList);
        }
        else
        {
            handlerList = new List <OnRecvMessageDelegate>();
            mMessageHandlers.Add((int)command, handlerList);
        }

        if (!handlerList.Contains(del))
        {
            handlerList.Add(del);
        }
    }