@pix3/cli 1.6.0 → 1.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -201
- package/README.md +788 -754
- package/dist/index.js +208 -203
- package/dist/runtime-types.json +1 -1
- package/dist/smoke/prebuilt/{chunk-J2SJVMDO.mjs → chunk-7MZGPAUK.mjs} +1 -1
- package/dist/smoke/prebuilt/chunk-7WOFGLW3.mjs +239 -0
- package/dist/smoke/prebuilt/runtime.mjs +1 -1
- package/dist/smoke/prebuilt/smoke-worker.mjs +1 -1
- package/dist/smoke/prebuilt/tree-defaults.mjs +1 -1
- package/dist/validate/prebuilt/bundle-main.js +13 -13
- package/dist/validate/prebuilt/chunk-HKG6YI6Y.js +239 -0
- package/dist/validate/prebuilt/runtime.js +1 -1
- package/kit/files/.claude/skills/pix3-nodes/SKILL.md +210 -210
- package/kit/files/.claude/skills/pix3-nodes/reference.md +32 -24
- package/kit/files/.claude/skills/pix3-scene-format/SKILL.md +238 -235
- package/kit/files/.claude/skills/pix3-scene-format/reference.md +28 -28
- package/kit/files/.claude/skills/pix3-scripts/SKILL.md +285 -281
- package/kit/files/.claude/skills/pix3-scripts/reference.md +69 -52
- package/kit/files/.claude/skills/pix3-verify/SKILL.md +298 -256
- package/kit/files/.claude/skills/pix3-verify/reference.md +21 -21
- package/kit/files/AGENTS.md +203 -203
- package/kit/files/CLAUDE.md +1 -1
- package/kit/kit.json +2 -2
- package/package.json +54 -54
- package/templates/empty-2d/files/README.md +20 -20
- package/templates/empty-2d/files/scenes/main.pix3scene +68 -68
- package/templates/empty-2d/template.yaml +7 -7
- package/templates/empty-3d/files/README.md +20 -20
- package/templates/empty-3d/files/scenes/main.pix3scene +108 -108
- package/templates/empty-3d/template.yaml +7 -7
- package/templates/idea-blank/files/README.md +22 -22
- package/templates/idea-blank/files/scenes/main.pix3scene +37 -37
- package/templates/idea-blank/template.yaml +10 -10
- package/templates/minigame-2d/files/README.md +44 -44
- package/templates/minigame-2d/files/design/tests/reachability.json +1 -1
- package/templates/minigame-2d/files/design/tests/routines/mute-music.json +44 -44
- package/templates/minigame-2d/files/scenes/main.pix3scene +84 -84
- package/templates/minigame-2d/files/scenes/menu.pix3scene +118 -118
- package/templates/minigame-2d/files/scenes/ui/settings-window.pix3scene +138 -138
- package/templates/minigame-2d/files/scripts/GameFlow.ts +133 -133
- package/templates/minigame-2d/files/scripts/MenuFlow.ts +217 -217
- package/templates/minigame-2d/files/scripts/SettingsWindow.ts +198 -198
- package/templates/minigame-2d/template.yaml +10 -10
- package/templates/playable-2d/files/README.md +30 -30
- package/templates/playable-2d/files/design/recipe.md +83 -83
- package/templates/playable-2d/files/design/tests/reachability.json +4 -4
- package/templates/playable-2d/files/design/tests/routines/intro-to-cta.json +32 -32
- package/templates/playable-2d/files/scenes/main.pix3scene +111 -111
- package/templates/playable-2d/files/scenes/ui/end-screen.pix3scene +91 -91
- package/templates/playable-2d/files/scenes/ui/intro.pix3scene +65 -65
- package/templates/playable-2d/files/scripts/GameFlow.ts +256 -256
- package/templates/playable-2d/template.yaml +9 -9
- package/templates/playable-3d/files/README.md +32 -32
- package/templates/playable-3d/files/design/recipe.md +127 -127
- package/templates/playable-3d/files/design/tests/reachability.json +4 -4
- package/templates/playable-3d/files/design/tests/routines/intro-to-cta.json +32 -32
- package/templates/playable-3d/files/scenes/main.pix3scene +230 -230
- package/templates/playable-3d/files/scenes/ui/end-screen.pix3scene +91 -91
- package/templates/playable-3d/files/scenes/ui/intro.pix3scene +65 -65
- package/templates/playable-3d/files/scripts/GameFlow.ts +309 -309
- package/templates/playable-3d/files/scripts/GameRules.ts +290 -290
- package/templates/playable-3d/files/scripts/ScoreHud.ts +113 -113
- package/templates/playable-3d/template.yaml +9 -9
- package/templates/recipe-arena-2d/files/README.md +48 -48
- package/templates/recipe-arena-2d/files/design/recipe.md +127 -127
- package/templates/recipe-arena-2d/files/scenes/main.pix3scene +292 -292
- package/templates/recipe-arena-2d/files/scenes/menu.pix3scene +100 -100
- package/templates/recipe-arena-2d/files/scenes/prefabs/hazard.pix3scene +42 -42
- package/templates/recipe-arena-2d/files/scenes/prefabs/pickup.pix3scene +45 -45
- package/templates/recipe-arena-2d/files/scenes/ui/result.pix3scene +85 -85
- package/templates/recipe-arena-2d/files/scripts/GameRules.ts +368 -368
- package/templates/recipe-arena-2d/files/scripts/MenuFlow.ts +106 -106
- package/templates/recipe-arena-2d/files/scripts/PlayerController.ts +151 -151
- package/templates/recipe-arena-2d/files/scripts/ScoreHud.ts +94 -94
- package/templates/recipe-arena-2d/files/scripts/Spawner.ts +214 -214
- package/templates/recipe-arena-2d/files/scripts/TouchRules.ts +174 -174
- package/templates/recipe-arena-2d/template.yaml +10 -10
- package/templates/recipe-blank-2d/files/README.md +61 -61
- package/templates/recipe-blank-2d/files/design/recipe.md +148 -148
- package/templates/recipe-blank-2d/files/design/tests/reachability.json +4 -4
- package/templates/recipe-blank-2d/files/design/tests/routines/restart.json +27 -27
- package/templates/recipe-blank-2d/files/scenes/main.pix3scene +224 -224
- package/templates/recipe-blank-2d/files/scenes/ui/result.pix3scene +85 -85
- package/templates/recipe-blank-2d/files/scripts/GameRules.ts +350 -350
- package/templates/recipe-blank-2d/files/scripts/ScoreHud.ts +110 -110
- package/templates/recipe-blank-2d/template.yaml +10 -10
- package/templates/recipe-bouncer-2d/files/README.md +81 -81
- package/templates/recipe-bouncer-2d/files/design/recipe.md +146 -146
- package/templates/recipe-bouncer-2d/files/scenes/main.pix3scene +615 -615
- package/templates/recipe-bouncer-2d/files/scenes/menu.pix3scene +191 -191
- package/templates/recipe-bouncer-2d/files/scenes/ui/result.pix3scene +87 -87
- package/templates/recipe-bouncer-2d/files/scripts/BallBody.ts +298 -298
- package/templates/recipe-bouncer-2d/files/scripts/GameRules.ts +377 -377
- package/templates/recipe-bouncer-2d/files/scripts/MenuFlow.ts +109 -109
- package/templates/recipe-bouncer-2d/files/scripts/PaddleController.ts +112 -112
- package/templates/recipe-bouncer-2d/files/scripts/ScoreHud.ts +94 -94
- package/templates/recipe-bouncer-2d/files/scripts/TouchRules.ts +263 -263
- package/templates/recipe-bouncer-2d/files/scripts/ball-collision.ts +307 -307
- package/templates/recipe-bouncer-2d/template.yaml +10 -10
- package/templates/recipe-grid-3d/files/README.md +22 -22
- package/templates/recipe-grid-3d/files/design/recipe.md +110 -110
- package/templates/recipe-grid-3d/files/scenes/main.pix3scene +169 -169
- package/templates/recipe-grid-3d/files/scenes/menu.pix3scene +100 -100
- package/templates/recipe-grid-3d/files/scenes/ui/result.pix3scene +105 -105
- package/templates/recipe-grid-3d/files/scripts/GridBoard.ts +319 -319
- package/templates/recipe-grid-3d/files/scripts/GridRules.ts +278 -278
- package/templates/recipe-grid-3d/files/scripts/MenuFlow.ts +106 -106
- package/templates/recipe-grid-3d/files/scripts/ScoreHud.ts +94 -94
- package/templates/recipe-grid-3d/template.yaml +10 -10
- package/templates/recipe-tapper-2d/files/README.md +39 -39
- package/templates/recipe-tapper-2d/files/design/recipe.md +132 -132
- package/templates/recipe-tapper-2d/files/design/tests/reachability.json +4 -4
- package/templates/recipe-tapper-2d/files/design/tests/routines/terminal-retry.json +23 -23
- package/templates/recipe-tapper-2d/files/scenes/main.pix3scene +269 -269
- package/templates/recipe-tapper-2d/files/scenes/menu.pix3scene +100 -100
- package/templates/recipe-tapper-2d/files/scenes/prefabs/hazard.pix3scene +42 -42
- package/templates/recipe-tapper-2d/files/scenes/prefabs/target.pix3scene +45 -45
- package/templates/recipe-tapper-2d/files/scenes/ui/result.pix3scene +85 -85
- package/templates/recipe-tapper-2d/files/scripts/GameRules.ts +368 -368
- package/templates/recipe-tapper-2d/files/scripts/MenuFlow.ts +106 -106
- package/templates/recipe-tapper-2d/files/scripts/ScoreHud.ts +94 -94
- package/templates/recipe-tapper-2d/files/scripts/Spawner.ts +214 -214
- package/templates/recipe-tapper-2d/files/scripts/TouchRules.ts +192 -192
- package/templates/recipe-tapper-2d/template.yaml +10 -10
- package/dist/smoke/prebuilt/chunk-OJXQXIIQ.mjs +0 -239
- package/dist/validate/prebuilt/chunk-BS2OZM7U.js +0 -239
|
@@ -1,100 +1,100 @@
|
|
|
1
|
-
# Pix3 Scene File (YAML)
|
|
2
|
-
# Grid 3D — the MENU scene. This is the project's ENTRY / export scene
|
|
3
|
-
# (Project Settings → Default Export Scene Path): a full build and "Play Game (Entry Scene)"
|
|
4
|
-
# boot here. PLAY transitions to the game scene (main.pix3scene) via a fade.
|
|
5
|
-
# Wired by scripts/MenuFlow.ts. Iterate on the GAME in main.pix3scene.
|
|
6
|
-
version: 1.0.0
|
|
7
|
-
metadata:
|
|
8
|
-
author: Pix3 Recipe
|
|
9
|
-
description: Menu scene — entry point; PLAY transitions to the carving board
|
|
10
|
-
root:
|
|
11
|
-
- id: menu-root
|
|
12
|
-
type: Group2D
|
|
13
|
-
name: Menu Root
|
|
14
|
-
properties:
|
|
15
|
-
width: 1080
|
|
16
|
-
height: 1920
|
|
17
|
-
layout:
|
|
18
|
-
enabled: true
|
|
19
|
-
horizontalAlign: stretch
|
|
20
|
-
verticalAlign: stretch
|
|
21
|
-
components:
|
|
22
|
-
- id: menu-flow
|
|
23
|
-
type: user:MenuFlow
|
|
24
|
-
enabled: true
|
|
25
|
-
config:
|
|
26
|
-
gameScene: res://scenes/main.pix3scene
|
|
27
|
-
playButton: play-button
|
|
28
|
-
children:
|
|
29
|
-
- id: menu-background
|
|
30
|
-
type: ColorRect2D
|
|
31
|
-
name: Menu Background
|
|
32
|
-
properties:
|
|
33
|
-
width: 1080
|
|
34
|
-
height: 1920
|
|
35
|
-
color: "#1b1f2a"
|
|
36
|
-
transform:
|
|
37
|
-
position: [0, 0]
|
|
38
|
-
scale: [1, 1]
|
|
39
|
-
rotation: 0
|
|
40
|
-
layout:
|
|
41
|
-
enabled: true
|
|
42
|
-
horizontalAlign: stretch
|
|
43
|
-
verticalAlign: stretch
|
|
44
|
-
children: []
|
|
45
|
-
- id: title-label
|
|
46
|
-
type: Label2D
|
|
47
|
-
name: Title Label
|
|
48
|
-
properties:
|
|
49
|
-
label: "{{PROJECT_NAME}}"
|
|
50
|
-
labelFontSize: 96
|
|
51
|
-
labelColor: "#ffffff"
|
|
52
|
-
labelAlign: center
|
|
53
|
-
transform:
|
|
54
|
-
position: [0, 420]
|
|
55
|
-
scale: [1, 1]
|
|
56
|
-
rotation: 0
|
|
57
|
-
layout:
|
|
58
|
-
enabled: true
|
|
59
|
-
horizontalAlign: center
|
|
60
|
-
verticalAlign: center
|
|
61
|
-
children: []
|
|
62
|
-
- id: subtitle-label
|
|
63
|
-
type: Label2D
|
|
64
|
-
name: Subtitle Label
|
|
65
|
-
properties:
|
|
66
|
-
label: "CARVE THE BLOCK. SPARE THE CORE."
|
|
67
|
-
labelFontSize: 40
|
|
68
|
-
labelColor: "#93a3c9"
|
|
69
|
-
labelAlign: center
|
|
70
|
-
transform:
|
|
71
|
-
position: [0, 300]
|
|
72
|
-
scale: [1, 1]
|
|
73
|
-
rotation: 0
|
|
74
|
-
layout:
|
|
75
|
-
enabled: true
|
|
76
|
-
horizontalAlign: center
|
|
77
|
-
verticalAlign: center
|
|
78
|
-
children: []
|
|
79
|
-
- id: play-button
|
|
80
|
-
type: Button2D
|
|
81
|
-
name: Play Button
|
|
82
|
-
properties:
|
|
83
|
-
width: 480
|
|
84
|
-
height: 140
|
|
85
|
-
label: "PLAY"
|
|
86
|
-
labelFontSize: 56
|
|
87
|
-
labelColor: "#141a2e"
|
|
88
|
-
backgroundColor: "#f5ae39"
|
|
89
|
-
hoverColor: "#ffc862"
|
|
90
|
-
pressedColor: "#d4922a"
|
|
91
|
-
buttonAction: play
|
|
92
|
-
transform:
|
|
93
|
-
position: [0, -60]
|
|
94
|
-
scale: [1, 1]
|
|
95
|
-
rotation: 0
|
|
96
|
-
layout:
|
|
97
|
-
enabled: true
|
|
98
|
-
horizontalAlign: center
|
|
99
|
-
verticalAlign: center
|
|
100
|
-
children: []
|
|
1
|
+
# Pix3 Scene File (YAML)
|
|
2
|
+
# Grid 3D — the MENU scene. This is the project's ENTRY / export scene
|
|
3
|
+
# (Project Settings → Default Export Scene Path): a full build and "Play Game (Entry Scene)"
|
|
4
|
+
# boot here. PLAY transitions to the game scene (main.pix3scene) via a fade.
|
|
5
|
+
# Wired by scripts/MenuFlow.ts. Iterate on the GAME in main.pix3scene.
|
|
6
|
+
version: 1.0.0
|
|
7
|
+
metadata:
|
|
8
|
+
author: Pix3 Recipe
|
|
9
|
+
description: Menu scene — entry point; PLAY transitions to the carving board
|
|
10
|
+
root:
|
|
11
|
+
- id: menu-root
|
|
12
|
+
type: Group2D
|
|
13
|
+
name: Menu Root
|
|
14
|
+
properties:
|
|
15
|
+
width: 1080
|
|
16
|
+
height: 1920
|
|
17
|
+
layout:
|
|
18
|
+
enabled: true
|
|
19
|
+
horizontalAlign: stretch
|
|
20
|
+
verticalAlign: stretch
|
|
21
|
+
components:
|
|
22
|
+
- id: menu-flow
|
|
23
|
+
type: user:MenuFlow
|
|
24
|
+
enabled: true
|
|
25
|
+
config:
|
|
26
|
+
gameScene: res://scenes/main.pix3scene
|
|
27
|
+
playButton: play-button
|
|
28
|
+
children:
|
|
29
|
+
- id: menu-background
|
|
30
|
+
type: ColorRect2D
|
|
31
|
+
name: Menu Background
|
|
32
|
+
properties:
|
|
33
|
+
width: 1080
|
|
34
|
+
height: 1920
|
|
35
|
+
color: "#1b1f2a"
|
|
36
|
+
transform:
|
|
37
|
+
position: [0, 0]
|
|
38
|
+
scale: [1, 1]
|
|
39
|
+
rotation: 0
|
|
40
|
+
layout:
|
|
41
|
+
enabled: true
|
|
42
|
+
horizontalAlign: stretch
|
|
43
|
+
verticalAlign: stretch
|
|
44
|
+
children: []
|
|
45
|
+
- id: title-label
|
|
46
|
+
type: Label2D
|
|
47
|
+
name: Title Label
|
|
48
|
+
properties:
|
|
49
|
+
label: "{{PROJECT_NAME}}"
|
|
50
|
+
labelFontSize: 96
|
|
51
|
+
labelColor: "#ffffff"
|
|
52
|
+
labelAlign: center
|
|
53
|
+
transform:
|
|
54
|
+
position: [0, 420]
|
|
55
|
+
scale: [1, 1]
|
|
56
|
+
rotation: 0
|
|
57
|
+
layout:
|
|
58
|
+
enabled: true
|
|
59
|
+
horizontalAlign: center
|
|
60
|
+
verticalAlign: center
|
|
61
|
+
children: []
|
|
62
|
+
- id: subtitle-label
|
|
63
|
+
type: Label2D
|
|
64
|
+
name: Subtitle Label
|
|
65
|
+
properties:
|
|
66
|
+
label: "CARVE THE BLOCK. SPARE THE CORE."
|
|
67
|
+
labelFontSize: 40
|
|
68
|
+
labelColor: "#93a3c9"
|
|
69
|
+
labelAlign: center
|
|
70
|
+
transform:
|
|
71
|
+
position: [0, 300]
|
|
72
|
+
scale: [1, 1]
|
|
73
|
+
rotation: 0
|
|
74
|
+
layout:
|
|
75
|
+
enabled: true
|
|
76
|
+
horizontalAlign: center
|
|
77
|
+
verticalAlign: center
|
|
78
|
+
children: []
|
|
79
|
+
- id: play-button
|
|
80
|
+
type: Button2D
|
|
81
|
+
name: Play Button
|
|
82
|
+
properties:
|
|
83
|
+
width: 480
|
|
84
|
+
height: 140
|
|
85
|
+
label: "PLAY"
|
|
86
|
+
labelFontSize: 56
|
|
87
|
+
labelColor: "#141a2e"
|
|
88
|
+
backgroundColor: "#f5ae39"
|
|
89
|
+
hoverColor: "#ffc862"
|
|
90
|
+
pressedColor: "#d4922a"
|
|
91
|
+
buttonAction: play
|
|
92
|
+
transform:
|
|
93
|
+
position: [0, -60]
|
|
94
|
+
scale: [1, 1]
|
|
95
|
+
rotation: 0
|
|
96
|
+
layout:
|
|
97
|
+
enabled: true
|
|
98
|
+
horizontalAlign: center
|
|
99
|
+
verticalAlign: center
|
|
100
|
+
children: []
|
|
@@ -1,105 +1,105 @@
|
|
|
1
|
-
# Pix3 Scene File (YAML)
|
|
2
|
-
# Grid 3D — the RESULT overlay (win/lose), in its own file so the board scene
|
|
3
|
-
# opens clean. `main.pix3scene` carries it as a one-line `instance:` reference
|
|
4
|
-
# marked `visible: false`, which hides it in the EDITOR only; `user:GridRules`
|
|
5
|
-
# reveals it at run time by setting `visible`.
|
|
6
|
-
#
|
|
7
|
-
# Edit it here, full-screen, in its own tab. To preview it composited over the
|
|
8
|
-
# board, tick the eye on `result-overlay` in main.pix3scene — just do not commit
|
|
9
|
-
# that tick, or every iteration starts behind an end screen again.
|
|
10
|
-
#
|
|
11
|
-
# Stable node ids (design/recipe.md is the contract — do not rename these):
|
|
12
|
-
# result-overlay, result-label, retry-button, menu-button
|
|
13
|
-
version: 1.0.0
|
|
14
|
-
metadata:
|
|
15
|
-
author: Pix3 Template
|
|
16
|
-
description: Result overlay — dim, win/lose headline, RETRY and MENU buttons
|
|
17
|
-
root:
|
|
18
|
-
- id: result-overlay
|
|
19
|
-
type: Group2D
|
|
20
|
-
name: Result Overlay
|
|
21
|
-
properties:
|
|
22
|
-
width: 1080
|
|
23
|
-
height: 1920
|
|
24
|
-
initiallyVisible: false
|
|
25
|
-
layout:
|
|
26
|
-
enabled: true
|
|
27
|
-
horizontalAlign: stretch
|
|
28
|
-
verticalAlign: stretch
|
|
29
|
-
children:
|
|
30
|
-
- id: result-dim
|
|
31
|
-
type: ColorRect2D
|
|
32
|
-
name: Result Dim
|
|
33
|
-
properties:
|
|
34
|
-
width: 1080
|
|
35
|
-
height: 1920
|
|
36
|
-
color: "#0b0e14"
|
|
37
|
-
opacity: 0.78
|
|
38
|
-
transform:
|
|
39
|
-
position: [0, 0]
|
|
40
|
-
scale: [1, 1]
|
|
41
|
-
rotation: 0
|
|
42
|
-
layout:
|
|
43
|
-
enabled: true
|
|
44
|
-
horizontalAlign: stretch
|
|
45
|
-
verticalAlign: stretch
|
|
46
|
-
children: []
|
|
47
|
-
- id: result-label
|
|
48
|
-
type: Label2D
|
|
49
|
-
name: Result Label
|
|
50
|
-
properties:
|
|
51
|
-
label: "SHAPE REVEALED"
|
|
52
|
-
labelFontSize: 76
|
|
53
|
-
labelColor: "#3ee6c1"
|
|
54
|
-
labelAlign: center
|
|
55
|
-
transform:
|
|
56
|
-
position: [0, 220]
|
|
57
|
-
scale: [1, 1]
|
|
58
|
-
rotation: 0
|
|
59
|
-
layout:
|
|
60
|
-
enabled: true
|
|
61
|
-
horizontalAlign: center
|
|
62
|
-
verticalAlign: center
|
|
63
|
-
children: []
|
|
64
|
-
- id: retry-button
|
|
65
|
-
type: Button2D
|
|
66
|
-
name: Retry Button
|
|
67
|
-
properties:
|
|
68
|
-
width: 420
|
|
69
|
-
height: 130
|
|
70
|
-
label: "RETRY"
|
|
71
|
-
labelFontSize: 52
|
|
72
|
-
labelColor: "#0b0e14"
|
|
73
|
-
backgroundColor: "#3ee6c1"
|
|
74
|
-
hoverColor: "#63f0d3"
|
|
75
|
-
pressedColor: "#2bbfa0"
|
|
76
|
-
transform:
|
|
77
|
-
position: [0, -60]
|
|
78
|
-
scale: [1, 1]
|
|
79
|
-
rotation: 0
|
|
80
|
-
layout:
|
|
81
|
-
enabled: true
|
|
82
|
-
horizontalAlign: center
|
|
83
|
-
verticalAlign: center
|
|
84
|
-
children: []
|
|
85
|
-
- id: menu-button
|
|
86
|
-
type: Button2D
|
|
87
|
-
name: Menu Button
|
|
88
|
-
properties:
|
|
89
|
-
width: 420
|
|
90
|
-
height: 110
|
|
91
|
-
label: "MENU"
|
|
92
|
-
labelFontSize: 44
|
|
93
|
-
labelColor: "#f2f2f2"
|
|
94
|
-
backgroundColor: "#1b1f2a"
|
|
95
|
-
hoverColor: "#2a3040"
|
|
96
|
-
pressedColor: "#141821"
|
|
97
|
-
transform:
|
|
98
|
-
position: [0, -220]
|
|
99
|
-
scale: [1, 1]
|
|
100
|
-
rotation: 0
|
|
101
|
-
layout:
|
|
102
|
-
enabled: true
|
|
103
|
-
horizontalAlign: center
|
|
104
|
-
verticalAlign: center
|
|
105
|
-
children: []
|
|
1
|
+
# Pix3 Scene File (YAML)
|
|
2
|
+
# Grid 3D — the RESULT overlay (win/lose), in its own file so the board scene
|
|
3
|
+
# opens clean. `main.pix3scene` carries it as a one-line `instance:` reference
|
|
4
|
+
# marked `visible: false`, which hides it in the EDITOR only; `user:GridRules`
|
|
5
|
+
# reveals it at run time by setting `visible`.
|
|
6
|
+
#
|
|
7
|
+
# Edit it here, full-screen, in its own tab. To preview it composited over the
|
|
8
|
+
# board, tick the eye on `result-overlay` in main.pix3scene — just do not commit
|
|
9
|
+
# that tick, or every iteration starts behind an end screen again.
|
|
10
|
+
#
|
|
11
|
+
# Stable node ids (design/recipe.md is the contract — do not rename these):
|
|
12
|
+
# result-overlay, result-label, retry-button, menu-button
|
|
13
|
+
version: 1.0.0
|
|
14
|
+
metadata:
|
|
15
|
+
author: Pix3 Template
|
|
16
|
+
description: Result overlay — dim, win/lose headline, RETRY and MENU buttons
|
|
17
|
+
root:
|
|
18
|
+
- id: result-overlay
|
|
19
|
+
type: Group2D
|
|
20
|
+
name: Result Overlay
|
|
21
|
+
properties:
|
|
22
|
+
width: 1080
|
|
23
|
+
height: 1920
|
|
24
|
+
initiallyVisible: false
|
|
25
|
+
layout:
|
|
26
|
+
enabled: true
|
|
27
|
+
horizontalAlign: stretch
|
|
28
|
+
verticalAlign: stretch
|
|
29
|
+
children:
|
|
30
|
+
- id: result-dim
|
|
31
|
+
type: ColorRect2D
|
|
32
|
+
name: Result Dim
|
|
33
|
+
properties:
|
|
34
|
+
width: 1080
|
|
35
|
+
height: 1920
|
|
36
|
+
color: "#0b0e14"
|
|
37
|
+
opacity: 0.78
|
|
38
|
+
transform:
|
|
39
|
+
position: [0, 0]
|
|
40
|
+
scale: [1, 1]
|
|
41
|
+
rotation: 0
|
|
42
|
+
layout:
|
|
43
|
+
enabled: true
|
|
44
|
+
horizontalAlign: stretch
|
|
45
|
+
verticalAlign: stretch
|
|
46
|
+
children: []
|
|
47
|
+
- id: result-label
|
|
48
|
+
type: Label2D
|
|
49
|
+
name: Result Label
|
|
50
|
+
properties:
|
|
51
|
+
label: "SHAPE REVEALED"
|
|
52
|
+
labelFontSize: 76
|
|
53
|
+
labelColor: "#3ee6c1"
|
|
54
|
+
labelAlign: center
|
|
55
|
+
transform:
|
|
56
|
+
position: [0, 220]
|
|
57
|
+
scale: [1, 1]
|
|
58
|
+
rotation: 0
|
|
59
|
+
layout:
|
|
60
|
+
enabled: true
|
|
61
|
+
horizontalAlign: center
|
|
62
|
+
verticalAlign: center
|
|
63
|
+
children: []
|
|
64
|
+
- id: retry-button
|
|
65
|
+
type: Button2D
|
|
66
|
+
name: Retry Button
|
|
67
|
+
properties:
|
|
68
|
+
width: 420
|
|
69
|
+
height: 130
|
|
70
|
+
label: "RETRY"
|
|
71
|
+
labelFontSize: 52
|
|
72
|
+
labelColor: "#0b0e14"
|
|
73
|
+
backgroundColor: "#3ee6c1"
|
|
74
|
+
hoverColor: "#63f0d3"
|
|
75
|
+
pressedColor: "#2bbfa0"
|
|
76
|
+
transform:
|
|
77
|
+
position: [0, -60]
|
|
78
|
+
scale: [1, 1]
|
|
79
|
+
rotation: 0
|
|
80
|
+
layout:
|
|
81
|
+
enabled: true
|
|
82
|
+
horizontalAlign: center
|
|
83
|
+
verticalAlign: center
|
|
84
|
+
children: []
|
|
85
|
+
- id: menu-button
|
|
86
|
+
type: Button2D
|
|
87
|
+
name: Menu Button
|
|
88
|
+
properties:
|
|
89
|
+
width: 420
|
|
90
|
+
height: 110
|
|
91
|
+
label: "MENU"
|
|
92
|
+
labelFontSize: 44
|
|
93
|
+
labelColor: "#f2f2f2"
|
|
94
|
+
backgroundColor: "#1b1f2a"
|
|
95
|
+
hoverColor: "#2a3040"
|
|
96
|
+
pressedColor: "#141821"
|
|
97
|
+
transform:
|
|
98
|
+
position: [0, -220]
|
|
99
|
+
scale: [1, 1]
|
|
100
|
+
rotation: 0
|
|
101
|
+
layout:
|
|
102
|
+
enabled: true
|
|
103
|
+
horizontalAlign: center
|
|
104
|
+
verticalAlign: center
|
|
105
|
+
children: []
|