feat: Add StageDialogStyler for enhanced dialog management

- Introduced StageDialogStyler class to render child-facing dialogs as shared in-stage cards.
- Preserved native AcceptDialog/ConfirmationDialog signals for stage workflows.
- Implemented methods for applying styles, managing visibility, and handling button actions.
- Added support for dynamic theming and responsive design based on viewport size.
- Created utility functions for styling buttons and managing dialog content.
This commit is contained in:
2026-10-23 01:16:22 -04:00
parent c6f3930dcb
commit 0a5ef0a61e
10 changed files with 1724 additions and 238 deletions
+857
View File
@@ -0,0 +1,857 @@
{
"version": "1.7",
"scene_name": "Plain Background",
"sky_id": "sky_starry_night",
"background_kind": "sky",
"plain_color": "#F5EFE0",
"camera": {
"position": {
"x": -43.8016738891602,
"y": -691.851379394531
},
"zoom": 0.605000019073486
},
"objects": [
{
"file_id": "background_ground_1",
"type": "background_ground",
"position": {
"x": 96.0,
"y": 672.0
},
"rotation": 0.0,
"size": {
"x": 6592.0,
"y": 192.0
},
"finish_id": "finish_background_grass",
"color": "#72a84cff"
},
{
"file_id": "scenery_artwork_1",
"type": "scenery_artwork",
"position": {
"x": -1472.0,
"y": -320.0
},
"rotation": 0.0,
"asset_id": "res://content/props/art_storefront-v1.prop",
"display_name": "Sunny Storefront",
"depth": "near",
"scale": {
"x": 1.0,
"y": 1.0
},
"last_known_local_bounds": {
"position": {
"x": -871.896057128906,
"y": -826.405822753906
},
"size": {
"x": 1743.79211425781,
"y": 1652.81164550781
}
}
},
{
"file_id": "scenery_artwork_2",
"type": "scenery_artwork",
"position": {
"x": -321.925048828125,
"y": -864.47802734375
},
"rotation": 0.0,
"asset_id": "res://content/props/art_town_house-v1.prop",
"display_name": "Town House",
"depth": "near",
"scale": {
"x": 1.0,
"y": 1.0
},
"last_known_local_bounds": {
"position": {
"x": -958.074951171875,
"y": -1375.52197265625
},
"size": {
"x": 1916.14990234375,
"y": 2751.0439453125
}
}
},
{
"file_id": "scenery_artwork_3",
"type": "scenery_artwork",
"position": {
"x": 1408.0,
"y": -320.0
},
"rotation": 0.0,
"asset_id": "res://content/props/art_storefront-v1.prop",
"display_name": "Sunny Storefront",
"depth": "near",
"scale": {
"x": 1.0,
"y": 1.0
},
"last_known_local_bounds": {
"position": {
"x": -871.896057128906,
"y": -826.405822753906
},
"size": {
"x": 1743.79211425781,
"y": 1652.81164550781
}
}
},
{
"file_id": "scenery_artwork_4",
"type": "scenery_artwork",
"position": {
"x": -2368.0,
"y": -256.0
},
"rotation": 0.0,
"asset_id": "res://content/props/art_city_skyline-v1.prop",
"display_name": "City Skyline",
"depth": "far",
"scale": {
"x": 1.0,
"y": 1.0
},
"last_known_local_bounds": {
"position": {
"x": -939.5,
"y": -289.301696777344
},
"size": {
"x": 1879.0,
"y": 578.603393554688
}
}
},
{
"file_id": "scenery_artwork_5",
"type": "scenery_artwork",
"position": {
"x": 704.0,
"y": -256.0
},
"rotation": 0.0,
"asset_id": "res://content/props/art_city_skyline-v1.prop",
"display_name": "City Skyline",
"depth": "far",
"scale": {
"x": 1.0,
"y": 1.0
},
"last_known_local_bounds": {
"position": {
"x": -939.5,
"y": -289.301696777344
},
"size": {
"x": 1879.0,
"y": 578.603393554688
}
}
},
{
"file_id": "scenery_artwork_6",
"type": "scenery_artwork",
"position": {
"x": 2304.0,
"y": -256.0
},
"rotation": 0.0,
"asset_id": "res://content/props/art_city_skyline-v1.prop",
"display_name": "City Skyline",
"depth": "far",
"scale": {
"x": 1.0,
"y": 1.0
},
"last_known_local_bounds": {
"position": {
"x": -939.5,
"y": -289.301696777344
},
"size": {
"x": 1879.0,
"y": 578.603393554688
}
}
},
{
"file_id": "background_ground_2",
"type": "background_ground",
"position": {
"x": 96.0,
"y": 352.0
},
"rotation": 0.0,
"size": {
"x": 6848.0,
"y": 832.0
},
"finish_id": "finish_background_grass",
"color": "#72a84cff"
},
{
"file_id": "terrain_1",
"type": "terrain",
"position": {
"x": -3264.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_2",
"type": "terrain",
"position": {
"x": -3072.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_3",
"type": "terrain",
"position": {
"x": -2880.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_4",
"type": "terrain",
"position": {
"x": -2688.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_5",
"type": "terrain",
"position": {
"x": -2496.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_6",
"type": "terrain",
"position": {
"x": -2304.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_7",
"type": "terrain",
"position": {
"x": -2112.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_8",
"type": "terrain",
"position": {
"x": -1920.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_9",
"type": "terrain",
"position": {
"x": -1728.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_10",
"type": "terrain",
"position": {
"x": -1536.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_11",
"type": "terrain",
"position": {
"x": -1344.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_12",
"type": "terrain",
"position": {
"x": -1152.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_13",
"type": "terrain",
"position": {
"x": -960.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_14",
"type": "terrain",
"position": {
"x": -768.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_15",
"type": "terrain",
"position": {
"x": -576.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_16",
"type": "terrain",
"position": {
"x": -384.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_17",
"type": "terrain",
"position": {
"x": -192.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_18",
"type": "terrain",
"position": {
"x": 0.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_19",
"type": "terrain",
"position": {
"x": 192.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_20",
"type": "terrain",
"position": {
"x": 384.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_21",
"type": "terrain",
"position": {
"x": 576.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_22",
"type": "terrain",
"position": {
"x": 768.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_23",
"type": "terrain",
"position": {
"x": 960.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_24",
"type": "terrain",
"position": {
"x": 1152.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_25",
"type": "terrain",
"position": {
"x": 1344.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_26",
"type": "terrain",
"position": {
"x": 1536.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_27",
"type": "terrain",
"position": {
"x": 1728.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_28",
"type": "terrain",
"position": {
"x": 1920.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_29",
"type": "terrain",
"position": {
"x": 2112.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_30",
"type": "terrain",
"position": {
"x": 2304.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_31",
"type": "terrain",
"position": {
"x": 2496.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_32",
"type": "terrain",
"position": {
"x": 2688.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_33",
"type": "terrain",
"position": {
"x": 2880.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_34",
"type": "terrain",
"position": {
"x": 3072.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_35",
"type": "terrain",
"position": {
"x": 3264.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "terrain_36",
"type": "terrain",
"position": {
"x": 3456.0,
"y": 768.0
},
"rotation": 0.0,
"asset_id": "ground",
"scale": {
"x": 1.0,
"y": 1.0
},
"finish_id": "finish_ground_sidewalk"
},
{
"file_id": "background_ground_3",
"type": "background_ground",
"position": {
"x": 160.0,
"y": 864.0
},
"rotation": 0.0,
"size": {
"x": 6912.0,
"y": 192.0
},
"finish_id": "finish_background_concrete",
"color": "#a6aaa3ff"
},
{
"file_id": "background_ground_4",
"type": "background_ground",
"position": {
"x": -2896.0,
"y": 848.0
},
"rotation": 0.0,
"size": {
"x": 800.0,
"y": 160.0
},
"finish_id": "finish_background_concrete",
"color": "#a6aaa3ff"
},
{
"file_id": "background_ground_5",
"type": "background_ground",
"position": {
"x": -3264.0,
"y": 864.0
},
"rotation": 0.0,
"size": {
"x": 320.0,
"y": 192.0
},
"finish_id": "finish_background_concrete",
"color": "#a6aaa3ff"
},
{
"file_id": "stickman_1",
"type": "stickman",
"position": {
"x": -2784.0,
"y": 351.0
},
"rotation": 0.0,
"stk_path": "res://content/stickmen/break.stk",
"facing_profile": "FORWARD",
"action_queue": [
{
"type": "move_to",
"target": {
"x": 2027.27270507813,
"y": 683.355224609375
},
"style": "walk"
}
]
},
{
"file_id": "stickman_2",
"type": "stickman",
"position": {
"x": -672.0,
"y": 352.0
},
"rotation": 0.0,
"stk_path": "res://content/stickmen/break.stk",
"facing_profile": "FORWARD",
"action_queue": [
{
"type": "move_to",
"target": {
"x": -3161.15698242188,
"y": 701.537109375
},
"style": "walk"
}
]
},
{
"file_id": "stickman_3",
"type": "stickman",
"position": {
"x": 3392.0,
"y": 351.0
},
"rotation": 0.0,
"stk_path": "res://content/stickmen/break.stk",
"facing_profile": "FORWARD",
"action_queue": [
{
"type": "move_to",
"target": {
"x": -3333.0576171875,
"y": 726.330444335938
},
"style": "run"
}
]
}
],
"event_rules": [],
"metadata": {
"created_unix": 1792022400,
"modified_unix": 1792732500.154,
"autosave": false,
"source_path": ""
}
}