From ab6dc5db3208a259a5850e5be2c86e1af81afe75 Mon Sep 17 00:00:00 2001 From: Gustas <37534529+PunkPun@users.noreply.github.com> Date: Thu, 5 Sep 2024 20:26:40 +0300 Subject: [PATCH] Fix OrderManager being deleted in map editor --- OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs | 1 + OpenRA.Mods.Common/Widgets/Logic/MainMenuLogic.cs | 2 +- OpenRA.Mods.Common/Widgets/Logic/MissionBrowserLogic.cs | 1 - 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs index 520421e2ca..ab65c14a2d 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Ingame/IngameMenuLogic.cs @@ -543,6 +543,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic if (map.Visibility == MapVisibility.Lobby) { + // HACK: Server lobby should be usable without a server. ConnectionLogic.Connect(Game.CreateLocalServer(uid), "", () => Game.OpenWindow("SERVER_LOBBY", new WidgetArgs diff --git a/OpenRA.Mods.Common/Widgets/Logic/MainMenuLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/MainMenuLogic.cs index 5e46ccfc1d..2a23181582 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/MainMenuLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/MainMenuLogic.cs @@ -473,7 +473,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic SwitchMenu(MenuType.None); Game.OpenWindow("MISSIONBROWSER_PANEL", new WidgetArgs { - { "onExit", () => SwitchMenu(MenuType.Singleplayer) }, + { "onExit", () => { Game.Disconnect(); SwitchMenu(MenuType.Singleplayer); } }, { "onStart", () => { RemoveShellmapUI(); lastGameState = MenuPanel.Missions; } }, { "initialMap", map } }); diff --git a/OpenRA.Mods.Common/Widgets/Logic/MissionBrowserLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/MissionBrowserLogic.cs index 300f3a9e0f..ffb56e796a 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/MissionBrowserLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/MissionBrowserLogic.cs @@ -199,7 +199,6 @@ namespace OpenRA.Mods.Common.Widgets.Logic widget.Get("BACK_BUTTON").OnClick = () => { StopVideo(videoPlayer); - Game.Disconnect(); Ui.CloseWindow(); onExit(); };