/// <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); } }
/*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); } }
/*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); } }
/// <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); } }
public RoleEventNode(RoleEventNodeType type) => NodeType = type;
/// <summary> /// 负责事件接收模块的反注册 /// </summary> /// <param name="type">模块类型</param> protected virtual void UnRegister(RoleEventNodeType type) => _mutiRoleEventReceiver?.UnRegister(type, RoleNumber);
/*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);