From fd4b49e0d5ab086d24225ce69b1a2a267ab4a4d5 Mon Sep 17 00:00:00 2001 From: John Gross Date: Thu, 11 Jul 2019 13:26:43 -0700 Subject: [PATCH] Fix remote API load order --- Torch.Server/Managers/RemoteAPIManager.cs | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/Torch.Server/Managers/RemoteAPIManager.cs b/Torch.Server/Managers/RemoteAPIManager.cs index 4d7fe1c..645a426 100644 --- a/Torch.Server/Managers/RemoteAPIManager.cs +++ b/Torch.Server/Managers/RemoteAPIManager.cs @@ -17,12 +17,24 @@ namespace Torch.Server.Managers /// public override void Attach() { - if (MySandboxGame.ConfigDedicated.RemoteApiEnabled && !string.IsNullOrEmpty(MySandboxGame.ConfigDedicated.RemoteSecurityKey)) + Torch.GameStateChanged += TorchOnGameStateChanged; + base.Attach(); + } + + /// + public override void Detach() + { + Torch.GameStateChanged -= TorchOnGameStateChanged; + base.Detach(); + } + + private void TorchOnGameStateChanged(MySandboxGame game, TorchGameState newstate) + { + if (newstate == TorchGameState.Loading && MySandboxGame.ConfigDedicated.RemoteApiEnabled && !string.IsNullOrEmpty(MySandboxGame.ConfigDedicated.RemoteSecurityKey)) { var myRemoteServer = new MyRemoteServer(MySandboxGame.ConfigDedicated.RemoteApiPort, MySandboxGame.ConfigDedicated.RemoteSecurityKey); LogManager.GetCurrentClassLogger().Info($"Remote API started on port {myRemoteServer.Port}"); } - base.Attach(); } } } \ No newline at end of file