@zylem/game-lib 0.3.17 → 0.4.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 (282) hide show
  1. package/README.md +2 -2
  2. package/dist/.vite/manifest.json +64 -58
  3. package/dist/api/actions.d.ts +5 -0
  4. package/dist/api/actions.d.ts.map +1 -0
  5. package/dist/api/behaviors.d.ts +4 -0
  6. package/dist/api/behaviors.d.ts.map +1 -0
  7. package/dist/api/camera.d.ts +4 -0
  8. package/dist/api/camera.d.ts.map +1 -0
  9. package/dist/api/core.d.ts +6 -0
  10. package/dist/api/core.d.ts.map +1 -0
  11. package/dist/api/entities.d.ts +9 -0
  12. package/dist/api/entities.d.ts.map +1 -0
  13. package/dist/api/main.d.ts +32 -0
  14. package/dist/api/main.d.ts.map +1 -0
  15. package/dist/api/stage.d.ts +7 -0
  16. package/dist/api/stage.d.ts.map +1 -0
  17. package/dist/core.js +4 -4
  18. package/dist/lib/actions/behaviors/actions.d.ts +1 -0
  19. package/dist/lib/actions/behaviors/actions.d.ts.map +1 -0
  20. package/dist/lib/actions/behaviors/behavior.d.ts +1 -0
  21. package/dist/lib/actions/behaviors/behavior.d.ts.map +1 -0
  22. package/dist/lib/actions/behaviors/boundaries/boundary.d.ts +1 -0
  23. package/dist/lib/actions/behaviors/boundaries/boundary.d.ts.map +1 -0
  24. package/dist/lib/actions/behaviors/character-controller.d.ts +1 -0
  25. package/dist/lib/actions/behaviors/character-controller.d.ts.map +1 -0
  26. package/dist/lib/actions/behaviors/debug/debug-collision.d.ts +1 -0
  27. package/dist/lib/actions/behaviors/debug/debug-collision.d.ts.map +1 -0
  28. package/dist/lib/actions/behaviors/debug/debug-update.d.ts +1 -0
  29. package/dist/lib/actions/behaviors/debug/debug-update.d.ts.map +1 -0
  30. package/dist/lib/actions/behaviors/debug/debug.d.ts +1 -0
  31. package/dist/lib/actions/behaviors/debug/debug.d.ts.map +1 -0
  32. package/dist/lib/actions/behaviors/movement/movement-sequence-2d.d.ts +1 -0
  33. package/dist/lib/actions/behaviors/movement/movement-sequence-2d.d.ts.map +1 -0
  34. package/dist/lib/actions/behaviors/ricochet/ricochet-2d-collision.d.ts +1 -0
  35. package/dist/lib/actions/behaviors/ricochet/ricochet-2d-collision.d.ts.map +1 -0
  36. package/dist/lib/actions/behaviors/ricochet/ricochet-2d-in-bounds.d.ts +1 -0
  37. package/dist/lib/actions/behaviors/ricochet/ricochet-2d-in-bounds.d.ts.map +1 -0
  38. package/dist/lib/actions/behaviors/ricochet/ricochet.d.ts +1 -0
  39. package/dist/lib/actions/behaviors/ricochet/ricochet.d.ts.map +1 -0
  40. package/dist/lib/actions/behaviors/zylem-behavior.d.ts +1 -0
  41. package/dist/lib/actions/behaviors/zylem-behavior.d.ts.map +1 -0
  42. package/dist/lib/actions/capabilities/moveable.d.ts +1 -0
  43. package/dist/lib/actions/capabilities/moveable.d.ts.map +1 -0
  44. package/dist/lib/actions/capabilities/rotatable.d.ts +1 -0
  45. package/dist/lib/actions/capabilities/rotatable.d.ts.map +1 -0
  46. package/dist/lib/actions/capabilities/transformable.d.ts +1 -0
  47. package/dist/lib/actions/capabilities/transformable.d.ts.map +1 -0
  48. package/dist/lib/actions/global-change.d.ts +1 -0
  49. package/dist/lib/actions/global-change.d.ts.map +1 -0
  50. package/dist/lib/camera/camera.d.ts +1 -0
  51. package/dist/lib/camera/camera.d.ts.map +1 -0
  52. package/dist/lib/camera/fixed-2d.d.ts +1 -0
  53. package/dist/lib/camera/fixed-2d.d.ts.map +1 -0
  54. package/dist/lib/camera/perspective.d.ts +1 -0
  55. package/dist/lib/camera/perspective.d.ts.map +1 -0
  56. package/dist/lib/camera/third-person.d.ts +1 -0
  57. package/dist/lib/camera/third-person.d.ts.map +1 -0
  58. package/dist/lib/camera/zylem-camera.d.ts +27 -0
  59. package/dist/lib/camera/zylem-camera.d.ts.map +1 -0
  60. package/dist/lib/camera/zylem-camera.js +100 -37
  61. package/dist/lib/collision/collision-builder.d.ts +1 -0
  62. package/dist/lib/collision/collision-builder.d.ts.map +1 -0
  63. package/dist/lib/collision/collision-delegate.d.ts +1 -0
  64. package/dist/lib/collision/collision-delegate.d.ts.map +1 -0
  65. package/dist/lib/collision/collision-group.d.ts +1 -0
  66. package/dist/lib/collision/collision-group.d.ts.map +1 -0
  67. package/dist/lib/collision/collision-mask.d.ts +1 -0
  68. package/dist/lib/collision/collision-mask.d.ts.map +1 -0
  69. package/dist/lib/collision/collision.d.ts +1 -0
  70. package/dist/lib/collision/collision.d.ts.map +1 -0
  71. package/dist/lib/collision/utils.d.ts +1 -0
  72. package/dist/lib/collision/utils.d.ts.map +1 -0
  73. package/dist/lib/collision/world.d.ts +1 -0
  74. package/dist/lib/collision/world.d.ts.map +1 -0
  75. package/dist/lib/core/asset-manager.d.ts +1 -0
  76. package/dist/lib/core/asset-manager.d.ts.map +1 -0
  77. package/dist/lib/core/base-node-life-cycle.d.ts +1 -0
  78. package/dist/lib/core/base-node-life-cycle.d.ts.map +1 -0
  79. package/dist/lib/core/base-node.d.ts +1 -0
  80. package/dist/lib/core/base-node.d.ts.map +1 -0
  81. package/dist/lib/core/base-node.js +1 -1
  82. package/dist/lib/core/entity-asset-loader.d.ts +1 -0
  83. package/dist/lib/core/entity-asset-loader.d.ts.map +1 -0
  84. package/dist/lib/core/errors.d.ts +1 -0
  85. package/dist/lib/core/errors.d.ts.map +1 -0
  86. package/dist/lib/core/flags.d.ts +1 -0
  87. package/dist/lib/core/flags.d.ts.map +1 -0
  88. package/dist/lib/core/index.d.ts +1 -0
  89. package/dist/lib/core/index.d.ts.map +1 -0
  90. package/dist/lib/core/lazy-loader.d.ts +1 -0
  91. package/dist/lib/core/lazy-loader.d.ts.map +1 -0
  92. package/dist/lib/core/lifecycle-base.d.ts +1 -0
  93. package/dist/lib/core/lifecycle-base.d.ts.map +1 -0
  94. package/dist/lib/core/preset-shader.d.ts +1 -0
  95. package/dist/lib/core/preset-shader.d.ts.map +1 -0
  96. package/dist/lib/core/three-addons/Timer.d.ts +1 -0
  97. package/dist/lib/core/three-addons/Timer.d.ts.map +1 -0
  98. package/dist/lib/core/utility/nodes.d.ts +5 -3
  99. package/dist/lib/core/utility/nodes.d.ts.map +1 -0
  100. package/dist/lib/core/utility/nodes.js +20 -16
  101. package/dist/lib/core/utility/strings.d.ts +1 -0
  102. package/dist/lib/core/utility/strings.d.ts.map +1 -0
  103. package/dist/lib/core/utility/vector.d.ts +1 -0
  104. package/dist/lib/core/utility/vector.d.ts.map +1 -0
  105. package/dist/lib/core/vector.d.ts +1 -0
  106. package/dist/lib/core/vector.d.ts.map +1 -0
  107. package/dist/lib/core/vessel.d.ts +1 -0
  108. package/dist/lib/core/vessel.d.ts.map +1 -0
  109. package/dist/lib/debug/console/console-state.d.ts +1 -0
  110. package/dist/lib/debug/console/console-state.d.ts.map +1 -0
  111. package/dist/lib/debug/console/console-store.d.ts +1 -0
  112. package/dist/lib/debug/console/console-store.d.ts.map +1 -0
  113. package/dist/lib/debug/debug-state.d.ts +1 -0
  114. package/dist/lib/debug/debug-state.d.ts.map +1 -0
  115. package/dist/lib/debug/debug-store.d.ts +1 -0
  116. package/dist/lib/debug/debug-store.d.ts.map +1 -0
  117. package/dist/lib/debug/state-based-debug-loader.d.ts +1 -0
  118. package/dist/lib/debug/state-based-debug-loader.d.ts.map +1 -0
  119. package/dist/lib/device/aspect-ratio.d.ts +1 -0
  120. package/dist/lib/device/aspect-ratio.d.ts.map +1 -0
  121. package/dist/lib/device/desktop.d.ts +1 -0
  122. package/dist/lib/device/desktop.d.ts.map +1 -0
  123. package/dist/lib/device/mobile.d.ts +1 -0
  124. package/dist/lib/device/mobile.d.ts.map +1 -0
  125. package/dist/lib/device/tablet.d.ts +1 -0
  126. package/dist/lib/device/tablet.d.ts.map +1 -0
  127. package/dist/lib/entities/actor.d.ts +1 -0
  128. package/dist/lib/entities/actor.d.ts.map +1 -0
  129. package/dist/lib/entities/box.d.ts +1 -0
  130. package/dist/lib/entities/box.d.ts.map +1 -0
  131. package/dist/lib/entities/builder.d.ts +1 -0
  132. package/dist/lib/entities/builder.d.ts.map +1 -0
  133. package/dist/lib/entities/create.d.ts +1 -0
  134. package/dist/lib/entities/create.d.ts.map +1 -0
  135. package/dist/lib/entities/delegates/animation.d.ts +1 -0
  136. package/dist/lib/entities/delegates/animation.d.ts.map +1 -0
  137. package/dist/lib/entities/delegates/debug.d.ts +1 -0
  138. package/dist/lib/entities/delegates/debug.d.ts.map +1 -0
  139. package/dist/lib/entities/delegates/loader.d.ts +1 -0
  140. package/dist/lib/entities/delegates/loader.d.ts.map +1 -0
  141. package/dist/lib/entities/destroy.d.ts +1 -0
  142. package/dist/lib/entities/destroy.d.ts.map +1 -0
  143. package/dist/lib/entities/entity.d.ts +1 -0
  144. package/dist/lib/entities/entity.d.ts.map +1 -0
  145. package/dist/lib/entities/index.d.ts +1 -0
  146. package/dist/lib/entities/index.d.ts.map +1 -0
  147. package/dist/lib/entities/plane.d.ts +1 -0
  148. package/dist/lib/entities/plane.d.ts.map +1 -0
  149. package/dist/lib/entities/rect.d.ts +1 -0
  150. package/dist/lib/entities/rect.d.ts.map +1 -0
  151. package/dist/lib/entities/sphere.d.ts +1 -0
  152. package/dist/lib/entities/sphere.d.ts.map +1 -0
  153. package/dist/lib/entities/sprite.d.ts +1 -0
  154. package/dist/lib/entities/sprite.d.ts.map +1 -0
  155. package/dist/lib/entities/text.d.ts +8 -0
  156. package/dist/lib/entities/text.d.ts.map +1 -0
  157. package/dist/lib/entities/text.js +77 -48
  158. package/dist/lib/entities/zone.d.ts +1 -0
  159. package/dist/lib/entities/zone.d.ts.map +1 -0
  160. package/dist/lib/game/game-blueprint.d.ts +5 -11
  161. package/dist/lib/game/game-blueprint.d.ts.map +1 -0
  162. package/dist/lib/game/game-canvas.d.ts +1 -0
  163. package/dist/lib/game/game-canvas.d.ts.map +1 -0
  164. package/dist/lib/game/game-canvas.js +9 -9
  165. package/dist/lib/game/game-config.d.ts +17 -1
  166. package/dist/lib/game/game-config.d.ts.map +1 -0
  167. package/dist/lib/game/game-config.js +50 -24
  168. package/dist/lib/game/game-default.d.ts +5 -4
  169. package/dist/lib/game/game-default.d.ts.map +1 -0
  170. package/dist/lib/game/game-interfaces.d.ts +3 -2
  171. package/dist/lib/game/game-interfaces.d.ts.map +1 -0
  172. package/dist/lib/game/game-retro-resolutions.d.ts +24 -0
  173. package/dist/lib/game/game-retro-resolutions.d.ts.map +1 -0
  174. package/dist/lib/game/game-retro-resolutions.js +81 -0
  175. package/dist/lib/game/game-state.d.ts +6 -5
  176. package/dist/lib/game/game-state.d.ts.map +1 -0
  177. package/dist/lib/game/game.d.ts +7 -8
  178. package/dist/lib/game/game.d.ts.map +1 -0
  179. package/dist/lib/game/game.js +46 -70
  180. package/dist/lib/game/zylem-game.d.ts +4 -3
  181. package/dist/lib/game/zylem-game.d.ts.map +1 -0
  182. package/dist/lib/game/zylem-game.js +39 -31
  183. package/dist/lib/graphics/geometries/XZPlaneGeometry.d.ts +1 -0
  184. package/dist/lib/graphics/geometries/XZPlaneGeometry.d.ts.map +1 -0
  185. package/dist/lib/graphics/material.d.ts +1 -0
  186. package/dist/lib/graphics/material.d.ts.map +1 -0
  187. package/dist/lib/graphics/mesh.d.ts +1 -0
  188. package/dist/lib/graphics/mesh.d.ts.map +1 -0
  189. package/dist/lib/graphics/render-pass.d.ts +1 -0
  190. package/dist/lib/graphics/render-pass.d.ts.map +1 -0
  191. package/dist/lib/graphics/zylem-scene.d.ts +1 -0
  192. package/dist/lib/graphics/zylem-scene.d.ts.map +1 -0
  193. package/dist/lib/input/gamepad-provider.d.ts +1 -0
  194. package/dist/lib/input/gamepad-provider.d.ts.map +1 -0
  195. package/dist/lib/input/input-manager.d.ts +1 -0
  196. package/dist/lib/input/input-manager.d.ts.map +1 -0
  197. package/dist/lib/input/input-provider.d.ts +1 -0
  198. package/dist/lib/input/input-provider.d.ts.map +1 -0
  199. package/dist/lib/input/input.d.ts +1 -0
  200. package/dist/lib/input/input.d.ts.map +1 -0
  201. package/dist/lib/input/keyboard-provider.d.ts +1 -0
  202. package/dist/lib/input/keyboard-provider.d.ts.map +1 -0
  203. package/dist/lib/interfaces/entity.d.ts +1 -0
  204. package/dist/lib/interfaces/entity.d.ts.map +1 -0
  205. package/dist/lib/sounds/index.d.ts +1 -0
  206. package/dist/lib/sounds/index.d.ts.map +1 -0
  207. package/dist/lib/sounds/ping-pong-sound.d.ts +1 -0
  208. package/dist/lib/sounds/ping-pong-sound.d.ts.map +1 -0
  209. package/dist/lib/sounds/ricochet-sound.d.ts +1 -0
  210. package/dist/lib/sounds/ricochet-sound.d.ts.map +1 -0
  211. package/dist/lib/stage/debug-entity-cursor.d.ts +1 -0
  212. package/dist/lib/stage/debug-entity-cursor.d.ts.map +1 -0
  213. package/dist/lib/stage/entity-spawner.d.ts +1 -0
  214. package/dist/lib/stage/entity-spawner.d.ts.map +1 -0
  215. package/dist/lib/stage/stage-blueprint.d.ts +1 -0
  216. package/dist/lib/stage/stage-blueprint.d.ts.map +1 -0
  217. package/dist/lib/stage/stage-camera-debug-delegate.d.ts +14 -0
  218. package/dist/lib/stage/stage-camera-debug-delegate.d.ts.map +1 -0
  219. package/dist/lib/stage/stage-debug-delegate.d.ts +1 -0
  220. package/dist/lib/stage/stage-debug-delegate.d.ts.map +1 -0
  221. package/dist/lib/stage/stage-default.d.ts +1 -0
  222. package/dist/lib/stage/stage-default.d.ts.map +1 -0
  223. package/dist/lib/stage/stage-state.d.ts +1 -0
  224. package/dist/lib/stage/stage-state.d.ts.map +1 -0
  225. package/dist/lib/stage/stage.d.ts +2 -1
  226. package/dist/lib/stage/stage.d.ts.map +1 -0
  227. package/dist/lib/stage/stage.js +27 -27
  228. package/dist/lib/stage/zylem-stage.d.ts +4 -1
  229. package/dist/lib/stage/zylem-stage.d.ts.map +1 -0
  230. package/dist/lib/stage/zylem-stage.js +25 -24
  231. package/dist/lib/systems/test-system.d.ts +1 -0
  232. package/dist/lib/systems/test-system.d.ts.map +1 -0
  233. package/dist/lib/systems/transformable.system.d.ts +1 -0
  234. package/dist/lib/systems/transformable.system.d.ts.map +1 -0
  235. package/dist/lib/types/entity-types.d.ts +1 -0
  236. package/dist/lib/types/entity-types.d.ts.map +1 -0
  237. package/dist/lib/types/index.d.ts +1 -0
  238. package/dist/lib/types/index.d.ts.map +1 -0
  239. package/dist/lib/types/stage-types.d.ts +1 -0
  240. package/dist/lib/types/stage-types.d.ts.map +1 -0
  241. package/dist/lib/ui/Debug.d.ts +1 -0
  242. package/dist/lib/ui/Debug.d.ts.map +1 -0
  243. package/dist/lib/ui/console/Console.d.ts +1 -0
  244. package/dist/lib/ui/console/Console.d.ts.map +1 -0
  245. package/dist/lib/ui/debug-panel/AccordionMenu.d.ts +1 -0
  246. package/dist/lib/ui/debug-panel/AccordionMenu.d.ts.map +1 -0
  247. package/dist/lib/ui/debug-panel/Menu.d.ts +1 -0
  248. package/dist/lib/ui/debug-panel/Menu.d.ts.map +1 -0
  249. package/dist/lib/ui/debug-panel/sections/EntitiesSection.d.ts +1 -0
  250. package/dist/lib/ui/debug-panel/sections/EntitiesSection.d.ts.map +1 -0
  251. package/dist/lib/ui/debug-panel/sections/GameSection.d.ts +1 -0
  252. package/dist/lib/ui/debug-panel/sections/GameSection.d.ts.map +1 -0
  253. package/dist/lib/ui/debug-panel/sections/StagesSection.d.ts +1 -0
  254. package/dist/lib/ui/debug-panel/sections/StagesSection.d.ts.map +1 -0
  255. package/dist/lib/ui/debug-panel/sections/all.d.ts +1 -0
  256. package/dist/lib/ui/debug-panel/sections/all.d.ts.map +1 -0
  257. package/dist/lib/ui/toolbar/Toolbar.d.ts +1 -0
  258. package/dist/lib/ui/toolbar/Toolbar.d.ts.map +1 -0
  259. package/dist/main.js +10 -10
  260. package/dist/tests/unit/collision/collision.spec.d.ts +2 -0
  261. package/dist/tests/unit/collision/collision.spec.d.ts.map +1 -0
  262. package/dist/tests/unit/core/game.spec.d.ts +2 -0
  263. package/dist/tests/unit/core/game.spec.d.ts.map +1 -0
  264. package/dist/tests/unit/core/stage.spec.d.ts +2 -0
  265. package/dist/tests/unit/core/stage.spec.d.ts.map +1 -0
  266. package/dist/tests/unit/core/vessel.spec.d.ts +2 -0
  267. package/dist/tests/unit/core/vessel.spec.d.ts.map +1 -0
  268. package/dist/tests/unit/stage/stage-blueprint.spec.d.ts +2 -0
  269. package/dist/tests/unit/stage/stage-blueprint.spec.d.ts.map +1 -0
  270. package/package.json +11 -9
  271. package/dist/actions.d.ts +0 -4
  272. package/dist/behaviors.d.ts +0 -3
  273. package/dist/camera.d.ts +0 -3
  274. package/dist/core.d.ts +0 -5
  275. package/dist/entities.d.ts +0 -8
  276. package/dist/main.d.ts +0 -31
  277. package/dist/stage.d.ts +0 -6
  278. package/dist/tests/collision/collision.spec.d.ts +0 -1
  279. package/dist/tests/core/game.spec.d.ts +0 -1
  280. package/dist/tests/core/stage.spec.d.ts +0 -1
  281. package/dist/tests/core/vessel.spec.d.ts +0 -1
  282. package/dist/tests/stage/stage-blueprint.spec.d.ts +0 -1
@@ -1,12 +1,12 @@
1
- import { state as o, getGlobalState as n, setGlobalState as l } from "./game-state.js";
2
- import { setDebugFlag as u, isPaused as m } from "../debug/debug-state.js";
1
+ import { state as o, getGlobalState as r, setGlobalState as d } from "./game-state.js";
2
+ import { setDebugFlag as h, isPaused as m } from "../debug/debug-state.js";
3
3
  import { InputManager as c } from "../input/input-manager.js";
4
- import { Timer as h } from "../core/three-addons/Timer.js";
5
- import { resolveGameConfig as d } from "./game-config.js";
6
- import { GameCanvas as g } from "./game-canvas.js";
7
- import { subscribe as f } from "valtio/vanilla";
8
- import p from "stats.js";
9
- class r {
4
+ import { Timer as p } from "../core/three-addons/Timer.js";
5
+ import { resolveGameConfig as g } from "./game-config.js";
6
+ import { GameCanvas as f } from "./game-canvas.js";
7
+ import { subscribe as S } from "valtio/vanilla";
8
+ import b from "stats.js";
9
+ class n {
10
10
  id;
11
11
  initialGlobals = {};
12
12
  customSetup = null;
@@ -28,15 +28,15 @@ class r {
28
28
  resolvedConfig = null;
29
29
  gameCanvas = null;
30
30
  static FRAME_LIMIT = 120;
31
- static FRAME_DURATION = 1e3 / r.FRAME_LIMIT;
31
+ static FRAME_DURATION = 1e3 / n.FRAME_LIMIT;
32
32
  static MAX_DELTA_SECONDS = 1 / 30;
33
33
  constructor(t, e) {
34
- this.wrapperRef = e, this.inputManager = new c(t.input), this.timer = new h(), this.timer.connect(document);
35
- const a = d(t);
34
+ this.wrapperRef = e, this.inputManager = new c(t.input), this.timer = new p(), this.timer.connect(document);
35
+ const a = g(t);
36
36
  this.id = a.id, this.stages = a.stages || [], this.container = a.container, this.canvas = a.canvas ?? null, this.resolvedConfig = a, this.loadGameCanvas(a), this.loadDebugOptions(t), this.setGlobals(t);
37
37
  }
38
38
  loadGameCanvas(t) {
39
- this.gameCanvas = new g({
39
+ this.gameCanvas = new f({
40
40
  id: t.id,
41
41
  container: t.container,
42
42
  containerId: t.containerId,
@@ -47,14 +47,22 @@ class r {
47
47
  }), this.gameCanvas.applyBodyBackground(), this.gameCanvas.mountCanvas(), this.gameCanvas.centerIfFullscreen();
48
48
  }
49
49
  loadDebugOptions(t) {
50
- u(!!t.debug), t.debug && (this.statsRef = new p(), this.statsRef.showPanel(0), this.statsRef.dom.style.position = "absolute", this.statsRef.dom.style.bottom = "0", this.statsRef.dom.style.right = "0", this.statsRef.dom.style.top = "auto", this.statsRef.dom.style.left = "auto", document.body.appendChild(this.statsRef.dom));
50
+ h(!!t.debug), t.debug && (this.statsRef = new b(), this.statsRef.showPanel(0), this.statsRef.dom.style.position = "absolute", this.statsRef.dom.style.bottom = "0", this.statsRef.dom.style.right = "0", this.statsRef.dom.style.top = "auto", this.statsRef.dom.style.left = "auto", document.body.appendChild(this.statsRef.dom));
51
51
  }
52
52
  async loadStage(t) {
53
53
  this.unloadCurrentStage();
54
54
  const e = t.options[0];
55
- if (await t.load(this.id, e?.camera), this.stageMap.set(t.stageRef.uuid, t), this.currentStageId = t.stageRef.uuid, this.defaultCamera = t.stageRef.cameraRef, this.container && this.defaultCamera) {
56
- const a = this.defaultCamera.getDomElement();
57
- this.gameCanvas?.mountRenderer(a, (s, i) => this.defaultCamera?.resize(s, i));
55
+ if (await t.load(this.id, e?.camera), this.stageMap.set(t.wrappedStage.uuid, t), this.currentStageId = t.wrappedStage.uuid, this.defaultCamera = t.wrappedStage.cameraRef, this.container && this.defaultCamera) {
56
+ const a = this.defaultCamera.getDomElement(), s = this.resolvedConfig?.internalResolution;
57
+ this.gameCanvas?.mountRenderer(a, (i, l) => {
58
+ if (this.defaultCamera)
59
+ if (s)
60
+ this.defaultCamera.setPixelRatio(1), this.defaultCamera.resize(s.width, s.height);
61
+ else {
62
+ const u = window.devicePixelRatio || 1;
63
+ this.defaultCamera.setPixelRatio(u), this.defaultCamera.resize(i, l);
64
+ }
65
+ });
58
66
  }
59
67
  }
60
68
  unloadCurrentStage() {
@@ -62,10 +70,10 @@ class r {
62
70
  return;
63
71
  const t = this.getStage(this.currentStageId);
64
72
  if (t) {
65
- if (t?.stageRef)
73
+ if (t?.wrappedStage)
66
74
  try {
67
- t.stageRef.nodeDestroy({
68
- me: t.stageRef,
75
+ t.wrappedStage.nodeDestroy({
76
+ me: t.wrappedStage,
69
77
  globals: o.globals
70
78
  });
71
79
  } catch (e) {
@@ -82,7 +90,7 @@ class r {
82
90
  }
83
91
  }
84
92
  params() {
85
- const t = this.currentStage(), e = this.timer.getDelta(), a = this.inputManager.getInputs(e), s = t?.stageRef?.cameraRef || this.defaultCamera;
93
+ const t = this.currentStage(), e = this.timer.getDelta(), a = this.inputManager.getInputs(e), s = t?.wrappedStage?.cameraRef || this.defaultCamera;
86
94
  return {
87
95
  delta: e,
88
96
  inputs: a,
@@ -93,19 +101,19 @@ class r {
93
101
  }
94
102
  start() {
95
103
  const t = this.currentStage(), e = this.params();
96
- t.start({ ...e, me: t.stageRef }), this.customSetup && this.customSetup(e), this.loop(0);
104
+ t.start({ ...e, me: t.wrappedStage }), this.customSetup && this.customSetup(e), this.loop(0);
97
105
  }
98
106
  loop(t) {
99
107
  if (this.statsRef && this.statsRef.begin(), !m()) {
100
108
  this.timer.update(t);
101
- const e = this.currentStage(), a = this.params(), s = Math.min(a.delta, r.MAX_DELTA_SECONDS), i = { ...a, delta: s };
102
- this.customUpdate && this.customUpdate(i), e && e.stageRef.nodeUpdate({ ...i, me: e.stageRef }), this.totalTime += i.delta, o.time = this.totalTime, this.previousTimeStamp = t;
109
+ const e = this.currentStage(), a = this.params(), s = Math.min(a.delta, n.MAX_DELTA_SECONDS), i = { ...a, delta: s };
110
+ this.customUpdate && this.customUpdate(i), e && e.wrappedStage.nodeUpdate({ ...i, me: e.wrappedStage }), this.totalTime += i.delta, o.time = this.totalTime, this.previousTimeStamp = t;
103
111
  }
104
112
  this.statsRef && this.statsRef.end(), this.outOfLoop(), requestAnimationFrame(this.loop.bind(this));
105
113
  }
106
114
  outOfLoop() {
107
115
  const t = this.currentStage();
108
- t && t.stageRef.outOfLoop();
116
+ t && t.wrappedStage.outOfLoop();
109
117
  }
110
118
  getStage(t) {
111
119
  return this.stageMap.get(t);
@@ -114,20 +122,20 @@ class r {
114
122
  return this.getStage(this.currentStageId);
115
123
  }
116
124
  getGlobal(t) {
117
- return n(t);
125
+ return r(t);
118
126
  }
119
127
  setGlobal(t, e) {
120
- l(t, e);
128
+ d(t, e);
121
129
  }
122
130
  onGlobalChange(t, e) {
123
- let a = n(t);
124
- f(o, () => {
125
- const s = n(t);
131
+ let a = r(t);
132
+ S(o, () => {
133
+ const s = r(t);
126
134
  s !== a && (a = s, e(s));
127
135
  });
128
136
  }
129
137
  }
130
138
  export {
131
- r as ZylemGame,
132
- r as default
139
+ n as ZylemGame,
140
+ n as default
133
141
  };
@@ -5,3 +5,4 @@ declare class XZPlaneGeometry extends BufferGeometry {
5
5
  static fromJSON(data: any): XZPlaneGeometry;
6
6
  }
7
7
  export { XZPlaneGeometry };
8
+ //# sourceMappingURL=XZPlaneGeometry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"XZPlaneGeometry.d.ts","sourceRoot":"","sources":["../../../../src/lib/graphics/geometries/XZPlaneGeometry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAA0B,MAAM,OAAO,CAAC;AAE/D,cAAM,eAAgB,SAAQ,cAAc;gBAE/B,KAAK,SAAI,EAAE,MAAM,SAAI,EAAE,aAAa,SAAI,EAAE,cAAc,SAAI;IAwExE,IAAI,CAAC,MAAM,KAAA;IASX,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAA;CAIpB;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -26,3 +26,4 @@ export declare class MaterialBuilder {
26
26
  setShader(customShader: ZylemShaderType): void;
27
27
  }
28
28
  export {};
29
+ //# sourceMappingURL=material.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"material.d.ts","sourceRoot":"","sources":["../../../src/lib/graphics/material.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,EACL,QAAQ,EAMR,OAAO,EAEP,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,SAAS,EAAmB,MAAM,yBAAyB,CAAC;AACrE,OAAkB,EAAqB,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAEtF,MAAM,WAAW,eAAe;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC;CACd;AAED,KAAK,gBAAgB,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE5C,UAAU,sBAAsB;IAC/B,WAAW,EAAE,gBAAgB,CAAC;IAC9B,QAAQ,EAAE,QAAQ,CAAC;CACnB;AAED,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAE7C,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC;AAExC,qBAAa,eAAe;IAC3B,MAAM,CAAC,gBAAgB,EAAE,GAAG,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAa;IAE3E,SAAS,EAAE,QAAQ,EAAE,CAAM;IAE3B,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,MAAM;IAmB7D,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,EAAE,UAAU,EAAE,MAAM;IAWjE,SAAS,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAK7B,UAAU,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI;IAKvC,UAAU,CAAC,WAAW,GAAE,WAAkB,EAAE,MAAM,GAAE,OAA2B;IAerF,QAAQ,CAAC,KAAK,EAAE,KAAK;IAWrB,SAAS,CAAC,YAAY,EAAE,eAAe;CAgBvC"}
@@ -16,3 +16,4 @@ export declare class MeshBuilder {
16
16
  _build(meshOptions: MeshBuilderOptions, geometry: BufferGeometry, materials: Material[]): Mesh;
17
17
  _postBuild(): void;
18
18
  }
19
+ //# sourceMappingURL=mesh.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mesh.d.ts","sourceRoot":"","sources":["../../../src/lib/graphics/mesh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;;;;;;;;;GAUG;AAEH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC;AAE1F,qBAAa,WAAW;IAEvB,MAAM,CAAC,WAAW,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI;IAY9F,UAAU,IAAI,IAAI;CAGlB"}
@@ -14,3 +14,4 @@ export default class RenderPass extends Pass {
14
14
  material(): THREE.ShaderMaterial;
15
15
  dispose(): void;
16
16
  }
17
+ //# sourceMappingURL=render-pass.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-pass.d.ts","sourceRoot":"","sources":["../../../src/lib/graphics/render-pass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAE3E,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,IAAI;IAC3C,MAAM,EAAE,cAAc,CAAC;IACvB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC;IAC1B,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;IACnB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;IACrB,eAAe,EAAE,iBAAiB,CAAC;IACnC,kBAAkB,EAAE,iBAAiB,CAAC;IACtC,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC;gBAEnB,UAAU,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM;IAa/E,MAAM,CACL,QAAQ,EAAE,aAAa,EACvB,WAAW,EAAE,iBAAiB;IA0B/B,QAAQ;IAqBR,OAAO;CAYP"}
@@ -47,3 +47,4 @@ export declare class ZylemScene implements Entity<ZylemScene> {
47
47
  debugScene(): void;
48
48
  }
49
49
  export {};
50
+ //# sourceMappingURL=zylem-scene.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zylem-scene.d.ts","sourceRoot":"","sources":["../../../src/lib/graphics/zylem-scene.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,EACL,KAAK,EAGL,QAAQ,EACR,OAAO,EAGP,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAG7D,UAAU,UAAU;IACnB,eAAe,EAAE,KAAK,GAAG,MAAM,CAAC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,qBAAa,UAAW,YAAW,MAAM,CAAC,UAAU,CAAC;IAC7C,IAAI,SAAW;IAEtB,MAAM,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACnC,KAAK,EAAG,KAAK,CAAC;IACd,WAAW,EAAG,WAAW,CAAC;IAC1B,gBAAgB,EAAE,WAAW,GAAG,IAAI,CAAQ;IAC5C,MAAM,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAa;IAClD,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC5E,QAAQ,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACjD,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;gBAElB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU;IAqB9D,KAAK;IAML,OAAO;IAmBP;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW;IAM7C;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,KAAK;IAmB1B;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAI5C;;OAEG;IACH,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAE,OAA8B;IAK9D;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC;IAQjC;;OAEG;IACH,UAAU;CAOV"}
@@ -11,3 +11,4 @@ export declare class GamepadProvider implements InputProvider {
11
11
  getName(): string;
12
12
  isConnected(): boolean;
13
13
  }
14
+ //# sourceMappingURL=gamepad-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gamepad-provider.d.ts","sourceRoot":"","sources":["../../../src/lib/input/gamepad-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAA4B,YAAY,EAAE,MAAM,SAAS,CAAC;AAEjE,qBAAa,eAAgB,YAAW,aAAa;IACpD,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,SAAS,CAAkB;IAEnC,OAAO,CAAC,YAAY,CAAmC;gBAE3C,YAAY,EAAE,MAAM;IAchC,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,iBAAiB;IAKzB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAgC9C,OAAO,IAAI,MAAM;IAIjB,WAAW,IAAI,OAAO;CAGtB"}
@@ -12,3 +12,4 @@ export declare class InputManager {
12
12
  mergeAnalogState(a: AnalogState | undefined, b: AnalogState | undefined): AnalogState;
13
13
  private mergeInputs;
14
14
  }
15
+ //# sourceMappingURL=input-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-manager.d.ts","sourceRoot":"","sources":["../../../src/lib/input/input-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAgB,iBAAiB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAG5F,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG1D,qBAAa,YAAY;IACxB,OAAO,CAAC,QAAQ,CAAsD;IACtE,OAAO,CAAC,aAAa,CAAwB;IAC7C,OAAO,CAAC,cAAc,CAAwB;gBAElC,MAAM,CAAC,EAAE,eAAe;IAqCpC,gBAAgB,CAAC,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,aAAa;IAOzE,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAkBhC,gBAAgB,CAAC,CAAC,EAAE,WAAW,GAAG,SAAS,EAAE,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW;IAQrF,gBAAgB,CAAC,CAAC,EAAE,WAAW,GAAG,SAAS,EAAE,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW;IAOrF,OAAO,CAAC,WAAW;CA4BnB"}
@@ -4,3 +4,4 @@ export interface InputProvider {
4
4
  isConnected(): boolean;
5
5
  getName(): string;
6
6
  }
7
+ //# sourceMappingURL=input-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-provider.d.ts","sourceRoot":"","sources":["../../../src/lib/input/input-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/C,WAAW,IAAI,OAAO,CAAC;IACvB,OAAO,IAAI,MAAM,CAAC;CAClB"}
@@ -49,3 +49,4 @@ export interface InputHandler {
49
49
  onPress(button: ButtonName, callback: InputHandlerCallback): void;
50
50
  update(currentInputs: Inputs): void;
51
51
  }
52
+ //# sourceMappingURL=input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/lib/input/input.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9D,MAAM,MAAM,WAAW,GAAG,IAAI,iBAAiB,EAAE,CAAC;AAElD,MAAM,WAAW,WAAW;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,YAAY;IAC5B,YAAY,EAAE,iBAAiB,CAAC;IAChC,OAAO,EAAE;QACR,CAAC,EAAE,WAAW,CAAC;QACf,CAAC,EAAE,WAAW,CAAC;QACf,CAAC,EAAE,WAAW,CAAC;QACf,CAAC,EAAE,WAAW,CAAC;QACf,KAAK,EAAE,WAAW,CAAC;QACnB,MAAM,EAAE,WAAW,CAAC;QACpB,CAAC,EAAE,WAAW,CAAC;QACf,CAAC,EAAE,WAAW,CAAC;KACf,CAAC;IACF,UAAU,EAAE;QACX,EAAE,EAAE,WAAW,CAAC;QAChB,IAAI,EAAE,WAAW,CAAC;QAClB,IAAI,EAAE,WAAW,CAAC;QAClB,KAAK,EAAE,WAAW,CAAC;KACnB,CAAC;IACF,SAAS,EAAE;QACV,QAAQ,EAAE,WAAW,CAAC;QACtB,QAAQ,EAAE,WAAW,CAAC;KACtB,CAAC;IACF,IAAI,EAAE;QACL,UAAU,EAAE,WAAW,CAAC;QACxB,QAAQ,EAAE,WAAW,CAAC;KACtB,CAAC;CACF;AAED,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;AAEvD,MAAM,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,CAAC;AACvD,MAAM,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC;AAE9C,MAAM,WAAW,YAAY;IAC5B,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAClE,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC"}
@@ -18,3 +18,4 @@ export declare class KeyboardProvider implements InputProvider {
18
18
  private getAxisValue;
19
19
  isConnected(): boolean;
20
20
  }
21
+ //# sourceMappingURL=keyboard-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyboard-provider.d.ts","sourceRoot":"","sources":["../../../src/lib/input/keyboard-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAA4B,YAAY,EAAE,MAAM,SAAS,CAAC;AAEjE,qBAAa,gBAAiB,YAAW,aAAa;IACrD,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,kBAAkB,CAAiB;gBAE/B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE;QAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;KAAE;IAO1F,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,iBAAiB;IA8BzB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,kBAAkB;IAkD1B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA+B9C,OAAO,IAAI,MAAM;IAIjB,OAAO,CAAC,YAAY;IAIpB,WAAW,IAAI,OAAO;CAGtB"}
@@ -29,3 +29,4 @@ export type OptionalVector = {
29
29
  y?: number;
30
30
  z?: number;
31
31
  };
32
+ //# sourceMappingURL=entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/lib/interfaces/entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,4BAA4B,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC9F,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAEpC,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;AAE1D,MAAM,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAElF,MAAM,WAAW,MAAM,CAAC,CAAC,GAAG,GAAG;IAC9B,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9D,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,WAAY,SAAQ,MAAM;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,IAAI,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,mBAAmB,EAAE,4BAA4B,CAAC;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,cAAc,GAAG;IAAE,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export { ricochetSound } from "./ricochet-sound";
2
2
  export { pingPongBeep } from "./ping-pong-sound";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/sounds/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
@@ -2,3 +2,4 @@
2
2
  * Plays a ping-pong beep sound effect.
3
3
  */
4
4
  export declare function pingPongBeep(frequency?: number, duration?: number): void;
5
+ //# sourceMappingURL=ping-pong-sound.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ping-pong-sound.d.ts","sourceRoot":"","sources":["../../../src/lib/sounds/ping-pong-sound.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,YAAY,CAAC,SAAS,GAAE,MAAY,EAAE,QAAQ,GAAE,MAAY,QAE3E"}
@@ -2,3 +2,4 @@
2
2
  * Plays a ricochet sound effect when boundary collision occurs
3
3
  */
4
4
  export declare function ricochetSound(frequency?: number, duration?: number): void;
5
+ //# sourceMappingURL=ricochet-sound.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ricochet-sound.d.ts","sourceRoot":"","sources":["../../../src/lib/sounds/ricochet-sound.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,GAAE,MAAY,EAAE,QAAQ,GAAE,MAAa,QAE7E"}
@@ -21,3 +21,4 @@ export declare class DebugEntityCursor {
21
21
  hide(): void;
22
22
  dispose(): void;
23
23
  }
24
+ //# sourceMappingURL=debug-entity-cursor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug-entity-cursor.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/debug-entity-cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,KAAK,EAOL,QAAQ,EACR,KAAK,EAEL,MAAM,OAAO,CAAC;AAEf;;;GAGG;AACH,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAO;IACvB,OAAO,CAAC,SAAS,CAAe;IAChC,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,IAAI,CAAoB;IAChC,OAAO,CAAC,IAAI,CAA0B;IACtC,OAAO,CAAC,MAAM,CAA0B;gBAE5B,KAAK,EAAE,KAAK;IA8BxB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IAMrC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IA+B3D,IAAI,IAAI,IAAI;IAIZ,OAAO,IAAI,IAAI;CAOf"}
@@ -6,3 +6,4 @@ export interface EntitySpawner {
6
6
  spawnRelative: (source: any, stage: Stage, offset?: Vector2) => Promise<any | void>;
7
7
  }
8
8
  export declare function entitySpawner(factory: (x: number, y: number) => Promise<any> | GameEntity<any>): EntitySpawner;
9
+ //# sourceMappingURL=entity-spawner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-spawner.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/entity-spawner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,OAAO,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,MAAM,WAAW,aAAa;IAC7B,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACxE,aAAa,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;CACpF;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,aAAa,CA8B9G"}
@@ -42,3 +42,4 @@ export declare function getCurrentStageBlueprint(): StageBlueprint | null;
42
42
  * should pass the returned `Stage` to the game and call `load` as usual.
43
43
  */
44
44
  export declare function buildStageFromBlueprint(input: string | StageBlueprint, ...extras: StageOptions): Stage;
45
+ //# sourceMappingURL=stage-blueprint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage-blueprint.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/stage-blueprint.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAClC;AAYD,eAAO,MAAM,oBAAoB;UALpB,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC;WAC7B,MAAM,EAAE;eACF,MAAM,GAAG,IAAI;CAGgD,CAAC;AAElF,kEAAkE;AAClE,wBAAgB,oBAAoB,IAAI,IAAI,CAK3C;AAED,kDAAkD;AAClD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC,EAAE;IAAE,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAAE,GAAG,cAAc,CAWvJ;AAED,yCAAyC;AACzC,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,cAAc,GAAG,IAAI,CAKpE;AAED,gCAAgC;AAChC,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAMrD;AAED,6BAA6B;AAC7B,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAExE;AAED,8CAA8C;AAC9C,wBAAgB,mBAAmB,IAAI,cAAc,EAAE,CAItD;AAED,+DAA+D;AAC/D,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAEhE;AAED,gDAAgD;AAChD,wBAAgB,wBAAwB,IAAI,cAAc,GAAG,IAAI,CAGhE;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,YAAY,GAAG,KAAK,CAMtG"}
@@ -0,0 +1,14 @@
1
+ import { Object3D } from 'three';
2
+ import type { CameraDebugDelegate, CameraDebugState } from '../camera/zylem-camera';
3
+ import type { ZylemStage } from './zylem-stage';
4
+ /**
5
+ * Debug delegate that bridges the stage's entity map and debug state to the camera.
6
+ */
7
+ export declare class StageCameraDebugDelegate implements CameraDebugDelegate {
8
+ private stage;
9
+ constructor(stage: ZylemStage);
10
+ subscribe(listener: (state: CameraDebugState) => void): () => void;
11
+ resolveTarget(uuid: string): Object3D | null;
12
+ private snapshot;
13
+ }
14
+ //# sourceMappingURL=stage-camera-debug-delegate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage-camera-debug-delegate.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/stage-camera-debug-delegate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAEpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIhD;;GAEG;AACH,qBAAa,wBAAyB,YAAW,mBAAmB;IACnE,OAAO,CAAC,KAAK,CAAa;gBAEd,KAAK,EAAE,UAAU;IAI7B,SAAS,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,GAAG,MAAM,IAAI;IAMlE,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAQ5C,OAAO,CAAC,QAAQ;CAMhB"}
@@ -23,3 +23,4 @@ export declare class StageDebugDelegate {
23
23
  private handleActionOnHit;
24
24
  private attachDomListeners;
25
25
  }
26
+ //# sourceMappingURL=stage-debug-delegate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage-debug-delegate.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/stage-debug-delegate.ts"],"names":[],"mappings":"AACA,OAAO,EAAwF,OAAO,EAAE,MAAM,OAAO,CAAC;AACtH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAI3C,MAAM,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;AAEvG,MAAM,WAAW,yBAAyB;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CAC3C;AAKD,qBAAa,kBAAkB;IAC9B,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,UAAU,CAA6B;gBAEnC,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,yBAAyB;IAmBlE,MAAM,IAAI,IAAI;IAiEd,OAAO,IAAI,IAAI;IAYf,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,kBAAkB;CAqB1B"}
@@ -7,3 +7,4 @@ export declare function resetStageDefaults(): void;
7
7
  export declare function getStageOptions(options: StageOptions): StageOptions;
8
8
  /** Get a plain object copy of the current defaults. */
9
9
  export declare function getStageDefaultConfig(): Partial<ZylemStageConfig>;
10
+ //# sourceMappingURL=stage-default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage-default.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/stage-default.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAmBpE,eAAO,MAAM,kBAAkB,2BAE7B,CAAC;AAEH,yDAAyD;AACzD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAEzE;AAED,+CAA+C;AAC/C,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,CAQnE;AAED,uDAAuD;AACvD,wBAAgB,qBAAqB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAQjE"}
@@ -14,3 +14,4 @@ declare const setStageVariables: (variables: Record<string, any>) => void;
14
14
  declare const resetStageVariables: () => void;
15
15
  declare const stageStateToString: (state: StageStateInterface) => string;
16
16
  export { stageState, setStageState, setStageBackgroundColor, setStageBackgroundImage, setEntitiesToStage, stageStateToString, setStageVariable, getStageVariable, setStageVariables, resetStageVariables, };
17
+ //# sourceMappingURL=stage-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage-state.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/stage-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAW,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,QAAA,MAAM,UAAU,qBAUS,CAAC;AAE1B,QAAA,MAAM,aAAa,GAAI,OAAO,mBAAmB,SAEhD,CAAC;AAEF,QAAA,MAAM,uBAAuB,GAAI,OAAO,KAAK,SAE5C,CAAC;AAEF,QAAA,MAAM,uBAAuB,GAAI,OAAO,MAAM,GAAG,IAAI,SAEpD,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAI,UAAU,OAAO,CAAC,mBAAmB,CAAC,EAAE,SAEnE,CAAC;AAEF,QAAA,MAAM,gBAAgB,GAAI,KAAK,MAAM,EAAE,OAAO,GAAG,SAGhD,CAAC;AAEF,QAAA,MAAM,gBAAgB,GAAI,KAAK,MAAM,QAMpC,CAAC;AAEF,sEAAsE;AACtE,QAAA,MAAM,iBAAiB,GAAI,WAAW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,SAExD,CAAC;AAEF,wDAAwD;AACxD,QAAA,MAAM,mBAAmB,YAExB,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAI,OAAO,mBAAmB,WAuBrD,CAAC;AAEF,OAAO,EACN,UAAU,EACV,aAAa,EACb,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,GACnB,CAAC"}
@@ -9,7 +9,7 @@ type NodeLike = {
9
9
  type AnyNode = NodeLike | Promise<NodeLike>;
10
10
  type EntityInput = AnyNode | (() => AnyNode) | (() => Promise<any>);
11
11
  export declare class Stage {
12
- stageRef: ZylemStage;
12
+ wrappedStage: ZylemStage | null;
13
13
  options: StageOptionItem[];
14
14
  update: UpdateFunction<ZylemStage>;
15
15
  setup: SetupFunction<ZylemStage>;
@@ -30,3 +30,4 @@ export declare class Stage {
30
30
  */
31
31
  export declare function stage(...options: StageOptions): Stage;
32
32
  export {};
33
+ //# sourceMappingURL=stage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stage.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/stage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC5G,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD,KAAK,QAAQ,GAAG;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,CAAC;AACrC,KAAK,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC5C,KAAK,WAAW,GAAG,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AAEpE,qBAAa,KAAK;IACjB,YAAY,EAAE,UAAU,GAAG,IAAI,CAAC;IAChC,OAAO,EAAE,eAAe,EAAE,CAAM;IAEhC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,CAAa;IAC/C,KAAK,EAAE,aAAa,CAAC,UAAU,CAAC,CAAa;IAC7C,OAAO,EAAE,eAAe,CAAC,UAAU,CAAC,CAAa;gBAErC,OAAO,EAAE,YAAY;IAK3B,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,aAAa,GAAG,IAAI;IAQ5D,WAAW,CAAC,QAAQ,EAAE,QAAQ,EAAE;IAOtC,GAAG,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC;IAIjC,KAAK,CAAC,MAAM,EAAE,YAAY,CAAC,UAAU,CAAC;IAQtC,QAAQ,CAAC,GAAG,SAAS,EAAE,cAAc,CAAC,UAAU,CAAC,EAAE;IAOnD,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC;IAI3C,SAAS,CAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC;IAI/C,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG;IAInC,WAAW,CAAC,GAAG,EAAE,MAAM;CAGvB;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,GAAG,OAAO,EAAE,YAAY,GAAG,KAAK,CAGrD"}
@@ -1,9 +1,9 @@
1
- import { ZylemStage as n } from "./zylem-stage.js";
2
- import { CameraWrapper as r } from "../camera/camera.js";
3
- import { stageState as i, setStageVariable as g, getStageVariable as p } from "./stage-state.js";
4
- import { getStageOptions as f } from "./stage-default.js";
5
- class d {
6
- stageRef;
1
+ import { ZylemStage as i } from "./zylem-stage.js";
2
+ import { CameraWrapper as o } from "../camera/camera.js";
3
+ import { stageState as s, setStageVariable as n, getStageVariable as d } from "./stage-state.js";
4
+ import { getStageOptions as g } from "./stage-default.js";
5
+ class S {
6
+ wrappedStage;
7
7
  options = [];
8
8
  update = () => {
9
9
  };
@@ -12,49 +12,49 @@ class d {
12
12
  destroy = () => {
13
13
  };
14
14
  constructor(t) {
15
- this.options = t, this.stageRef = new n(this.options);
15
+ this.options = t, this.wrappedStage = null;
16
16
  }
17
17
  async load(t, e) {
18
- this.stageRef.wrapperRef = this;
19
- const s = e instanceof r ? e.cameraRef : e;
20
- await this.stageRef.load(t, s);
18
+ this.wrappedStage = new i(this.options), this.wrappedStage.wrapperRef = this;
19
+ const a = e instanceof o ? e.cameraRef : e;
20
+ await this.wrappedStage.load(t, a);
21
21
  }
22
22
  async addEntities(t) {
23
- this.options.push(...t), this.stageRef.enqueue(...t);
23
+ this.options.push(...t), this.wrappedStage && this.wrappedStage.enqueue(...t);
24
24
  }
25
25
  add(...t) {
26
- this.stageRef.enqueue(...t);
26
+ this.wrappedStage.enqueue(...t);
27
27
  }
28
28
  start(t) {
29
- this.stageRef?.nodeSetup(t), this.stageRef.onEntityAdded((e) => {
30
- const s = this.stageRef.buildEntityState(e);
31
- i.entities = [...i.entities, s];
29
+ this.wrappedStage?.nodeSetup(t), this.wrappedStage.onEntityAdded((e) => {
30
+ const a = this.wrappedStage.buildEntityState(e);
31
+ s.entities = [...s.entities, a];
32
32
  }, { replayExisting: !0 });
33
33
  }
34
34
  onUpdate(...t) {
35
- this.stageRef.update = (e) => {
36
- const s = { ...e, stage: this };
37
- t.forEach((o) => o(s));
35
+ this.wrappedStage.update = (e) => {
36
+ const a = { ...e, stage: this };
37
+ t.forEach((r) => r(a));
38
38
  };
39
39
  }
40
40
  onSetup(t) {
41
- this.stageRef.setup = t;
41
+ this.wrappedStage.setup = t;
42
42
  }
43
43
  onDestroy(t) {
44
- this.stageRef.destroy = t;
44
+ this.wrappedStage.destroy = t;
45
45
  }
46
46
  setVariable(t, e) {
47
- g(t, e);
47
+ n(t, e);
48
48
  }
49
49
  getVariable(t) {
50
- return p(t);
50
+ return d(t);
51
51
  }
52
52
  }
53
- function l(...a) {
54
- const t = f(a);
55
- return new d([...t]);
53
+ function c(...p) {
54
+ const t = g(p);
55
+ return new S([...t]);
56
56
  }
57
57
  export {
58
- d as Stage,
59
- l as stage
58
+ S as Stage,
59
+ c as stage
60
60
  };
@@ -6,10 +6,11 @@ import { SetupContext, UpdateContext, DestroyContext } from '../core/base-node-l
6
6
  import { LifeCycleBase } from '../core/lifecycle-base';
7
7
  import { BaseNode } from '../core/base-node';
8
8
  import { Stage } from './stage';
9
- import { ZylemCamera } from '../camera/zylem-camera';
10
9
  import { CameraWrapper } from '../camera/camera';
11
10
  import { StageDebugDelegate } from './stage-debug-delegate';
11
+ import { StageCameraDebugDelegate } from './stage-camera-debug-delegate';
12
12
  import { BaseEntityInterface } from '../types/entity-types';
13
+ import { ZylemCamera } from '../camera/zylem-camera';
13
14
  export interface ZylemStageConfig {
14
15
  inputs: Record<string, string[]>;
15
16
  backgroundColor: Color | string;
@@ -55,6 +56,7 @@ export declare class ZylemStage extends LifeCycleBase<ZylemStage> {
55
56
  testSystem: any;
56
57
  transformSystem: any;
57
58
  debugDelegate: StageDebugDelegate | null;
59
+ cameraDebugDelegate: StageCameraDebugDelegate | null;
58
60
  uuid: string;
59
61
  wrapperRef: Stage | null;
60
62
  camera?: CameraWrapper;
@@ -124,3 +126,4 @@ export declare class ZylemStage extends LifeCycleBase<ZylemStage> {
124
126
  enqueue(...items: StageEntityInput[]): void;
125
127
  }
126
128
  export {};
129
+ //# sourceMappingURL=zylem-stage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zylem-stage.d.ts","sourceRoot":"","sources":["../../../src/lib/stage/zylem-stage.ts"],"names":[],"mappings":"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"}