From ce359f5309ae9ed629afa82b584e341322ae1948 Mon Sep 17 00:00:00 2001 From: Joonas Rikkonen Date: Fri, 29 Mar 2019 17:23:19 +0200 Subject: [PATCH] (93669eac9) Fix cannot close pause menu by pressing esc. --- Barotrauma/BarotraumaClient/Source/GUI/GUI.cs | 8 ++++---- Barotrauma/BarotraumaClient/Source/GameMain.cs | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Barotrauma/BarotraumaClient/Source/GUI/GUI.cs b/Barotrauma/BarotraumaClient/Source/GUI/GUI.cs index 6732dcef2..87ccc8154 100644 --- a/Barotrauma/BarotraumaClient/Source/GUI/GUI.cs +++ b/Barotrauma/BarotraumaClient/Source/GUI/GUI.cs @@ -56,7 +56,7 @@ namespace Barotrauma private static List messages = new List(); private static Sound[] sounds; private static bool pauseMenuOpen, settingsMenuOpen; - private static GUIFrame pauseMenu; + public static GUIFrame PauseMenu { get; private set; } private static Sprite arrow, lockIcon, checkmarkIcon, timerIcon; public static KeyboardDispatcher KeyboardDispatcher { get; set; } @@ -561,7 +561,7 @@ namespace Barotrauma if (pauseMenuOpen) { - pauseMenu.AddToGUIUpdateList(); + PauseMenu.AddToGUIUpdateList(); } if (settingsMenuOpen) { @@ -1420,9 +1420,9 @@ namespace Barotrauma if (pauseMenuOpen) { - pauseMenu = new GUIFrame(new RectTransform(Vector2.One, Canvas), style: null, color: Color.Black * 0.5f); + PauseMenu = new GUIFrame(new RectTransform(Vector2.One, Canvas), style: null, color: Color.Black * 0.5f); - var pauseMenuInner = new GUIFrame(new RectTransform(new Vector2(0.13f, 0.3f), pauseMenu.RectTransform, Anchor.Center) { MinSize = new Point(200, 300) }); + var pauseMenuInner = new GUIFrame(new RectTransform(new Vector2(0.13f, 0.3f), PauseMenu.RectTransform, Anchor.Center) { MinSize = new Point(200, 300) }); var buttonContainer = new GUILayoutGroup(new RectTransform(new Vector2(0.85f, 0.85f), pauseMenuInner.RectTransform, Anchor.Center)) { diff --git a/Barotrauma/BarotraumaClient/Source/GameMain.cs b/Barotrauma/BarotraumaClient/Source/GameMain.cs index 91174caa9..d08306bd4 100644 --- a/Barotrauma/BarotraumaClient/Source/GameMain.cs +++ b/Barotrauma/BarotraumaClient/Source/GameMain.cs @@ -601,7 +601,7 @@ namespace Barotrauma { ((GUIMessageBox)GUIMessageBox.VisibleBox).Close(); } - else if (GUI.MouseOn == null && Inventory.SelectedSlot == null && CharacterHealth.OpenHealthWindow == null) + else if ((GUI.MouseOn == null || GUI.IsMouseOn(GUI.PauseMenu)) && Inventory.SelectedSlot == null && CharacterHealth.OpenHealthWindow == null) { // Otherwise toggle pausing, unless another window/interface is open. GUI.TogglePauseMenu();