cirnogodot/Scripts/UI/PauseMenu.cs
2025-02-24 10:58:00 +01:00

55 lines
No EOL
1.4 KiB
C#

using Godot;
namespace Cirno.Scripts.UI;
public partial class PauseMenu : Control
{
[ExportGroup("Scenes")]
[Export]
public string MainMenuScene { get; private set; }
[ExportGroup("Buttons")]
[Export]
public Button ResumeButton { get; private set; }
[ExportGroup("Buttons")]
[Export]
public Button QuitButton { get; private set; }
[ExportGroup("Buttons")]
[Export]
public Button OptionsButton { get; private set; }
[ExportGroup("Buttons")]
[Export]
public Button DebugButton { get; private set; }
private GameManager _gameManager;
[Signal]
public delegate void SpawnDebugMenuEventHandler();
public override void _Ready()
{
//_gameManager = GetNode<GameManager>("/root/GameScene");
_gameManager = GameManager.Instance;
ResumeButton.Pressed += ResumeButtonOnPressed;
QuitButton.Pressed += QuitButtonOnPressed;
DebugButton.Pressed += DebugButtonOnPressed;
}
private void DebugButtonOnPressed()
{
EmitSignal(SignalName.SpawnDebugMenu);
}
private void ResumeButtonOnPressed()
{
_gameManager.Unpause();
}
private void QuitButtonOnPressed()
{
_gameManager.Unpause();
GlobalState.Instance.GotoScene(MainMenuScene);
//GetTree().ChangeSceneToFile(MainMenuScene);
}
}