Make adjustments to bad end map

Modify debug menu slightly to pause while open (need to close the menu to load floors, etc)
Clear map when game over screen appears
This commit is contained in:
2026-06-08 00:08:25 -07:00
parent 19bf9563b6
commit 2ab6158849
12 changed files with 208 additions and 78 deletions
+6 -7
View File
@@ -215,6 +215,7 @@ public partial class Game : Node3D, IGame
_player.PlayerDied += GameOver;
GameOverMenu.NewGame += OnNewGame;
GameOverMenu.QuitGame += OnQuit;
GameOverMenu.GameOverMenuVisible += GameOverMenuAppeared;
PauseMenu.ExitGamePressed += OnQuit;
PauseMenu.UnpauseButtonPressed += OnResume;
@@ -339,6 +340,7 @@ public partial class Game : Node3D, IGame
{
QuestData.DeathCount++;
await Save();
_player.SetSigil(new NoneSigil());
_player.Deactivate();
GameRepo.Pause();
GameState.Input(new GameState.Input.GameOver());
@@ -393,15 +395,13 @@ public partial class Game : Node3D, IGame
})
.Handle((in GameState.Output.OpenDebugMenu _) =>
{
GameRepo.Pause();
InGameUI.DebugMenu.Show();
InGameUI.PlayerInfoUI.Hide();
_player.Deactivate();
})
.Handle((in GameState.Output.CloseDebugMenu _) =>
{
GameRepo.Resume();
InGameUI.DebugMenu.Hide();
InGameUI.PlayerInfoUI.Show();
_player.Activate();
})
.Handle((in GameState.Output.OpenTeleportScreen _) =>
{
@@ -451,9 +451,6 @@ public partial class Game : Node3D, IGame
.Handle((in GameState.Output.GameOver _) =>
{
GameOverMenu.FadeIn();
var enemies = GetTree().GetNodesInGroup("enemy").OfType<IEnemy>();
foreach (var enemy in enemies)
enemy.CallDeferred(MethodName.QueueFree, []);
});
}
@@ -961,6 +958,8 @@ public partial class Game : Node3D, IGame
private void OnQuit() => GameExitRequested?.Invoke();
private void GameOverMenuAppeared() => _map.ClearFloor();
private void OnResume() => GameState.Input(new GameState.Input.PauseButtonPressed());
public void OnExitTree()