Ejemplo n.º 1
0
 /// <summary>
 /// 负责事件接收模块的反注册
 /// </summary>
 /// <param name="type">模块类型</param>
 public void UnRegister(RoleEventNodeType type)
 {
     try
     {
         if (_receivers != null && _receivers.ContainsKey(type))
         {
             _receivers.Remove(type);
         }
     }
     catch (Exception e) { Debug.Log(e.Message); }
 }
Ejemplo n.º 2
0
    /*sub class register or unregister event callback entrance.*/

    /// <summary>
    /// 负责事件接收模块的注册
    /// </summary>
    /// <param name="type">模块类型</param>
    /// <param name="receiver">模块接口实例</param>
    public void Register(RoleEventNodeType type, IEventReceiver receiver)
    {
        try
        {
            if (_receivers != null && !_receivers.ContainsKey(type) && receiver != null)
            {
                _receivers.Add(type, receiver);
            }
        }
        catch (Exception e) { Debug.Log(e.Message); }
    }
Ejemplo n.º 3
0
    /*sub class register or unregister event callback entrance.*/

    /// <summary>
    /// 负责事件接收模块的注册
    /// </summary>
    /// <param name="type">模块类型</param>
    /// <param name="receiver">模块接口实例</param>
    public void Register(RoleEventNodeType type, RoleNumber number, IEventReceiver receiver)
    {
        try
        {
            _receivers.TryGetValue(number, out var receivers);
            receivers = receivers ?? (_receivers[number] = new Dictionary <RoleEventNodeType, IEventReceiver>());
            if (!receivers.ContainsKey(type))
            {
                receivers.Add(type, receiver);
            }
        }
        catch (Exception e) { Debug.Log(e.Message); }
    }
Ejemplo n.º 4
0
 /// <summary>
 /// 负责事件接收模块的反注册
 /// </summary>
 /// <param name="type">模块类型</param>
 public void UnRegister(RoleEventNodeType type, RoleNumber number)
 {
     try
     {
         if (_receivers.TryGetValue(number, out var receivers))
         {
             if (receivers != null && receivers.ContainsKey(type))
             {
                 receivers.Remove(type);
             }
         }
     }
     catch (Exception e) { Debug.Log(e.Message); }
 }
Ejemplo n.º 5
0
 public RoleEventNode(RoleEventNodeType type) => NodeType = type;
Ejemplo n.º 6
0
 /// <summary>
 /// 负责事件接收模块的反注册
 /// </summary>
 /// <param name="type">模块类型</param>
 protected virtual void UnRegister(RoleEventNodeType type) => _mutiRoleEventReceiver?.UnRegister(type, RoleNumber);
Ejemplo n.º 7
0
    /*sub class register or unregister event callback entrance.*/

    /// <summary>
    /// 负责事件接收模块的注册
    /// </summary>
    /// <param name="type">模块类型</param>
    /// <param name="receiver">模块接口实例</param>
    protected virtual void Register(RoleEventNodeType type, IEventReceiver receiver) => _mutiRoleEventReceiver?.Register(type, RoleNumber, receiver);