fix(ui): loading screen blocks input + main menu polls during catalog wait
- loading_screen: opaque BG (was 0.75 alpha) + mouse_filter STOP so the loading state genuinely occludes the underlying screen - main_menu: poll SimBridge.poll_snapshot in _process while waiting for the bookmark catalog so the new-game flow doesn't stall on the catalog round-trip introduced in Workstream 3 (#680)
This commit is contained in:
@@ -4,7 +4,7 @@ extends MetaScreen
|
||||
## Full-screen, dark overlay with centered status text.
|
||||
## #724: Shows client version (from project.yaml) and protocol version below the status text.
|
||||
|
||||
const BG_COLOR := Color(0.0, 0.0, 0.0, 0.75)
|
||||
const BG_COLOR := Color(0.05, 0.05, 0.08, 1.0)
|
||||
const TEXT_COLOR := Color("#c8d0e0")
|
||||
const VERSION_COLOR := Color("#667788")
|
||||
const FONT_SIZE := 18
|
||||
@@ -17,7 +17,7 @@ var _version_label: Label = null
|
||||
func _ready() -> void:
|
||||
closable_by_escape = false
|
||||
visible = false
|
||||
mouse_filter = Control.MOUSE_FILTER_IGNORE
|
||||
mouse_filter = Control.MOUSE_FILTER_STOP
|
||||
set_anchors_and_offsets_preset(Control.PRESET_FULL_RECT)
|
||||
_build_ui()
|
||||
|
||||
|
||||
@@ -62,6 +62,11 @@ func _on_new_game() -> void:
|
||||
SimBridge.connect_to_sim()
|
||||
|
||||
|
||||
func _process(_delta: float) -> void:
|
||||
if _waiting_for_catalog:
|
||||
SimBridge.poll_snapshot()
|
||||
|
||||
|
||||
func _ensure_loading_screen() -> void:
|
||||
if _loading_screen != null and is_instance_valid(_loading_screen):
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user