Add MainMenu scene and script with start and quit functionality

This commit is contained in:
2025-08-23 17:12:29 +02:00
parent 846c3a6d83
commit 07995821f5
15 changed files with 125 additions and 145 deletions

52
Scripts/MainMenu.cs Normal file
View File

@@ -0,0 +1,52 @@
using Godot;
namespace ParasiticGod.Scripts;
public partial class MainMenu : Node
{
[Export] private PackedScene _gameScene;
[Export] private Button _startButton;
[Export] private Button _quitButton;
public override void _Ready()
{
if (_startButton != null)
{
_startButton.Pressed += OnStartButtonPressed;
}
if (_quitButton != null)
{
_quitButton.Pressed += OnQuitButtonPressed;
}
}
public override void _ExitTree()
{
if (_startButton != null)
{
_startButton.Pressed -= OnStartButtonPressed;
}
if (_quitButton != null)
{
_quitButton.Pressed -= OnQuitButtonPressed;
}
}
private void OnStartButtonPressed()
{
if (_gameScene == null)
{
GD.PrintErr("Game scene is not assigned in MainMenu.");
return;
}
GetTree().ChangeSceneToPacked(_gameScene);
}
private void OnQuitButtonPressed()
{
GetTree().Quit();
}
}

1
Scripts/MainMenu.cs.uid Normal file
View File

@@ -0,0 +1 @@
uid://cbdokimy0qarg