@almadar/std 16.151.0 → 16.153.0

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.
Files changed (151) hide show
  1. package/behaviors/lolo/infra/atoms/std-data-erasure.lolo +5 -1
  2. package/behaviors/lolo/ui/core/atoms/std-browse.lolo +15 -4
  3. package/behaviors/lolo/ui/core/molecules/ui-data-list.lolo +12 -0
  4. package/behaviors/lolo/ui/core/molecules/ui-emoji-picker.lolo +56 -0
  5. package/behaviors/lolo/ui/core/molecules/ui-popover.lolo +39 -0
  6. package/behaviors/lolo/ui/core/molecules/ui-table-view.lolo +11 -0
  7. package/behaviors/lolo/ui/game/atoms/ui-draw-group.lolo +54 -0
  8. package/behaviors/lolo/ui/game/atoms/ui-draw-shape.lolo +6 -1
  9. package/behaviors/lolo/ui/game/atoms/ui-draw-sprite.lolo +2 -2
  10. package/behaviors/lolo/ui/game/atoms/ui-svg-draw-group.lolo +58 -0
  11. package/behaviors/lolo/ui/game/atoms/ui-svg-draw-shape.lolo +103 -0
  12. package/behaviors/lolo/ui/game/atoms/ui-svg-draw-text.lolo +58 -0
  13. package/behaviors/lolo/ui/game/molecules/ui-canvas-2d.lolo +11 -1
  14. package/behaviors/lolo/ui/game/molecules/ui-canvas.lolo +10 -0
  15. package/behaviors/lolo/ui/game/molecules/ui-draw-shape-layer.lolo +3 -2
  16. package/behaviors/lolo/ui/game/molecules/ui-svg-draw-shape-layer.lolo +52 -0
  17. package/behaviors/lolo/ui/game/molecules/ui-svg-stage.lolo +98 -0
  18. package/behaviors/lolo/ui/game/organisms/ui-fishing-board.lolo +8 -8
  19. package/behaviors/lolo/ui/game/organisms/ui-physics-sandbox-board.lolo +5 -5
  20. package/behaviors/lolo/ui/game/organisms/ui-roguelike-board.lolo +5 -5
  21. package/behaviors/lolo/ui/game/organisms/ui-sokoban-board.lolo +5 -5
  22. package/behaviors/lolo/ui/game/organisms/ui-state-architect-board.lolo +4 -4
  23. package/behaviors/lolo/ui/game/organisms/ui-winter-ski-board.lolo +7 -7
  24. package/behaviors/registry/factory-signatures.json +6211 -2181
  25. package/behaviors/registry/infra/atoms/std-approval-gate.orb +16 -8
  26. package/behaviors/registry/infra/atoms/std-cache-aside.orb +62 -31
  27. package/behaviors/registry/infra/atoms/std-circuit-breaker.orb +32 -16
  28. package/behaviors/registry/infra/atoms/std-data-erasure.orb +17 -9
  29. package/behaviors/registry/infra/atoms/std-mod-queue.orb +16 -8
  30. package/behaviors/registry/infra/atoms/std-rate-limiter.orb +28 -14
  31. package/behaviors/registry/ml/molecules/std-escalating-decision.orb +10 -5
  32. package/behaviors/registry/ml/molecules/std-knowledge-tracing.orb +4 -2
  33. package/behaviors/registry/ui/core/atoms/std-billable-hour.orb +2 -1
  34. package/behaviors/registry/ui/core/atoms/std-browse.orb +108 -28
  35. package/behaviors/registry/ui/core/atoms/std-dashboard-grid-embedded.orb +2 -1
  36. package/behaviors/registry/ui/core/atoms/std-esign-flow.orb +4 -2
  37. package/behaviors/registry/ui/core/atoms/std-esign-request.orb +6 -3
  38. package/behaviors/registry/ui/core/atoms/std-gallery.orb +18 -9
  39. package/behaviors/registry/ui/core/atoms/std-import.orb +4 -2
  40. package/behaviors/registry/ui/core/molecules/ui-data-list.orb +21 -0
  41. package/behaviors/registry/ui/core/molecules/ui-emoji-picker.orb +214 -0
  42. package/behaviors/registry/ui/core/molecules/ui-popover.orb +112 -1
  43. package/behaviors/registry/ui/core/molecules/ui-table-view.orb +44 -0
  44. package/behaviors/registry/ui/game/atoms/std-arcade-flow.orb +1 -0
  45. package/behaviors/registry/ui/game/atoms/std-arcade-play.orb +1 -0
  46. package/behaviors/registry/ui/game/atoms/std-chase-ai.orb +1 -0
  47. package/behaviors/registry/ui/game/atoms/std-dungeon-combat.orb +1 -0
  48. package/behaviors/registry/ui/game/atoms/std-fx-particles.orb +1 -0
  49. package/behaviors/registry/ui/game/atoms/std-gather.orb +1 -0
  50. package/behaviors/registry/ui/game/atoms/std-gold.orb +1 -0
  51. package/behaviors/registry/ui/game/atoms/std-grid-tactics.orb +1 -0
  52. package/behaviors/registry/ui/game/atoms/std-hero-nav.orb +1 -0
  53. package/behaviors/registry/ui/game/atoms/std-market-flow.orb +1 -0
  54. package/behaviors/registry/ui/game/atoms/std-objective-flow.orb +1 -0
  55. package/behaviors/registry/ui/game/atoms/std-objective-reach.orb +1 -0
  56. package/behaviors/registry/ui/game/atoms/std-patience.orb +1 -0
  57. package/behaviors/registry/ui/game/atoms/std-production.orb +1 -0
  58. package/behaviors/registry/ui/game/atoms/std-round-flow.orb +1 -0
  59. package/behaviors/registry/ui/game/atoms/std-score.orb +1 -0
  60. package/behaviors/registry/ui/game/atoms/std-survival-flow.orb +1 -0
  61. package/behaviors/registry/ui/game/atoms/std-xp.orb +1 -0
  62. package/behaviors/registry/ui/game/atoms/ui-draw-group.orb +196 -0
  63. package/behaviors/registry/ui/game/atoms/ui-draw-shape.orb +9 -1
  64. package/behaviors/registry/ui/game/atoms/ui-draw-sprite.orb +2 -2
  65. package/behaviors/registry/ui/game/atoms/ui-svg-draw-group.orb +186 -0
  66. package/behaviors/registry/ui/game/atoms/ui-svg-draw-shape.orb +259 -0
  67. package/behaviors/registry/ui/game/atoms/ui-svg-draw-text.orb +195 -0
  68. package/behaviors/registry/ui/game/molecules/std-worldmap-board-2d.orb +6 -3
  69. package/behaviors/registry/ui/game/molecules/ui-canvas-2d.orb +16 -1
  70. package/behaviors/registry/ui/game/molecules/ui-canvas.orb +14 -0
  71. package/behaviors/registry/ui/game/molecules/ui-draw-shape-layer.orb +9 -1
  72. package/behaviors/registry/ui/game/molecules/ui-svg-draw-shape-layer.orb +188 -0
  73. package/behaviors/registry/ui/game/molecules/ui-svg-stage.orb +362 -0
  74. package/behaviors/registry/ui/game/organisms/ui-fishing-board.orb +16 -16
  75. package/behaviors/registry/ui/game/organisms/ui-physics-sandbox-board.orb +10 -10
  76. package/behaviors/registry/ui/game/organisms/ui-roguelike-board.orb +10 -10
  77. package/behaviors/registry/ui/game/organisms/ui-sokoban-board.orb +10 -10
  78. package/behaviors/registry/ui/game/organisms/ui-state-architect-board.orb +8 -8
  79. package/behaviors/registry/ui/game/organisms/ui-winter-ski-board.orb +14 -14
  80. package/dist/behaviors/behaviors-embeddings.json +371 -343
  81. package/dist/behaviors/behaviors-registry.json +4851 -2388
  82. package/dist/behaviors/exports-reader.js +3409 -3101
  83. package/dist/behaviors/functions/index.d.ts +609 -6
  84. package/dist/behaviors/functions/index.js +3389 -3102
  85. package/dist/behaviors/index.d.ts +1 -1
  86. package/dist/behaviors/index.js +3410 -3102
  87. package/dist/behaviors/knob-embeddings.json +1 -1
  88. package/dist/behaviors/query.js +3409 -3101
  89. package/dist/behaviors/registry/factory-signatures.json +6211 -2181
  90. package/dist/behaviors/registry/infra/atoms/std-approval-gate.orb +16 -8
  91. package/dist/behaviors/registry/infra/atoms/std-cache-aside.orb +62 -31
  92. package/dist/behaviors/registry/infra/atoms/std-circuit-breaker.orb +32 -16
  93. package/dist/behaviors/registry/infra/atoms/std-data-erasure.orb +17 -9
  94. package/dist/behaviors/registry/infra/atoms/std-mod-queue.orb +16 -8
  95. package/dist/behaviors/registry/infra/atoms/std-rate-limiter.orb +28 -14
  96. package/dist/behaviors/registry/ml/molecules/std-escalating-decision.orb +10 -5
  97. package/dist/behaviors/registry/ml/molecules/std-knowledge-tracing.orb +4 -2
  98. package/dist/behaviors/registry/ui/core/atoms/std-billable-hour.orb +2 -1
  99. package/dist/behaviors/registry/ui/core/atoms/std-browse.orb +108 -28
  100. package/dist/behaviors/registry/ui/core/atoms/std-dashboard-grid-embedded.orb +2 -1
  101. package/dist/behaviors/registry/ui/core/atoms/std-esign-flow.orb +4 -2
  102. package/dist/behaviors/registry/ui/core/atoms/std-esign-request.orb +6 -3
  103. package/dist/behaviors/registry/ui/core/atoms/std-gallery.orb +18 -9
  104. package/dist/behaviors/registry/ui/core/atoms/std-import.orb +4 -2
  105. package/dist/behaviors/registry/ui/core/molecules/ui-data-list.orb +21 -0
  106. package/dist/behaviors/registry/ui/core/molecules/ui-emoji-picker.orb +214 -0
  107. package/dist/behaviors/registry/ui/core/molecules/ui-popover.orb +112 -1
  108. package/dist/behaviors/registry/ui/core/molecules/ui-table-view.orb +44 -0
  109. package/dist/behaviors/registry/ui/game/atoms/std-arcade-flow.orb +1 -0
  110. package/dist/behaviors/registry/ui/game/atoms/std-arcade-play.orb +1 -0
  111. package/dist/behaviors/registry/ui/game/atoms/std-chase-ai.orb +1 -0
  112. package/dist/behaviors/registry/ui/game/atoms/std-dungeon-combat.orb +1 -0
  113. package/dist/behaviors/registry/ui/game/atoms/std-fx-particles.orb +1 -0
  114. package/dist/behaviors/registry/ui/game/atoms/std-gather.orb +1 -0
  115. package/dist/behaviors/registry/ui/game/atoms/std-gold.orb +1 -0
  116. package/dist/behaviors/registry/ui/game/atoms/std-grid-tactics.orb +1 -0
  117. package/dist/behaviors/registry/ui/game/atoms/std-hero-nav.orb +1 -0
  118. package/dist/behaviors/registry/ui/game/atoms/std-market-flow.orb +1 -0
  119. package/dist/behaviors/registry/ui/game/atoms/std-objective-flow.orb +1 -0
  120. package/dist/behaviors/registry/ui/game/atoms/std-objective-reach.orb +1 -0
  121. package/dist/behaviors/registry/ui/game/atoms/std-patience.orb +1 -0
  122. package/dist/behaviors/registry/ui/game/atoms/std-production.orb +1 -0
  123. package/dist/behaviors/registry/ui/game/atoms/std-round-flow.orb +1 -0
  124. package/dist/behaviors/registry/ui/game/atoms/std-score.orb +1 -0
  125. package/dist/behaviors/registry/ui/game/atoms/std-survival-flow.orb +1 -0
  126. package/dist/behaviors/registry/ui/game/atoms/std-xp.orb +1 -0
  127. package/dist/behaviors/registry/ui/game/atoms/ui-draw-group.orb +196 -0
  128. package/dist/behaviors/registry/ui/game/atoms/ui-draw-shape.orb +9 -1
  129. package/dist/behaviors/registry/ui/game/atoms/ui-draw-sprite.orb +2 -2
  130. package/dist/behaviors/registry/ui/game/atoms/ui-svg-draw-group.orb +186 -0
  131. package/dist/behaviors/registry/ui/game/atoms/ui-svg-draw-shape.orb +259 -0
  132. package/dist/behaviors/registry/ui/game/atoms/ui-svg-draw-text.orb +195 -0
  133. package/dist/behaviors/registry/ui/game/molecules/std-worldmap-board-2d.orb +6 -3
  134. package/dist/behaviors/registry/ui/game/molecules/ui-canvas-2d.orb +16 -1
  135. package/dist/behaviors/registry/ui/game/molecules/ui-canvas.orb +14 -0
  136. package/dist/behaviors/registry/ui/game/molecules/ui-draw-shape-layer.orb +9 -1
  137. package/dist/behaviors/registry/ui/game/molecules/ui-svg-draw-shape-layer.orb +188 -0
  138. package/dist/behaviors/registry/ui/game/molecules/ui-svg-stage.orb +362 -0
  139. package/dist/behaviors/registry/ui/game/organisms/ui-fishing-board.orb +16 -16
  140. package/dist/behaviors/registry/ui/game/organisms/ui-physics-sandbox-board.orb +10 -10
  141. package/dist/behaviors/registry/ui/game/organisms/ui-roguelike-board.orb +10 -10
  142. package/dist/behaviors/registry/ui/game/organisms/ui-sokoban-board.orb +10 -10
  143. package/dist/behaviors/registry/ui/game/organisms/ui-state-architect-board.orb +8 -8
  144. package/dist/behaviors/registry/ui/game/organisms/ui-winter-ski-board.orb +14 -14
  145. package/dist/behaviors-embeddings.json +371 -343
  146. package/dist/behaviors-registry.json +4851 -2388
  147. package/dist/index.d.ts +1 -1
  148. package/dist/index.js +3410 -3102
  149. package/dist/knob-embeddings.json +1 -1
  150. package/dist/registry/factory-signatures.json +6211 -2181
  151. package/package.json +2 -2
@@ -92,7 +92,7 @@ orbital WinterSkiBoardOrbital {
92
92
  controls: { type: control-grid, kind: "dpad", directionEvents: { left: "STEER_LEFT", right: "STEER_RIGHT" }, directionAssets: { left: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "33,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-left", thumbnailUrl: "" }, right: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "31,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-right", thumbnailUrl: "" } } }
93
93
  children: [ { type: canvas, camera: { zoom: (math/min 1 (/ 5 (+ 1 (math/max (array/max @config.tiles "x") (array/max @config.tiles "y"))))), pos: { x: (/ (+ (array/min @config.tiles "x") (array/max @config.tiles "x")) 2), y: (/ (+ (array/min @config.tiles "y") (array/max @config.tiles "y")) 2) } }, projection: "flat", showMinimap: false, keyMap: { ArrowLeft: "STEER_LEFT", KeyA: "STEER_LEFT", ArrowRight: "STEER_RIGHT", KeyD: "STEER_RIGHT" }, children: [
94
94
  { type: draw-shape-layer, items: (array/map @config.tiles (fn t { type: draw-shape, shape: "cell", position: { x: (object/get @t x), y: (object/get @t y) }, fill: "#5c94fc", stroke: "rgba(255,255,255,0.35)", strokeWidth: 1 })) }
95
- { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 0.5, height: 0.5 })) }
95
+ { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 1, height: 1 })) }
96
96
  { type: draw-sprite-layer, items: (array/map @entity.features (fn f { type: draw-sprite, position: { x: (object/get @f x), y: (object/get @f y) }, asset: (if (== (object/get @f type) "gate_red") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "8,0" "8,1") }) (if (== (object/get @f type) "gate_blue") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "9,0" "9,1") }) (object/get @f sprite))), anchor: "center", width: 0.5, height: 0.5 })) }
97
97
  { type: draw-sprite-layer, items: [ { type: draw-sprite, position: { x: @entity.hero.x, y: @entity.hero.y }, asset: (object/get (object/get @config.assetManifest units) hero), anchor: "ground", width: 0.5, height: 0.5 } ] }
98
98
  { type: draw-sprite-layer, items: (array/map @entity.effects (fn e { type: draw-sprite, position: { x: (object/get @e x), y: (object/get @e y) }, asset: (object/get (object/get @config.assetManifest effects) (object/get @e key)) })) }
@@ -118,7 +118,7 @@ orbital WinterSkiBoardOrbital {
118
118
  controls: { type: control-grid, kind: "dpad", directionEvents: { left: "STEER_LEFT", right: "STEER_RIGHT" }, directionAssets: { left: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "33,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-left", thumbnailUrl: "" }, right: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "31,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-right", thumbnailUrl: "" } } }
119
119
  children: [ { type: canvas, camera: { zoom: (math/min 1 (/ 5 (+ 1 (math/max (array/max @config.tiles "x") (array/max @config.tiles "y"))))), pos: { x: (/ (+ (array/min @config.tiles "x") (array/max @config.tiles "x")) 2), y: (/ (+ (array/min @config.tiles "y") (array/max @config.tiles "y")) 2) } }, projection: "flat", showMinimap: false, keyMap: { ArrowLeft: "STEER_LEFT", KeyA: "STEER_LEFT", ArrowRight: "STEER_RIGHT", KeyD: "STEER_RIGHT" }, children: [
120
120
  { type: draw-shape-layer, items: (array/map @config.tiles (fn t { type: draw-shape, shape: "cell", position: { x: (object/get @t x), y: (object/get @t y) }, fill: "#5c94fc", stroke: "rgba(255,255,255,0.35)", strokeWidth: 1 })) }
121
- { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 0.5, height: 0.5 })) }
121
+ { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 1, height: 1 })) }
122
122
  { type: draw-sprite-layer, items: (array/map @entity.features (fn f { type: draw-sprite, position: { x: (object/get @f x), y: (object/get @f y) }, asset: (if (== (object/get @f type) "gate_red") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "8,0" "8,1") }) (if (== (object/get @f type) "gate_blue") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "9,0" "9,1") }) (object/get @f sprite))), anchor: "center", width: 0.5, height: 0.5 })) }
123
123
  { type: draw-sprite-layer, items: [ { type: draw-sprite, position: { x: @entity.hero.x, y: @entity.hero.y }, asset: (object/get (object/get @config.assetManifest units) hero), anchor: "ground", width: 0.5, height: 0.5 } ] }
124
124
  { type: draw-sprite-layer, items: (array/map @entity.effects (fn e { type: draw-sprite, position: { x: (object/get @e x), y: (object/get @e y) }, asset: (object/get (object/get @config.assetManifest effects) (object/get @e key)) })) }
@@ -145,7 +145,7 @@ orbital WinterSkiBoardOrbital {
145
145
  controls: { type: control-grid, kind: "dpad", directionEvents: { left: "STEER_LEFT", right: "STEER_RIGHT" }, directionAssets: { left: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "33,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-left", thumbnailUrl: "" }, right: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "31,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-right", thumbnailUrl: "" } } }
146
146
  children: [ { type: canvas, camera: { zoom: (math/min 1 (/ 5 (+ 1 (math/max (array/max @config.tiles "x") (array/max @config.tiles "y"))))), pos: { x: (/ (+ (array/min @config.tiles "x") (array/max @config.tiles "x")) 2), y: (/ (+ (array/min @config.tiles "y") (array/max @config.tiles "y")) 2) } }, projection: "flat", showMinimap: false, keyMap: { ArrowLeft: "STEER_LEFT", KeyA: "STEER_LEFT", ArrowRight: "STEER_RIGHT", KeyD: "STEER_RIGHT" }, children: [
147
147
  { type: draw-shape-layer, items: (array/map @config.tiles (fn t { type: draw-shape, shape: "cell", position: { x: (object/get @t x), y: (object/get @t y) }, fill: "#5c94fc", stroke: "rgba(255,255,255,0.35)", strokeWidth: 1 })) }
148
- { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 0.5, height: 0.5 })) }
148
+ { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 1, height: 1 })) }
149
149
  { type: draw-sprite-layer, items: (array/map @entity.features (fn f { type: draw-sprite, position: { x: (object/get @f x), y: (object/get @f y) }, asset: (if (== (object/get @f type) "gate_red") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "8,0" "8,1") }) (if (== (object/get @f type) "gate_blue") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "9,0" "9,1") }) (object/get @f sprite))), anchor: "center", width: 0.5, height: 0.5 })) }
150
150
  { type: draw-sprite-layer, items: [ { type: draw-sprite, position: { x: @entity.hero.x, y: @entity.hero.y }, asset: (object/get (object/get @config.assetManifest units) hero), anchor: "ground", width: 0.5, height: 0.5 } ] }
151
151
  { type: draw-sprite-layer, items: (array/map @entity.effects (fn e { type: draw-sprite, position: { x: (object/get @e x), y: (object/get @e y) }, asset: (object/get (object/get @config.assetManifest effects) (object/get @e key)) })) }
@@ -165,7 +165,7 @@ orbital WinterSkiBoardOrbital {
165
165
  overlay: { type: game-menu, title: (if (== @entity.result "victory") "VICTORY" "DEFEAT"), subtitle: (if (== @entity.result "victory") "Three runs conquered" "Wiped out on the slope"), options: [ { id: "again", label: "Play Again", event: "PLAY_AGAIN", variant: "primary" } ] }
166
166
  children: [ { type: canvas, camera: { zoom: (math/min 1 (/ 5 (+ 1 (math/max (array/max @config.tiles "x") (array/max @config.tiles "y"))))), pos: { x: (/ (+ (array/min @config.tiles "x") (array/max @config.tiles "x")) 2), y: (/ (+ (array/min @config.tiles "y") (array/max @config.tiles "y")) 2) } }, projection: "flat", showMinimap: false, keyMap: { ArrowLeft: "STEER_LEFT", KeyA: "STEER_LEFT", ArrowRight: "STEER_RIGHT", KeyD: "STEER_RIGHT" }, children: [
167
167
  { type: draw-shape-layer, items: (array/map @config.tiles (fn t { type: draw-shape, shape: "cell", position: { x: (object/get @t x), y: (object/get @t y) }, fill: "#5c94fc", stroke: "rgba(255,255,255,0.35)", strokeWidth: 1 })) }
168
- { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 0.5, height: 0.5 })) }
168
+ { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 1, height: 1 })) }
169
169
  { type: draw-sprite-layer, items: (array/map @entity.features (fn f { type: draw-sprite, position: { x: (object/get @f x), y: (object/get @f y) }, asset: (if (== (object/get @f type) "gate_red") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "8,0" "8,1") }) (if (== (object/get @f type) "gate_blue") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "9,0" "9,1") }) (object/get @f sprite))), anchor: "center", width: 0.5, height: 0.5 })) }
170
170
  { type: draw-sprite-layer, items: [ { type: draw-sprite, position: { x: @entity.hero.x, y: @entity.hero.y }, asset: (object/get (object/get @config.assetManifest units) hero), anchor: "ground", width: 0.5, height: 0.5 } ] }
171
171
  { type: draw-sprite-layer, items: (array/map @entity.effects (fn e { type: draw-sprite, position: { x: (object/get @e x), y: (object/get @e y) }, asset: (object/get (object/get @config.assetManifest effects) (object/get @e key)) })) }
@@ -194,7 +194,7 @@ orbital WinterSkiBoardOrbital {
194
194
  controls: { type: control-grid, kind: "dpad", directionEvents: { left: "STEER_LEFT", right: "STEER_RIGHT" }, directionAssets: { left: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "33,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-left", thumbnailUrl: "" }, right: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "31,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-right", thumbnailUrl: "" } } }
195
195
  children: [ { type: canvas, camera: { zoom: (math/min 1 (/ 5 (+ 1 (math/max (array/max @config.tiles "x") (array/max @config.tiles "y"))))), pos: { x: (/ (+ (array/min @config.tiles "x") (array/max @config.tiles "x")) 2), y: (/ (+ (array/min @config.tiles "y") (array/max @config.tiles "y")) 2) } }, projection: "flat", showMinimap: false, keyMap: { ArrowLeft: "STEER_LEFT", KeyA: "STEER_LEFT", ArrowRight: "STEER_RIGHT", KeyD: "STEER_RIGHT" }, children: [
196
196
  { type: draw-shape-layer, items: (array/map @config.tiles (fn t { type: draw-shape, shape: "cell", position: { x: (object/get @t x), y: (object/get @t y) }, fill: "#5c94fc", stroke: "rgba(255,255,255,0.35)", strokeWidth: 1 })) }
197
- { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 0.5, height: 0.5 })) }
197
+ { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 1, height: 1 })) }
198
198
  { type: draw-sprite-layer, items: (array/map @entity.features (fn f { type: draw-sprite, position: { x: (object/get @f x), y: (object/get @f y) }, asset: (if (== (object/get @f type) "gate_red") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "8,0" "8,1") }) (if (== (object/get @f type) "gate_blue") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "9,0" "9,1") }) (object/get @f sprite))), anchor: "center", width: 0.5, height: 0.5 })) }
199
199
  { type: draw-sprite-layer, items: [ { type: draw-sprite, position: { x: @entity.hero.x, y: @entity.hero.y }, asset: (object/get (object/get @config.assetManifest units) hero), anchor: "ground", width: 0.5, height: 0.5 } ] }
200
200
  { type: draw-sprite-layer, items: (array/map @entity.effects (fn e { type: draw-sprite, position: { x: (object/get @e x), y: (object/get @e y) }, asset: (object/get (object/get @config.assetManifest effects) (object/get @e key)) })) }
@@ -233,7 +233,7 @@ orbital WinterSkiBoardOrbital {
233
233
  controls: { type: control-grid, kind: "dpad", directionEvents: { left: "STEER_LEFT", right: "STEER_RIGHT" }, directionAssets: { left: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "33,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-left", thumbnailUrl: "" }, right: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "31,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-right", thumbnailUrl: "" } } }
234
234
  children: [ { type: canvas, camera: { zoom: (math/min 1 (/ 5 (+ 1 (math/max (array/max @config.tiles "x") (array/max @config.tiles "y"))))), pos: { x: (/ (+ (array/min @config.tiles "x") (array/max @config.tiles "x")) 2), y: (/ (+ (array/min @config.tiles "y") (array/max @config.tiles "y")) 2) } }, projection: "flat", showMinimap: false, keyMap: { ArrowLeft: "STEER_LEFT", KeyA: "STEER_LEFT", ArrowRight: "STEER_RIGHT", KeyD: "STEER_RIGHT" }, children: [
235
235
  { type: draw-shape-layer, items: (array/map @config.tiles (fn t { type: draw-shape, shape: "cell", position: { x: (object/get @t x), y: (object/get @t y) }, fill: "#5c94fc", stroke: "rgba(255,255,255,0.35)", strokeWidth: 1 })) }
236
- { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 0.5, height: 0.5 })) }
236
+ { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 1, height: 1 })) }
237
237
  { type: draw-sprite-layer, items: (array/map @entity.features (fn f { type: draw-sprite, position: { x: (object/get @f x), y: (object/get @f y) }, asset: (if (== (object/get @f type) "gate_red") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "8,0" "8,1") }) (if (== (object/get @f type) "gate_blue") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "9,0" "9,1") }) (object/get @f sprite))), anchor: "center", width: 0.5, height: 0.5 })) }
238
238
  { type: draw-sprite-layer, items: [ { type: draw-sprite, position: { x: @entity.hero.x, y: @entity.hero.y }, asset: (object/get (object/get @config.assetManifest units) hero), anchor: "ground", width: 0.5, height: 0.5 } ] }
239
239
  { type: draw-sprite-layer, items: (array/map @entity.effects (fn e { type: draw-sprite, position: { x: (object/get @e x), y: (object/get @e y) }, asset: (object/get (object/get @config.assetManifest effects) (object/get @e key)) })) }
@@ -253,7 +253,7 @@ orbital WinterSkiBoardOrbital {
253
253
  controls: { type: control-grid, kind: "dpad", directionEvents: { left: "STEER_LEFT", right: "STEER_RIGHT" }, directionAssets: { left: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "33,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-left", thumbnailUrl: "" }, right: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/tilemap_packed.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-input-prompts-pixel-16/terrain/Tilemap_tilemap_packed.tiles.json", sprite: "31,4", role: "ui", category: "ui", animations: [], style: "pixel", variant: "", dimension: "2d", aspect: "1:1", name: "key-right", thumbnailUrl: "" } } }
254
254
  children: [ { type: canvas, camera: { zoom: (math/min 1 (/ 5 (+ 1 (math/max (array/max @config.tiles "x") (array/max @config.tiles "y"))))), pos: { x: (/ (+ (array/min @config.tiles "x") (array/max @config.tiles "x")) 2), y: (/ (+ (array/min @config.tiles "y") (array/max @config.tiles "y")) 2) } }, projection: "flat", showMinimap: false, keyMap: { ArrowLeft: "STEER_LEFT", KeyA: "STEER_LEFT", ArrowRight: "STEER_RIGHT", KeyD: "STEER_RIGHT" }, children: [
255
255
  { type: draw-shape-layer, items: (array/map @config.tiles (fn t { type: draw-shape, shape: "cell", position: { x: (object/get @t x), y: (object/get @t y) }, fill: "#5c94fc", stroke: "rgba(255,255,255,0.35)", strokeWidth: 1 })) }
256
- { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 0.5, height: 0.5 })) }
256
+ { type: draw-sprite-layer, items: (array/map @config.tiles (fn t { type: draw-sprite, position: { x: (object/get @t x), y: (object/get @t y) }, asset: (object/get @t terrainSprite), anchor: "center", width: 1, height: 1 })) }
257
257
  { type: draw-sprite-layer, items: (array/map @entity.features (fn f { type: draw-sprite, position: { x: (object/get @f x), y: (object/get @f y) }, asset: (if (== (object/get @f type) "gate_red") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "8,0" "8,1") }) (if (== (object/get @f type) "gate_blue") (object/merge (object/get @f sprite) { sprite: (if (== (% @entity.frame 2) 0) "9,0" "9,1") }) (object/get @f sprite))), anchor: "center", width: 0.5, height: 0.5 })) }
258
258
  { type: draw-sprite-layer, items: [ { type: draw-sprite, position: { x: @entity.hero.x, y: @entity.hero.y }, asset: (object/get (object/get @config.assetManifest units) hero), anchor: "ground", width: 0.5, height: 0.5 } ] }
259
259
  { type: draw-sprite-layer, items: (array/map @entity.effects (fn e { type: draw-sprite, position: { x: (object/get @e x), y: (object/get @e y) }, asset: (object/get (object/get @config.assetManifest effects) (object/get @e key)) })) }