Fix pause menu

This commit is contained in:
2026-06-07 16:46:23 -07:00
parent 313fbbd759
commit 1ec278d0bb
2 changed files with 11 additions and 7 deletions
+3
View File
@@ -217,6 +217,7 @@ public partial class Game : Node3D, IGame
GameOverMenu.QuitGame += OnQuit;
PauseMenu.ExitGamePressed += OnQuit;
PauseMenu.UnpauseButtonPressed += OnResume;
_doubleExpTimer = new Timer();
_doubleExpTimer.WaitTime = 30;
@@ -960,6 +961,8 @@ public partial class Game : Node3D, IGame
private void OnQuit() => GameExitRequested?.Invoke();
private void OnResume() => GameState.Input(new GameState.Input.PauseButtonPressed());
public void OnExitTree()
{
InGameUI.UseTeleportPrompt.TeleportToNextFloor -= UseTeleportPrompt_TeleportToNextFloor;
@@ -40,7 +40,12 @@ public partial class PauseMenu : Control, IPauseMenu
}
private void ExitButton_Pressed() => ExitGamePressed?.Invoke();
private void ResumeButton_Pressed() => FadeOut();
private void ResumeButton_Pressed()
{
FadeOut();
EmitSignal(SignalName.UnpauseButtonPressed);
}
public void FadeIn()
{
ResumeButton.GrabFocus();
@@ -54,15 +59,11 @@ public partial class PauseMenu : Control, IPauseMenu
AnimationPlayer.Play("fade_out");
}
public override void _UnhandledInput(InputEvent @event)
{
if (@event.IsActionPressed(GameInputs.Pause))
EmitSignal(SignalName.UnpauseButtonPressed);
}
public void OnAnimationFinished(StringName name)
{
if (name == "fade_out")
{
Hide();
}
}
}