Close every top modal through one Esc and right-click path
Full build / Import + headless tests (push) Successful in 37s
Full build / Full desktop build + optional release (push) Skipped

- Add Help, Settings, Pause and review to the top-modal close chain so right-click and Esc behave consistently.
- Restore the venue menu after menu Settings and prevent Help from opening Pause behind itself.
- Reopen pause after in-shift Settings apply and recapture the mouse/unfreeze state on close.
- Extend the session smoke for menu Settings, right-click Help and guard unfreeze.
This commit is contained in:
Gig Line Dev committed 2026-11-02 16:10:50 +01:00
1 parent 8f65751975
commit 26e6dd6413
8 files changed
+111 -6

No files matched your search

+31
View File
@@ -22,6 +22,33 @@ func _initialize() -> void:
func _process(_delta: float) -> bool:
_frames += 1
if _frames == 5:
_manager = _main.get_node_or_null("GameManager")
if _manager == null or _manager.start_menu == null or not _manager.start_menu.visible:
printerr("start menu not visible before settings check")
quit(1)
return true
_manager._open_settings()
if _frames == 7:
if _manager.settings_panel == null or not _manager.settings_panel.visible:
printerr("settings did not open from the venue menu")
quit(1)
return true
_manager.settings_panel._on_cancel()
if _frames == 8:
if not _manager.start_menu.visible:
printerr("cancelling menu settings did not return to the venue menu")
quit(1)
return true
print("boot: menu settings cancel returns to menu")
_manager._open_help()
_manager._handle_cancel(true)
if _frames == 9:
if _manager.help_overlay.visible or not _manager.start_menu.visible:
printerr("right-click did not close Help and keep the venue menu")
quit(1)
return true
print("boot: help closes on right-click")
if _frames == 10:
_manager = _main.get_node_or_null("GameManager")
if _manager.start_menu == null or not _manager.start_menu.visible:
@@ -65,6 +92,10 @@ func _process(_delta: float) -> bool:
return true
print("boot: settings visible")
_manager.settings_panel._on_cancel()
if _manager.guard.input_locked:
printerr("guard stayed frozen after settings cancel")
quit(1)
return true
_manager._quit_to_menu()
if _frames == 290:
if not _manager.start_menu.visible: