feat(m4c): title screen is emit-only (routing moves to GameFlow)

This commit is contained in:
2026-07-15 04:10:10 -05:00
parent 8d963e8030
commit 6b10b6ea6c
2 changed files with 1 additions and 15 deletions

View File

@@ -9,8 +9,6 @@ extends Control
signal menu_activated(id: StringName)
const SHELL := "res://scenes/shell/MainWindowShell.tscn"
var _rows: Array = []
var _sel: int = 0
@@ -44,7 +42,6 @@ func _ready() -> void:
_wire_row_mouse()
_footer_left.text = Version.new().footer()
menu_activated.connect(_on_menu_activated)
_update_selection()
@@ -128,16 +125,6 @@ func _activate(i: int) -> void:
menu_activated.emit(_rows[i].get_meta("action"))
func _on_menu_activated(id: StringName) -> void:
match id:
&"new_game":
get_tree().change_scene_to_file(SHELL)
&"quit":
get_tree().quit()
_:
pass # inert placeholder — the screen lands in a later milestone
func _update_selection() -> void:
for i in range(_rows.size()):
var row: Control = _rows[i]

View File

@@ -38,8 +38,7 @@ func test_up_from_first_wraps_to_last():
func test_new_game_and_quit_emit_their_action():
var t := _title()
# Isolate the signal seam so the test does not actually change scene / quit.
t.menu_activated.disconnect(t._on_menu_activated)
# Title is emit-only now: no internal handler to isolate. Just watch the emit.
watch_signals(t)
t._activate(_index_of(t, &"new_game"))
assert_signal_emitted_with_parameters(t, "menu_activated", [&"new_game"])