/// <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); } }
/// <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); } } }
/// <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); } }