diff --git a/QSB/ClientServerStateSync/ClientStateManager.cs b/QSB/ClientServerStateSync/ClientStateManager.cs index 7d79ea7f..75af39a7 100644 --- a/QSB/ClientServerStateSync/ClientStateManager.cs +++ b/QSB/ClientServerStateSync/ClientStateManager.cs @@ -172,19 +172,15 @@ namespace QSB.ClientServerStateSync } } - private ClientState ForceGetCurrentState() - { - var currentScene = LoadManager.GetCurrentScene(); - - return currentScene switch + private static ClientState ForceGetCurrentState() + => QSBSceneManager.CurrentScene switch { OWScene.TitleScreen => ClientState.InTitleScreen, OWScene.Credits_Fast => ClientState.WatchingShortCredits, OWScene.Credits_Final or OWScene.PostCreditsScene => ClientState.WatchingLongCredits, OWScene.SolarSystem => ClientState.AliveInSolarSystem, OWScene.EyeOfTheUniverse => ClientState.AliveInEye, - _ => ClientState.NotLoaded, + _ => ClientState.NotLoaded }; - } } -} +} \ No newline at end of file diff --git a/QSB/ClientServerStateSync/ServerStateManager.cs b/QSB/ClientServerStateSync/ServerStateManager.cs index 7aba7d01..0309d399 100644 --- a/QSB/ClientServerStateSync/ServerStateManager.cs +++ b/QSB/ClientServerStateSync/ServerStateManager.cs @@ -94,24 +94,20 @@ namespace QSB.ClientServerStateSync private void OnTriggerSupernova() { - FireChangeServerStateEvent(ServerState.WaitingForAllPlayersToDie); - } - - private ServerState ForceGetCurrentState() - { - var currentScene = LoadManager.GetCurrentScene(); - - switch (currentScene) + if (QSBSceneManager.CurrentScene == OWScene.SolarSystem) { - case OWScene.SolarSystem: - return ServerState.InSolarSystem; - case OWScene.EyeOfTheUniverse: - return ServerState.InEye; - default: - return ServerState.NotLoaded; + FireChangeServerStateEvent(ServerState.WaitingForAllPlayersToDie); } } + private static ServerState ForceGetCurrentState() + => QSBSceneManager.CurrentScene switch + { + OWScene.SolarSystem => ServerState.InSolarSystem, + OWScene.EyeOfTheUniverse => ServerState.InEye, + _ => ServerState.NotLoaded + }; + private void Update() { if (!QSBCore.IsHost) @@ -128,9 +124,9 @@ namespace QSB.ClientServerStateSync if (_currentState == ServerState.WaitingForAllPlayersToReady) { if (QSBPlayerManager.PlayerList.All(x - => x.State is ClientState.WaitingForOthersToBeReady - or ClientState.AliveInSolarSystem - or ClientState.AliveInEye)) + => x.State is ClientState.WaitingForOthersToBeReady + or ClientState.AliveInSolarSystem + or ClientState.AliveInEye)) { DebugLog.DebugWrite($"All ready!!"); QSBEventManager.FireEvent(EventNames.QSBStartLoop); @@ -153,4 +149,4 @@ namespace QSB.ClientServerStateSync } } } -} +} \ No newline at end of file