@almadar/std 16.209.0 → 16.211.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 (113) hide show
  1. package/behaviors/lolo/infra/atoms/std-approval-gate.lolo +2 -2
  2. package/behaviors/lolo/infra/atoms/std-calendar-sync.lolo +5 -5
  3. package/behaviors/lolo/infra/atoms/std-cascade-on-delete.lolo +7 -1
  4. package/behaviors/lolo/infra/atoms/std-circuit-breaker.lolo +3 -3
  5. package/behaviors/lolo/ui/core/atoms/std-app-layout.lolo +1 -0
  6. package/behaviors/lolo/ui/core/atoms/std-browse.lolo +40 -41
  7. package/behaviors/lolo/ui/core/atoms/std-calendar.lolo +25 -19
  8. package/behaviors/lolo/ui/core/atoms/std-confirmation.lolo +2 -0
  9. package/behaviors/lolo/ui/core/atoms/std-esign-request.lolo +2 -2
  10. package/behaviors/lolo/ui/core/atoms/std-graphs.lolo +1 -1
  11. package/behaviors/lolo/ui/core/atoms/std-modal.lolo +3 -1
  12. package/behaviors/lolo/ui/core/atoms/std-stats.lolo +1 -1
  13. package/behaviors/lolo/ui/core/atoms/std-step-flow.lolo +4 -3
  14. package/behaviors/lolo/ui/core/atoms/std-tag-taxonomy.lolo +1 -4
  15. package/behaviors/lolo/ui/core/atoms/std-thread.lolo +33 -30
  16. package/behaviors/lolo/ui/core/atoms/std-version-history.lolo +1 -1
  17. package/behaviors/lolo/ui/core/atoms/ui-radio.lolo +1 -1
  18. package/behaviors/lolo/ui/core/atoms/ui-range-slider.lolo +1 -1
  19. package/behaviors/lolo/ui/core/atoms/ui-switch.lolo +1 -1
  20. package/behaviors/lolo/ui/core/atoms/ui-text-highlight.lolo +1 -1
  21. package/behaviors/lolo/ui/core/atoms/ui-time-slot-cell.lolo +1 -1
  22. package/behaviors/lolo/ui/core/molecules/ui-code-block.lolo +2 -2
  23. package/behaviors/lolo/ui/core/molecules/ui-command-palette.lolo +1 -1
  24. package/behaviors/lolo/ui/core/molecules/ui-date-range-picker.lolo +2 -2
  25. package/behaviors/lolo/ui/core/molecules/ui-document-panel.lolo +2 -2
  26. package/behaviors/lolo/ui/core/molecules/ui-filter-group.lolo +1 -1
  27. package/behaviors/lolo/ui/core/molecules/ui-number-stepper.lolo +1 -1
  28. package/behaviors/lolo/ui/core/molecules/ui-pagination.lolo +1 -1
  29. package/behaviors/lolo/ui/core/molecules/ui-popover.lolo +1 -1
  30. package/behaviors/lolo/ui/core/molecules/ui-relation-select.lolo +1 -1
  31. package/behaviors/lolo/ui/core/molecules/ui-rich-text-editor.lolo +1 -1
  32. package/behaviors/lolo/ui/core/molecules/ui-search-input.lolo +1 -1
  33. package/behaviors/lolo/ui/core/molecules/ui-sidebar.lolo +1 -1
  34. package/behaviors/lolo/ui/core/molecules/ui-star-rating.lolo +1 -1
  35. package/behaviors/lolo/ui/core/molecules/ui-wizard-navigation.lolo +2 -2
  36. package/behaviors/lolo/ui/core/organisms/ui-split-pane.lolo +1 -1
  37. package/behaviors/lolo/ui/game/atoms/ui-draw-skinned-mesh.lolo +126 -0
  38. package/behaviors/lolo/ui/game/atoms/ui-trait-slot.lolo +1 -1
  39. package/behaviors/lolo/ui/game/organisms/std-arcade-board-3d.lolo +10 -10
  40. package/behaviors/lolo/ui/game/organisms/std-crew-board-2d.lolo +10 -10
  41. package/behaviors/lolo/ui/game/organisms/std-dungeon-board-2d.lolo +36 -36
  42. package/behaviors/lolo/ui/game/organisms/std-market-board-3d.lolo +36 -36
  43. package/behaviors/lolo/ui/game/organisms/std-objective-board-3d.lolo +34 -34
  44. package/behaviors/lolo/ui/game/organisms/std-survival-board-3d.lolo +10 -10
  45. package/behaviors/lolo/ui/game/organisms/std-tactics-board-2d.lolo +12 -12
  46. package/behaviors/lolo/ui/game/organisms/std-tactics-board-3d.lolo +12 -12
  47. package/behaviors/lolo/ui/game/organisms/std-worldmap-board-2d.lolo +20 -20
  48. package/behaviors/registry/infra/atoms/std-approval-gate.orb +20 -9
  49. package/behaviors/registry/infra/atoms/std-calendar-sync.orb +5 -0
  50. package/behaviors/registry/infra/atoms/std-cascade-on-delete.orb +28 -0
  51. package/behaviors/registry/infra/atoms/std-circuit-breaker.orb +3 -0
  52. package/behaviors/registry/infra/atoms/std-notification-center.orb +56 -24
  53. package/behaviors/registry/infra/atoms/std-notify-on-event.orb +12 -6
  54. package/behaviors/registry/ui/core/atoms/std-app-layout.orb +20 -0
  55. package/behaviors/registry/ui/core/atoms/std-browse.orb +51 -137
  56. package/behaviors/registry/ui/core/atoms/std-calendar.orb +101 -24
  57. package/behaviors/registry/ui/core/atoms/std-confirmation.orb +44 -18
  58. package/behaviors/registry/ui/core/atoms/std-esign-flow.orb +44 -18
  59. package/behaviors/registry/ui/core/atoms/std-esign-request.orb +19 -8
  60. package/behaviors/registry/ui/core/atoms/std-form-advanced.orb +20 -9
  61. package/behaviors/registry/ui/core/atoms/std-graphs.orb +1 -0
  62. package/behaviors/registry/ui/core/atoms/std-modal.orb +52 -24
  63. package/behaviors/registry/ui/core/atoms/std-stats.orb +1 -0
  64. package/behaviors/registry/ui/core/atoms/std-step-flow.orb +0 -3
  65. package/behaviors/registry/ui/core/atoms/std-tag-taxonomy.orb +2 -9
  66. package/behaviors/registry/ui/core/atoms/std-thread.orb +134 -40
  67. package/behaviors/registry/ui/core/atoms/std-version-history.orb +1 -0
  68. package/behaviors/registry/ui/core/atoms/ui-radio.orb +1 -0
  69. package/behaviors/registry/ui/core/atoms/ui-range-slider.orb +1 -0
  70. package/behaviors/registry/ui/core/atoms/ui-switch.orb +1 -0
  71. package/behaviors/registry/ui/core/atoms/ui-text-highlight.orb +1 -0
  72. package/behaviors/registry/ui/core/atoms/ui-time-slot-cell.orb +1 -0
  73. package/behaviors/registry/ui/core/molecules/ui-code-block.orb +2 -0
  74. package/behaviors/registry/ui/core/molecules/ui-command-palette.orb +1 -0
  75. package/behaviors/registry/ui/core/molecules/ui-date-range-picker.orb +2 -0
  76. package/behaviors/registry/ui/core/molecules/ui-document-panel.orb +2 -0
  77. package/behaviors/registry/ui/core/molecules/ui-filter-group.orb +1 -0
  78. package/behaviors/registry/ui/core/molecules/ui-number-stepper.orb +1 -0
  79. package/behaviors/registry/ui/core/molecules/ui-pagination.orb +1 -0
  80. package/behaviors/registry/ui/core/molecules/ui-popover.orb +1 -0
  81. package/behaviors/registry/ui/core/molecules/ui-relation-select.orb +1 -0
  82. package/behaviors/registry/ui/core/molecules/ui-rich-text-editor.orb +1 -0
  83. package/behaviors/registry/ui/core/molecules/ui-search-input.orb +1 -0
  84. package/behaviors/registry/ui/core/molecules/ui-sidebar.orb +1 -0
  85. package/behaviors/registry/ui/core/molecules/ui-star-rating.orb +1 -0
  86. package/behaviors/registry/ui/core/molecules/ui-wizard-navigation.orb +2 -0
  87. package/behaviors/registry/ui/core/organisms/ui-split-pane.orb +1 -0
  88. package/behaviors/registry/ui/game/atoms/ui-draw-skinned-mesh.orb +687 -0
  89. package/behaviors/registry/ui/game/atoms/ui-trait-slot.orb +1 -0
  90. package/behaviors/registry/ui/game/organisms/std-arcade-board-3d.orb +10 -30
  91. package/behaviors/registry/ui/game/organisms/std-crew-board-2d.orb +10 -30
  92. package/behaviors/registry/ui/game/organisms/std-dungeon-board-2d.orb +36 -108
  93. package/behaviors/registry/ui/game/organisms/std-market-board-3d.orb +36 -108
  94. package/behaviors/registry/ui/game/organisms/std-objective-board-3d.orb +34 -102
  95. package/behaviors/registry/ui/game/organisms/std-survival-board-3d.orb +10 -30
  96. package/behaviors/registry/ui/game/organisms/std-tactics-board-2d.orb +12 -36
  97. package/behaviors/registry/ui/game/organisms/std-tactics-board-3d.orb +12 -36
  98. package/behaviors/registry/ui/game/organisms/std-worldmap-board-2d.orb +20 -60
  99. package/dist/behaviors/exports-reader.js +2147 -2212
  100. package/dist/behaviors/functions/index.d.ts +111 -34
  101. package/dist/behaviors/functions/index.js +2145 -2211
  102. package/dist/behaviors/index.d.ts +1 -1
  103. package/dist/behaviors/index.js +2148 -2213
  104. package/dist/behaviors/query.js +2147 -2212
  105. package/dist/behaviors-embeddings.hash.json +3 -3
  106. package/dist/behaviors-embeddings.json +11 -7
  107. package/dist/behaviors-registry.json +997 -759
  108. package/dist/index.d.ts +1 -1
  109. package/dist/index.js +2148 -2213
  110. package/dist/knob-embeddings.hash.json +3 -3
  111. package/dist/knob-embeddings.json +1 -1
  112. package/dist/registry/factory-signatures.json +1 -1
  113. package/package.json +3 -3
@@ -104,29 +104,29 @@ orbital MarketBoard3DOrbital {
104
104
  entity GameState [runtime, shared] {
105
105
  id : string!
106
106
  units : [Unit] = [
107
- { id: "hero", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 1, maxHealth: 1, unitType: "hero", name: "Hero", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
107
+ { id: "hero", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 1, maxHealth: 1, unitType: "hero", name: "Hero", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
108
108
  ]
109
109
  tiles : [Tile] = [
110
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
111
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
112
- { id: "t-0-2", x: 0, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
113
- { id: "t-0-3", x: 0, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
114
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
115
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
116
- { id: "t-1-2", x: 1, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
117
- { id: "t-1-3", x: 1, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
118
- { id: "t-2-0", x: 2, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
119
- { id: "t-2-1", x: 2, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
120
- { id: "t-2-2", x: 2, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
121
- { id: "t-2-3", x: 2, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
122
- { id: "t-3-0", x: 3, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
123
- { id: "t-3-1", x: 3, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
124
- { id: "t-3-2", x: 3, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
125
- { id: "t-3-3", x: 3, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
110
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
111
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
112
+ { id: "t-0-2", x: 0, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
113
+ { id: "t-0-3", x: 0, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
114
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
115
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
116
+ { id: "t-1-2", x: 1, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
117
+ { id: "t-1-3", x: 1, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
118
+ { id: "t-2-0", x: 2, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
119
+ { id: "t-2-1", x: 2, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
120
+ { id: "t-2-2", x: 2, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
121
+ { id: "t-2-3", x: 2, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
122
+ { id: "t-3-0", x: 3, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
123
+ { id: "t-3-1", x: 3, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
124
+ { id: "t-3-2", x: 3, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
125
+ { id: "t-3-3", x: 3, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
126
126
  ]
127
127
  movesLeft : number = 0
128
128
  customers : [Customer] = [
129
- { id: "cust-1", position: { x: 2, y: 2 }, patience: 10, maxPatience: 10, unitType: "customer", name: "Customer", team: "customer", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "red_body_square.png", role: "customer", category: "customer", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "customer", thumbnailUrl: "" } }
129
+ { id: "cust-1", position: { x: 2, y: 2 }, patience: 10, maxPatience: 10, unitType: "customer", name: "Customer", team: "customer", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "customer", category: "customer", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "customer", thumbnailUrl: "" } }
130
130
  ]
131
131
  served : number = 0
132
132
  pending : number = 0
@@ -145,25 +145,25 @@ orbital MarketBoard3DOrbital {
145
145
  gridHeight: 4
146
146
  moveBudget: 999999
147
147
  units: [
148
- { id: "hero", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 1, maxHealth: 1, unitType: "hero", name: "Hero", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
148
+ { id: "hero", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 1, maxHealth: 1, unitType: "hero", name: "Hero", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
149
149
  ]
150
150
  tiles: [
151
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
152
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
153
- { id: "t-0-2", x: 0, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
154
- { id: "t-0-3", x: 0, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
155
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
156
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
157
- { id: "t-1-2", x: 1, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
158
- { id: "t-1-3", x: 1, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
159
- { id: "t-2-0", x: 2, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
160
- { id: "t-2-1", x: 2, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
161
- { id: "t-2-2", x: 2, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
162
- { id: "t-2-3", x: 2, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
163
- { id: "t-3-0", x: 3, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
164
- { id: "t-3-1", x: 3, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
165
- { id: "t-3-2", x: 3, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
166
- { id: "t-3-3", x: 3, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
151
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
152
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
153
+ { id: "t-0-2", x: 0, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
154
+ { id: "t-0-3", x: 0, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
155
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
156
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
157
+ { id: "t-1-2", x: 1, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
158
+ { id: "t-1-3", x: 1, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
159
+ { id: "t-2-0", x: 2, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
160
+ { id: "t-2-1", x: 2, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
161
+ { id: "t-2-2", x: 2, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
162
+ { id: "t-2-3", x: 2, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
163
+ { id: "t-3-0", x: 3, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
164
+ { id: "t-3-1", x: 3, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
165
+ { id: "t-3-2", x: 3, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
166
+ { id: "t-3-3", x: 3, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
167
167
  ]
168
168
  }
169
169
  }
@@ -173,7 +173,7 @@ orbital MarketBoard3DOrbital {
173
173
  running: true
174
174
  serveRadius: 1
175
175
  customers: [
176
- { id: "cust-1", position: { x: 2, y: 2 }, patience: 10, maxPatience: 10, unitType: "customer", name: "Customer", team: "customer", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "red_body_square.png", role: "customer", category: "customer", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "customer", thumbnailUrl: "" } }
176
+ { id: "cust-1", position: { x: 2, y: 2 }, patience: 10, maxPatience: 10, unitType: "customer", name: "Customer", team: "customer", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "customer", category: "customer", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "customer", thumbnailUrl: "" } }
177
177
  ]
178
178
  }
179
179
  }
@@ -100,25 +100,25 @@ orbital ObjectiveBoard3DOrbital {
100
100
  entity GameState [runtime, shared] {
101
101
  id : string!
102
102
  units : [Unit] = [
103
- { id: "hero", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "hero", name: "Hero", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
103
+ { id: "hero", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "hero", name: "Hero", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
104
104
  ]
105
105
  tiles : [Tile] = [
106
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
107
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
108
- { id: "t-0-2", x: 0, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
109
- { id: "t-0-3", x: 0, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
110
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
111
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
112
- { id: "t-1-2", x: 1, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
113
- { id: "t-1-3", x: 1, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
114
- { id: "t-2-0", x: 2, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
115
- { id: "t-2-1", x: 2, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
116
- { id: "t-2-2", x: 2, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
117
- { id: "t-2-3", x: 2, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
118
- { id: "t-3-0", x: 3, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
119
- { id: "t-3-1", x: 3, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
120
- { id: "t-3-2", x: 3, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
121
- { id: "t-3-3", x: 3, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
106
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
107
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
108
+ { id: "t-0-2", x: 0, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
109
+ { id: "t-0-3", x: 0, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
110
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
111
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
112
+ { id: "t-1-2", x: 1, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
113
+ { id: "t-1-3", x: 1, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
114
+ { id: "t-2-0", x: 2, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
115
+ { id: "t-2-1", x: 2, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
116
+ { id: "t-2-2", x: 2, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
117
+ { id: "t-2-3", x: 2, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
118
+ { id: "t-3-0", x: 3, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
119
+ { id: "t-3-1", x: 3, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
120
+ { id: "t-3-2", x: 3, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
121
+ { id: "t-3-3", x: 3, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
122
122
  ]
123
123
  movesLeft : number = 0
124
124
  features : [Feature] = []
@@ -138,25 +138,25 @@ orbital ObjectiveBoard3DOrbital {
138
138
  gridHeight: 4
139
139
  moveBudget: 45
140
140
  units: [
141
- { id: "hero", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "hero", name: "Hero", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
141
+ { id: "hero", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "hero", name: "Hero", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
142
142
  ]
143
143
  tiles: [
144
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
145
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
146
- { id: "t-0-2", x: 0, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
147
- { id: "t-0-3", x: 0, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
148
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
149
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
150
- { id: "t-1-2", x: 1, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
151
- { id: "t-1-3", x: 1, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
152
- { id: "t-2-0", x: 2, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
153
- { id: "t-2-1", x: 2, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
154
- { id: "t-2-2", x: 2, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
155
- { id: "t-2-3", x: 2, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
156
- { id: "t-3-0", x: 3, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
157
- { id: "t-3-1", x: 3, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
158
- { id: "t-3-2", x: 3, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
159
- { id: "t-3-3", x: 3, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
144
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
145
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
146
+ { id: "t-0-2", x: 0, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
147
+ { id: "t-0-3", x: 0, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
148
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
149
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
150
+ { id: "t-1-2", x: 1, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
151
+ { id: "t-1-3", x: 1, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
152
+ { id: "t-2-0", x: 2, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
153
+ { id: "t-2-1", x: 2, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
154
+ { id: "t-2-2", x: 2, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
155
+ { id: "t-2-3", x: 2, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
156
+ { id: "t-3-0", x: 3, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
157
+ { id: "t-3-1", x: 3, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
158
+ { id: "t-3-2", x: 3, y: 2, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
159
+ { id: "t-3-3", x: 3, y: 3, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
160
160
  ]
161
161
  }
162
162
  }
@@ -99,13 +99,13 @@ orbital SurvivalBoard3DOrbital {
99
99
  entity GameState [runtime, shared] {
100
100
  id : string!
101
101
  units : [Unit] = [
102
- { id: "survivor", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 1, maxHealth: 1, unitType: "survivor", name: "Survivor", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
102
+ { id: "survivor", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 1, maxHealth: 1, unitType: "survivor", name: "Survivor", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
103
103
  ]
104
104
  tiles : [Tile] = [
105
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
106
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
107
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
108
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
105
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
106
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
107
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
108
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
109
109
  ]
110
110
  movesLeft : number = 0
111
111
  features : [Feature] = []
@@ -125,13 +125,13 @@ orbital SurvivalBoard3DOrbital {
125
125
  gridHeight: 2
126
126
  moveBudget: 100
127
127
  units: [
128
- { id: "survivor", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 1, maxHealth: 1, unitType: "survivor", name: "Survivor", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
128
+ { id: "survivor", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "player", health: 1, maxHealth: 1, unitType: "survivor", name: "Survivor", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } }
129
129
  ]
130
130
  tiles: [
131
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
132
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
133
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
134
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
131
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
132
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
133
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
134
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", variant: "", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
135
135
  ]
136
136
  }
137
137
  }
@@ -111,15 +111,15 @@ orbital TacticsBoard2DOrbital {
111
111
  entity GameState [runtime, shared] {
112
112
  id : string!
113
113
  units : [Unit] = [
114
- { id: "p1", position: { x: 0, y: 0 }, x: 0, y: 0, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "unit", name: "Player", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } },
115
- { id: "e1", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "enemy", health: 2, maxHealth: 2, unitType: "unit", name: "Enemy", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "red_body_square.png", role: "enemy", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "enemy-unit", thumbnailUrl: "" } }
114
+ { id: "p1", position: { x: 0, y: 0 }, x: 0, y: 0, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "unit", name: "Player", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } },
115
+ { id: "e1", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "enemy", health: 2, maxHealth: 2, unitType: "unit", name: "Enemy", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "enemy", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "enemy-unit", thumbnailUrl: "" } }
116
116
  ]
117
117
  fx : [Fx] = []
118
118
  tiles : [Tile] = [
119
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
120
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
121
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
122
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
119
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
120
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
121
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
122
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
123
123
  ]
124
124
  result : string = "none"
125
125
  selectedUnitId : string = ""
@@ -148,14 +148,14 @@ orbital TacticsBoard2DOrbital {
148
148
  gridHeight: 2
149
149
  attackDamage: 3
150
150
  units: [
151
- { id: "p1", position: { x: 0, y: 0 }, x: 0, y: 0, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "unit", name: "Player", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } },
152
- { id: "e1", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "enemy", health: 2, maxHealth: 2, unitType: "unit", name: "Enemy", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "red_body_square.png", role: "enemy", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "enemy-unit", thumbnailUrl: "" } }
151
+ { id: "p1", position: { x: 0, y: 0 }, x: 0, y: 0, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "unit", name: "Player", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } },
152
+ { id: "e1", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "enemy", health: 2, maxHealth: 2, unitType: "unit", name: "Enemy", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "enemy", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "enemy-unit", thumbnailUrl: "" } }
153
153
  ]
154
154
  tiles: [
155
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
156
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
157
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
158
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
155
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
156
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
157
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
158
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, terrainSprite: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
159
159
  ]
160
160
  }
161
161
  }
@@ -128,15 +128,15 @@ orbital TacticsBoard3DOrbital {
128
128
  entity GameState [runtime, shared] {
129
129
  id : string!
130
130
  units : [Unit] = [
131
- { id: "p1", position: { x: 0, y: 0 }, x: 0, y: 0, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "unit", name: "Player", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } },
132
- { id: "e1", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "enemy", health: 2, maxHealth: 2, unitType: "unit", name: "Enemy", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "red_body_square.png", role: "enemy", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "enemy-unit", thumbnailUrl: "" } }
131
+ { id: "p1", position: { x: 0, y: 0 }, x: 0, y: 0, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "unit", name: "Player", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } },
132
+ { id: "e1", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "enemy", health: 2, maxHealth: 2, unitType: "unit", name: "Enemy", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "enemy", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "enemy-unit", thumbnailUrl: "" } }
133
133
  ]
134
134
  fx : [Fx] = []
135
135
  tiles : [Tile] = [
136
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
137
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
138
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
139
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
136
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
137
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
138
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
139
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
140
140
  ]
141
141
  result : string = "none"
142
142
  selectedUnitId : string = ""
@@ -154,14 +154,14 @@ orbital TacticsBoard3DOrbital {
154
154
  gridHeight: 2
155
155
  attackDamage: 3
156
156
  units: [
157
- { id: "p1", position: { x: 0, y: 0 }, x: 0, y: 0, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "unit", name: "Player", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "blue_body_square.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } },
158
- { id: "e1", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "enemy", health: 2, maxHealth: 2, unitType: "unit", name: "Enemy", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.png", atlas: "https://almadar-kflow-assets.web.app/shared/_shared/kenney-shape-characters/units/spritesheet_default.json", sprite: "red_body_square.png", role: "enemy", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "enemy-unit", thumbnailUrl: "" } }
157
+ { id: "p1", position: { x: 0, y: 0 }, x: 0, y: 0, z: 0, team: "player", health: 3, maxHealth: 3, unitType: "unit", name: "Player", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "player", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "player-unit", thumbnailUrl: "" } },
158
+ { id: "e1", position: { x: 1, y: 1 }, x: 1, y: 1, z: 0, team: "enemy", health: 2, maxHealth: 2, unitType: "unit", name: "Enemy", modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/units/soldier/soldier.png", role: "enemy", category: "unit", animations: ["idle"], style: "vector", dimension: "2d", aspect: "1:1", name: "enemy-unit", thumbnailUrl: "" } }
159
159
  ]
160
160
  tiles: [
161
- { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
162
- { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
163
- { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
164
- { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.png", atlas: "https://almadar-kflow-assets.web.app/shared/ui-boardgame-board/kenney-puzzle-assets-2/terrain/spritesheet_tilesBlue.json", sprite: "tileBlue_01.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
161
+ { id: "t-0-0", x: 0, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
162
+ { id: "t-0-1", x: 0, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
163
+ { id: "t-1-0", x: 1, y: 0, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } },
164
+ { id: "t-1-1", x: 1, y: 1, z: 0, terrain: "grass", passable: true, modelUrl: { url: "https://almadar-kflow-assets.web.app/shared/ui-tactics-demo-2d/default/terrain/grass/grass.png", role: "tile", category: "terrain", animations: ["static"], style: "vector", dimension: "2d", aspect: "1:1", name: "grass", thumbnailUrl: "" } }
165
165
  ]
166
166
  }
167
167
  }