/// <summary> /// 将方法注册到消息系统里 /// </summary> /// <param name="module"></param> public void Register(ILogicModule[] module) { foreach(var m in module) { Register(m); } }
/// <summary> /// 注册所有模块的网络消息到包管理器里 /// </summary> /// <param name="modules"></param> /// <param name="handlers"></param> public static void Register(ILogicModule[] modules, PacketHandlersBase handlers) { foreach (var m in modules) { if (m is TradeAge.Server.Interface.Server.IGame) { IProtoclAutoCode pac = new IGameAccess1(); list.Add(pac); pac.SetModule(m as TradeAge.Server.Interface.Server.IGame); pac.PacketHandlerManager = handlers; pac.Init(); } if (m is TradeAge.Server.Interface.Server.ILogin) { IProtoclAutoCode pac = new ILoginAccess2(); list.Add(pac); pac.SetModule(m as TradeAge.Server.Interface.Server.ILogin); pac.PacketHandlerManager = handlers; pac.Init(); } if (m is TradeAge.Server.Interface.Server.IScene) { IProtoclAutoCode pac = new ISceneAccess3(); list.Add(pac); pac.SetModule(m as TradeAge.Server.Interface.Server.IScene); pac.PacketHandlerManager = handlers; pac.Init(); } } }
public void SetModule(ILogicModule m) { if (m == null) throw new ArgumentNullException("ILogicModule"); module = (TradeAge.Server.Interface.ServerLogic.ILogin)m; if (module == null) { throw new NullReferenceException(string.Format("{0} not TradeAge.Server.Interface.ServerLogic.ILogin", m.GetType().FullName)); } }
public void SetModule(ILogicModule m) { if (m == null) { throw new ArgumentNullException("ILogicModule"); } module = (TradeAge.Server.Interface.ServerLogic.ILogin)m; if (module == null) { throw new NullReferenceException(string.Format("{0} not TradeAge.Server.Interface.ServerLogic.ILogin", m.GetType().FullName)); } }
/// <summary> /// 将方法注册到消息系统里 /// </summary> /// <param name="module"></param> void Register(ILogicModule module) { var type = module.GetType(); var createCode = new CreateReadCode(type); var proxy = createCode.CreateCodeAndBuilder(); if (proxy == null) { Logs.Error("模块 {0} 无法进行消息代理生成。", type.Name); return; } proxy.PacketHandlerManager = packetHandlerManager; proxy.SetModule(module); proxy.Init(); }
/// <summary> /// 将方法注册到消息系统里 /// </summary> /// <param name="module"></param> void Register(ILogicModule module) { var type = module.GetType(); var createCode = new CreateReadCode(type); var proxy = createCode.CreateCodeAndBuilder(); if (proxy == null) { Logs.Error("模块 {0} 无法进行消息代理生成。", type.Name); return; } proxy.PacketHandlerManager = packetHandlerManager; proxy.SetModule(module); proxy.Init(); }