using System; using ETModel; namespace ETHotfix { [MessageHandler(AppType.Manager)] public class C2M_ReloadHandler: AMRpcHandler { protected override void Run(Session session, C2M_Reload message, Action reply) { RunAsync(session, message, reply).NoAwait(); } private async ETVoid RunAsync(Session session, C2M_Reload message, Action reply) { M2C_Reload response = new M2C_Reload(); if (message.Account != "panda" && message.Password != "panda") { Log.Error($"error reload account and password: {MongoHelper.ToJson(message)}"); return; } try { StartConfigComponent startConfigComponent = Game.Scene.GetComponent(); NetInnerComponent netInnerComponent = Game.Scene.GetComponent(); foreach (StartConfig startConfig in startConfigComponent.GetAll()) { InnerConfig innerConfig = startConfig.GetComponent(); Session serverSession = netInnerComponent.Get(innerConfig.IPEndPoint); await serverSession.Call(new M2A_Reload()); } reply(response); } catch (Exception e) { ReplyError(response, e, reply); } } } }