WIP checkpoint: Implement avatar loader and customization UI in Godot

This commit is contained in:
2026-08-18 00:47:59 +00:00
parent 5cfbcd8efd
commit 689c51e179
4 changed files with 715 additions and 0 deletions
+62
View File
@@ -0,0 +1,62 @@
## MainMenu - Main menu scene with navigation to avatar customization.
##
## Provides buttons for:
## - Start Game
## - Customize Avatar (opens avatar customization UI)
## - Settings
## - Quit
extends Control
# ---------------------------------------------------------------------------
# UI References
# ---------------------------------------------------------------------------
@onready var customize_button: Button = $VBoxContainer/CustomizeAvatar
@onready var settings_button: Button = $VBoxContainer/Settings
@onready var quit_button: Button = $VBoxContainer/Quit
# ---------------------------------------------------------------------------
# Signals
# ---------------------------------------------------------------------------
## Emitted when the player requests to customize their avatar.
signal open_customization
## Emitted when the player requests to start the game.
signal start_game
## Emitted when the player requests to open settings.
signal open_settings
## Emitted when the player requests to quit.
signal quit_requested
# ---------------------------------------------------------------------------
# Lifecycle
# ---------------------------------------------------------------------------
func _ready() -> void:
_customize_button.pressed.connect(_on_customize_pressed)
_settings_button.pressed.connect(_on_settings_pressed)
_quit_button.pressed.connect(_on_quit_pressed)
# ---------------------------------------------------------------------------
# Button Handlers
# ---------------------------------------------------------------------------
func _on_customize_pressed() -> void:
open_customization.emit()
func _on_settings_pressed() -> void:
open_settings.emit()
func _on_quit_pressed() -> void:
quit_requested.emit()
get_tree().quit()