Overhaul game state logic to support gameplay loop

This commit is contained in:
2025-04-30 00:43:55 -07:00
parent 78cdda97b9
commit 68c91d8f13
60 changed files with 2503 additions and 1116 deletions

View File

@@ -5,15 +5,15 @@ using Godot;
namespace Zennysoft.Game.Ma;
public interface IMenu : IControl
public interface IMainMenu : IControl
{
event Menu.NewGameEventHandler NewGame;
event Menu.LoadGameEventHandler LoadGame;
event Menu.QuitEventHandler Quit;
event MainMenu.NewGameEventHandler NewGame;
event MainMenu.LoadGameEventHandler LoadGame;
event MainMenu.QuitEventHandler Quit;
}
[Meta(typeof(IAutoNode))]
public partial class Menu : Control, IMenu
public partial class MainMenu : Control, IMainMenu
{
public override void _Notification(int what) => this.Notify(what);

View File

@@ -1,15 +1,15 @@
[gd_scene load_steps=2 format=3 uid="uid://rfvnddfqufho"]
[ext_resource type="Script" uid="uid://14b7o2c6cgry" path="res://src/menu/Menu.cs" id="1_vehpg"]
[ext_resource type="Script" uid="uid://14b7o2c6cgry" path="res://src/menu/MainMenu.cs" id="1_y6722"]
[node name="Menu" type="Control"]
[node name="MainMenu" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_vehpg")
script = ExtResource("1_y6722")
[node name="MarginContainer" type="MarginContainer" parent="."]
layout_mode = 1