@zylem/game-lib 0.3.17 → 0.4.1

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 (290) hide show
  1. package/README.md +2 -2
  2. package/dist/.vite/manifest.json +63 -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 +6 -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 -8
  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 -5
  62. package/dist/lib/collision/collision-builder.d.ts.map +1 -0
  63. package/dist/lib/collision/collision-delegate.d.ts +1 -6
  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 -9
  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 -14
  83. package/dist/lib/core/entity-asset-loader.d.ts.map +1 -0
  84. package/dist/lib/core/entity-asset-loader.js +1 -4
  85. package/dist/lib/core/errors.d.ts +1 -0
  86. package/dist/lib/core/errors.d.ts.map +1 -0
  87. package/dist/lib/core/flags.d.ts +1 -0
  88. package/dist/lib/core/flags.d.ts.map +1 -0
  89. package/dist/lib/core/index.d.ts +1 -0
  90. package/dist/lib/core/index.d.ts.map +1 -0
  91. package/dist/lib/core/lazy-loader.d.ts +1 -0
  92. package/dist/lib/core/lazy-loader.d.ts.map +1 -0
  93. package/dist/lib/core/lifecycle-base.d.ts +1 -0
  94. package/dist/lib/core/lifecycle-base.d.ts.map +1 -0
  95. package/dist/lib/core/preset-shader.d.ts +1 -4
  96. package/dist/lib/core/preset-shader.d.ts.map +1 -0
  97. package/dist/lib/core/preset-shader.js +1 -5
  98. package/dist/lib/core/three-addons/Timer.d.ts +2 -16
  99. package/dist/lib/core/three-addons/Timer.d.ts.map +1 -0
  100. package/dist/lib/core/utility/nodes.d.ts +5 -3
  101. package/dist/lib/core/utility/nodes.d.ts.map +1 -0
  102. package/dist/lib/core/utility/nodes.js +20 -16
  103. package/dist/lib/core/utility/strings.d.ts +1 -0
  104. package/dist/lib/core/utility/strings.d.ts.map +1 -0
  105. package/dist/lib/core/utility/vector.d.ts +1 -6
  106. package/dist/lib/core/utility/vector.d.ts.map +1 -0
  107. package/dist/lib/core/vector.d.ts +1 -0
  108. package/dist/lib/core/vector.d.ts.map +1 -0
  109. package/dist/lib/core/vessel.d.ts +1 -1
  110. package/dist/lib/core/vessel.d.ts.map +1 -0
  111. package/dist/lib/core/vessel.js +0 -1
  112. package/dist/lib/debug/console/console-state.d.ts +1 -0
  113. package/dist/lib/debug/console/console-state.d.ts.map +1 -0
  114. package/dist/lib/debug/console/console-store.d.ts +1 -0
  115. package/dist/lib/debug/console/console-store.d.ts.map +1 -0
  116. package/dist/lib/debug/debug-state.d.ts +2 -7
  117. package/dist/lib/debug/debug-state.d.ts.map +1 -0
  118. package/dist/lib/debug/debug-store.d.ts +1 -0
  119. package/dist/lib/debug/debug-store.d.ts.map +1 -0
  120. package/dist/lib/debug/state-based-debug-loader.d.ts +1 -0
  121. package/dist/lib/debug/state-based-debug-loader.d.ts.map +1 -0
  122. package/dist/lib/device/aspect-ratio.d.ts +1 -0
  123. package/dist/lib/device/aspect-ratio.d.ts.map +1 -0
  124. package/dist/lib/device/desktop.d.ts +1 -0
  125. package/dist/lib/device/desktop.d.ts.map +1 -0
  126. package/dist/lib/device/mobile.d.ts +1 -0
  127. package/dist/lib/device/mobile.d.ts.map +1 -0
  128. package/dist/lib/device/tablet.d.ts +1 -0
  129. package/dist/lib/device/tablet.d.ts.map +1 -0
  130. package/dist/lib/entities/actor.d.ts +2 -15
  131. package/dist/lib/entities/actor.d.ts.map +1 -0
  132. package/dist/lib/entities/actor.js +0 -3
  133. package/dist/lib/entities/box.d.ts +1 -0
  134. package/dist/lib/entities/box.d.ts.map +1 -0
  135. package/dist/lib/entities/builder.d.ts +1 -0
  136. package/dist/lib/entities/builder.d.ts.map +1 -0
  137. package/dist/lib/entities/create.d.ts +1 -0
  138. package/dist/lib/entities/create.d.ts.map +1 -0
  139. package/dist/lib/entities/delegates/animation.d.ts +1 -0
  140. package/dist/lib/entities/delegates/animation.d.ts.map +1 -0
  141. package/dist/lib/entities/delegates/debug.d.ts +2 -10
  142. package/dist/lib/entities/delegates/debug.d.ts.map +1 -0
  143. package/dist/lib/entities/delegates/debug.js +1 -2
  144. package/dist/lib/entities/delegates/loader.d.ts +1 -0
  145. package/dist/lib/entities/delegates/loader.d.ts.map +1 -0
  146. package/dist/lib/entities/destroy.d.ts +1 -0
  147. package/dist/lib/entities/destroy.d.ts.map +1 -0
  148. package/dist/lib/entities/entity.d.ts +1 -5
  149. package/dist/lib/entities/entity.d.ts.map +1 -0
  150. package/dist/lib/entities/index.d.ts +2 -1
  151. package/dist/lib/entities/index.d.ts.map +1 -0
  152. package/dist/lib/entities/plane.d.ts +1 -0
  153. package/dist/lib/entities/plane.d.ts.map +1 -0
  154. package/dist/lib/entities/rect.d.ts +1 -0
  155. package/dist/lib/entities/rect.d.ts.map +1 -0
  156. package/dist/lib/entities/sphere.d.ts +1 -0
  157. package/dist/lib/entities/sphere.d.ts.map +1 -0
  158. package/dist/lib/entities/sprite.d.ts +1 -0
  159. package/dist/lib/entities/sprite.d.ts.map +1 -0
  160. package/dist/lib/entities/text.d.ts +8 -0
  161. package/dist/lib/entities/text.d.ts.map +1 -0
  162. package/dist/lib/entities/text.js +77 -48
  163. package/dist/lib/entities/zone.d.ts +1 -0
  164. package/dist/lib/entities/zone.d.ts.map +1 -0
  165. package/dist/lib/game/game-blueprint.d.ts +5 -11
  166. package/dist/lib/game/game-blueprint.d.ts.map +1 -0
  167. package/dist/lib/game/game-canvas.d.ts +1 -0
  168. package/dist/lib/game/game-canvas.d.ts.map +1 -0
  169. package/dist/lib/game/game-canvas.js +9 -9
  170. package/dist/lib/game/game-config.d.ts +17 -5
  171. package/dist/lib/game/game-config.d.ts.map +1 -0
  172. package/dist/lib/game/game-config.js +49 -24
  173. package/dist/lib/game/game-default.d.ts +3 -7
  174. package/dist/lib/game/game-default.d.ts.map +1 -0
  175. package/dist/lib/game/game-default.js +0 -1
  176. package/dist/lib/game/game-interfaces.d.ts +3 -2
  177. package/dist/lib/game/game-interfaces.d.ts.map +1 -0
  178. package/dist/lib/game/game-retro-resolutions.d.ts +25 -0
  179. package/dist/lib/game/game-retro-resolutions.d.ts.map +1 -0
  180. package/dist/lib/game/game-retro-resolutions.js +80 -0
  181. package/dist/lib/game/game-state.d.ts +6 -5
  182. package/dist/lib/game/game-state.d.ts.map +1 -0
  183. package/dist/lib/game/game.d.ts +7 -8
  184. package/dist/lib/game/game.d.ts.map +1 -0
  185. package/dist/lib/game/game.js +46 -70
  186. package/dist/lib/game/zylem-game.d.ts +5 -4
  187. package/dist/lib/game/zylem-game.d.ts.map +1 -0
  188. package/dist/lib/game/zylem-game.js +38 -31
  189. package/dist/lib/graphics/geometries/XZPlaneGeometry.d.ts +1 -0
  190. package/dist/lib/graphics/geometries/XZPlaneGeometry.d.ts.map +1 -0
  191. package/dist/lib/graphics/material.d.ts +1 -0
  192. package/dist/lib/graphics/material.d.ts.map +1 -0
  193. package/dist/lib/graphics/mesh.d.ts +1 -0
  194. package/dist/lib/graphics/mesh.d.ts.map +1 -0
  195. package/dist/lib/graphics/render-pass.d.ts +1 -0
  196. package/dist/lib/graphics/render-pass.d.ts.map +1 -0
  197. package/dist/lib/graphics/zylem-scene.d.ts +1 -0
  198. package/dist/lib/graphics/zylem-scene.d.ts.map +1 -0
  199. package/dist/lib/input/gamepad-provider.d.ts +1 -0
  200. package/dist/lib/input/gamepad-provider.d.ts.map +1 -0
  201. package/dist/lib/input/input-manager.d.ts +1 -0
  202. package/dist/lib/input/input-manager.d.ts.map +1 -0
  203. package/dist/lib/input/input-provider.d.ts +1 -0
  204. package/dist/lib/input/input-provider.d.ts.map +1 -0
  205. package/dist/lib/input/input.d.ts +1 -4
  206. package/dist/lib/input/input.d.ts.map +1 -0
  207. package/dist/lib/input/keyboard-provider.d.ts +1 -0
  208. package/dist/lib/input/keyboard-provider.d.ts.map +1 -0
  209. package/dist/lib/interfaces/entity.d.ts +1 -6
  210. package/dist/lib/interfaces/entity.d.ts.map +1 -0
  211. package/dist/lib/sounds/index.d.ts +1 -0
  212. package/dist/lib/sounds/index.d.ts.map +1 -0
  213. package/dist/lib/sounds/ping-pong-sound.d.ts +1 -0
  214. package/dist/lib/sounds/ping-pong-sound.d.ts.map +1 -0
  215. package/dist/lib/sounds/ricochet-sound.d.ts +1 -0
  216. package/dist/lib/sounds/ricochet-sound.d.ts.map +1 -0
  217. package/dist/lib/stage/debug-entity-cursor.d.ts +1 -0
  218. package/dist/lib/stage/debug-entity-cursor.d.ts.map +1 -0
  219. package/dist/lib/stage/entity-spawner.d.ts +1 -0
  220. package/dist/lib/stage/entity-spawner.d.ts.map +1 -0
  221. package/dist/lib/stage/stage-blueprint.d.ts +1 -0
  222. package/dist/lib/stage/stage-blueprint.d.ts.map +1 -0
  223. package/dist/lib/stage/stage-camera-debug-delegate.d.ts +14 -0
  224. package/dist/lib/stage/stage-camera-debug-delegate.d.ts.map +1 -0
  225. package/dist/lib/stage/stage-debug-delegate.d.ts +1 -0
  226. package/dist/lib/stage/stage-debug-delegate.d.ts.map +1 -0
  227. package/dist/lib/stage/stage-default.d.ts +2 -8
  228. package/dist/lib/stage/stage-default.d.ts.map +1 -0
  229. package/dist/lib/stage/stage-default.js +18 -28
  230. package/dist/lib/stage/stage-state.d.ts +2 -4
  231. package/dist/lib/stage/stage-state.d.ts.map +1 -0
  232. package/dist/lib/stage/stage.d.ts +2 -1
  233. package/dist/lib/stage/stage.d.ts.map +1 -0
  234. package/dist/lib/stage/stage.js +28 -28
  235. package/dist/lib/stage/zylem-stage.d.ts +4 -2
  236. package/dist/lib/stage/zylem-stage.d.ts.map +1 -0
  237. package/dist/lib/stage/zylem-stage.js +24 -24
  238. package/dist/lib/systems/test-system.d.ts +1 -0
  239. package/dist/lib/systems/test-system.d.ts.map +1 -0
  240. package/dist/lib/systems/transformable.system.d.ts +1 -0
  241. package/dist/lib/systems/transformable.system.d.ts.map +1 -0
  242. package/dist/lib/types/entity-types.d.ts +1 -15
  243. package/dist/lib/types/entity-types.d.ts.map +1 -0
  244. package/dist/lib/types/index.d.ts +1 -0
  245. package/dist/lib/types/index.d.ts.map +1 -0
  246. package/dist/lib/types/stage-types.d.ts +1 -9
  247. package/dist/lib/types/stage-types.d.ts.map +1 -0
  248. package/dist/lib/ui/Debug.d.ts +5 -0
  249. package/dist/lib/ui/Debug.d.ts.map +1 -0
  250. package/dist/lib/ui/console/Console.d.ts +1 -0
  251. package/dist/lib/ui/console/Console.d.ts.map +1 -0
  252. package/dist/lib/ui/debug-panel/AccordionMenu.d.ts +1 -0
  253. package/dist/lib/ui/debug-panel/AccordionMenu.d.ts.map +1 -0
  254. package/dist/lib/ui/debug-panel/Menu.d.ts +1 -0
  255. package/dist/lib/ui/debug-panel/Menu.d.ts.map +1 -0
  256. package/dist/lib/ui/debug-panel/sections/EntitiesSection.d.ts +1 -8
  257. package/dist/lib/ui/debug-panel/sections/EntitiesSection.d.ts.map +1 -0
  258. package/dist/lib/ui/debug-panel/sections/GameSection.d.ts +1 -0
  259. package/dist/lib/ui/debug-panel/sections/GameSection.d.ts.map +1 -0
  260. package/dist/lib/ui/debug-panel/sections/StagesSection.d.ts +1 -0
  261. package/dist/lib/ui/debug-panel/sections/StagesSection.d.ts.map +1 -0
  262. package/dist/lib/ui/debug-panel/sections/all.d.ts +1 -0
  263. package/dist/lib/ui/debug-panel/sections/all.d.ts.map +1 -0
  264. package/dist/lib/ui/toolbar/Toolbar.d.ts +1 -0
  265. package/dist/lib/ui/toolbar/Toolbar.d.ts.map +1 -0
  266. package/dist/main.js +10 -10
  267. package/dist/stage.js +12 -17
  268. package/dist/tests/integration/debug.sim.spec.d.ts +2 -0
  269. package/dist/tests/integration/debug.sim.spec.d.ts.map +1 -0
  270. package/dist/tests/unit/collision/collision.spec.d.ts +2 -0
  271. package/dist/tests/unit/collision/collision.spec.d.ts.map +1 -0
  272. package/dist/tests/unit/core/game.spec.d.ts +2 -0
  273. package/dist/tests/unit/core/game.spec.d.ts.map +1 -0
  274. package/dist/tests/unit/core/stage.spec.d.ts +2 -0
  275. package/dist/tests/unit/core/stage.spec.d.ts.map +1 -0
  276. package/dist/tests/unit/core/vessel.spec.d.ts +2 -0
  277. package/dist/tests/unit/core/vessel.spec.d.ts.map +1 -0
  278. package/package.json +22 -44
  279. package/dist/actions.d.ts +0 -4
  280. package/dist/behaviors.d.ts +0 -3
  281. package/dist/camera.d.ts +0 -3
  282. package/dist/core.d.ts +0 -5
  283. package/dist/entities.d.ts +0 -8
  284. package/dist/main.d.ts +0 -31
  285. package/dist/stage.d.ts +0 -6
  286. package/dist/tests/collision/collision.spec.d.ts +0 -1
  287. package/dist/tests/core/game.spec.d.ts +0 -1
  288. package/dist/tests/core/stage.spec.d.ts +0 -1
  289. package/dist/tests/core/vessel.spec.d.ts +0 -1
  290. package/dist/tests/stage/stage-blueprint.spec.d.ts +0 -1
@@ -1,10 +1,11 @@
1
- import { BasicTypes, GlobalVariablesType } from './game-interfaces';
1
+ import { BaseGlobals } from './game-interfaces';
2
2
  declare const state: {
3
3
  id: string;
4
- globals: GlobalVariablesType;
4
+ globals: BaseGlobals;
5
5
  time: number;
6
6
  };
7
- export declare function setGlobalState<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType, K extends keyof TGlobals = keyof TGlobals>(key: K, value: TGlobals[K]): void;
8
- export declare function getGlobalState<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType>(): TGlobals;
9
- export declare function getGlobalState<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType, K extends keyof TGlobals = keyof TGlobals>(key: K): TGlobals[K];
7
+ export declare function setGlobalState<TGlobals extends BaseGlobals, K extends keyof TGlobals = keyof TGlobals>(key: K, value: TGlobals[K]): void;
8
+ export declare function getGlobalState<TGlobals extends BaseGlobals>(): TGlobals;
9
+ export declare function getGlobalState<TGlobals extends BaseGlobals, K extends keyof TGlobals = keyof TGlobals>(key: K): TGlobals[K];
10
10
  export { state };
11
+ //# sourceMappingURL=game-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game-state.d.ts","sourceRoot":"","sources":["../../../src/lib/game/game-state.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAc,MAAM,mBAAmB,CAAC;AAE5D,QAAA,MAAM,KAAK;;aAEK,WAAW;;CAEzB,CAAC;AAEH,wBAAgB,cAAc,CAC7B,QAAQ,SAAS,WAAW,EAC5B,CAAC,SAAS,MAAM,QAAQ,GAAG,MAAM,QAAQ,EACxC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AAMpC,wBAAgB,cAAc,CAAC,QAAQ,SAAS,WAAW,KAAK,QAAQ,CAAC;AAEzE,wBAAgB,cAAc,CAC7B,QAAQ,SAAS,WAAW,EAC5B,CAAC,SAAS,MAAM,QAAQ,GAAG,MAAM,QAAQ,EACxC,GAAG,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;AASvB,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -1,19 +1,18 @@
1
1
  import { ZylemGame } from './zylem-game';
2
- import { Stage } from '../stage/stage';
3
2
  import { DestroyFunction, IGame, SetupFunction, UpdateFunction } from '../core/base-node-life-cycle';
4
- import { BasicTypes, GlobalVariablesType } from './game-interfaces';
3
+ import { BaseGlobals } from './game-interfaces';
5
4
  import { GameOptions } from '../core/utility/nodes';
6
- export declare class Game<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType> implements IGame<TGlobals> {
7
- gameRef: ZylemGame<TGlobals> | null;
8
- options: GameOptions<TGlobals>;
5
+ export declare class Game<TGlobals extends BaseGlobals> implements IGame<TGlobals> {
6
+ private wrappedGame;
9
7
  private pendingGlobalChangeHandlers;
8
+ options: GameOptions<TGlobals>;
10
9
  update: UpdateFunction<ZylemGame<TGlobals>, TGlobals>;
11
10
  setup: SetupFunction<ZylemGame<TGlobals>, TGlobals>;
12
11
  destroy: DestroyFunction<ZylemGame<TGlobals>, TGlobals>;
13
12
  refErrorMessage: string;
14
13
  constructor(options: GameOptions<TGlobals>);
15
14
  start(): Promise<this>;
16
- load(): Promise<ZylemGame<TGlobals>>;
15
+ private load;
17
16
  setOverrides(): void;
18
17
  pause(): Promise<void>;
19
18
  resume(): Promise<void>;
@@ -22,7 +21,6 @@ export declare class Game<TGlobals extends Record<string, BasicTypes> = GlobalVa
22
21
  previousStage(): Promise<void>;
23
22
  goToStage(): Promise<void>;
24
23
  end(): Promise<void>;
25
- add(...inputs: Array<Stage | Promise<any> | (() => Stage | Promise<any>)>): this;
26
24
  getGlobal<K extends keyof TGlobals>(key: K): TGlobals[K];
27
25
  setGlobal<K extends keyof TGlobals>(key: K, value: TGlobals[K]): void;
28
26
  onGlobalChange<K extends keyof TGlobals>(key: K, callback: (value: TGlobals[K]) => void): void;
@@ -35,4 +33,5 @@ export declare class Game<TGlobals extends Record<string, BasicTypes> = GlobalVa
35
33
  * @param options.stages Array of stage objects (when using IGameOptions)
36
34
  * @returns Game
37
35
  */
38
- export declare function game<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType>(...options: GameOptions<TGlobals>): Game<TGlobals>;
36
+ export declare function createGame<TGlobals extends BaseGlobals>(...options: GameOptions<TGlobals>): Game<TGlobals>;
37
+ //# sourceMappingURL=game.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"game.d.ts","sourceRoot":"","sources":["../../../src/lib/game/game.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAErG,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAgB,WAAW,EAAa,MAAM,uBAAuB,CAAC;AAI7E,qBAAa,IAAI,CAAC,QAAQ,SAAS,WAAW,CAAE,YAAW,KAAK,CAAC,QAAQ,CAAC;IACzE,OAAO,CAAC,WAAW,CAAoC;IACvD,OAAO,CAAC,2BAA2B,CAAsE;IAEzG,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE/B,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAa;IAClE,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAa;IAChE,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAa;IAEpE,eAAe,SAA4B;gBAE/B,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC;IAOpC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAQd,IAAI;IAYlB,YAAY;IAgBN,KAAK;IAIL,MAAM;IAQN,KAAK;IAQL,SAAS;IAeT,aAAa;IAeb,SAAS;IAET,GAAG;IAET,SAAS,CAAC,CAAC,SAAS,MAAM,QAAQ,EAAE,GAAG,EAAE,CAAC;IAO1C,SAAS,CAAC,CAAC,SAAS,MAAM,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;IAQ9D,cAAc,CAAC,CAAC,SAAS,MAAM,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI;CAOvF;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,QAAQ,SAAS,WAAW,EAAE,GAAG,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAE1G"}
@@ -1,13 +1,13 @@
1
1
  import { ZylemGame as n } from "./zylem-game.js";
2
- import { Stage as o } from "../stage/stage.js";
3
- import { setPaused as r } from "../debug/debug-state.js";
4
- import { getGlobalState as g, setGlobalState as f } from "./game-state.js";
5
- import { convertNodes as h } from "../core/utility/nodes.js";
6
- import { resolveGameConfig as l } from "./game-config.js";
7
- class u {
8
- gameRef = null;
9
- options;
2
+ import { setPaused as o } from "../debug/debug-state.js";
3
+ import { getGlobalState as i, setGlobalState as p } from "./game-state.js";
4
+ import { hasStages as d, convertNodes as l } from "../core/utility/nodes.js";
5
+ import { resolveGameConfig as h } from "./game-config.js";
6
+ import { stage as g } from "../stage/stage.js";
7
+ class m {
8
+ wrappedGame = null;
10
9
  pendingGlobalChangeHandlers = [];
10
+ options;
11
11
  update = () => {
12
12
  };
13
13
  setup = () => {
@@ -15,119 +15,95 @@ class u {
15
15
  destroy = () => {
16
16
  };
17
17
  refErrorMessage = "lost reference to game";
18
- constructor(t) {
19
- this.options = t;
18
+ constructor(e) {
19
+ this.options = e, d(e) || this.options.push(g());
20
20
  }
21
21
  async start() {
22
- const t = await this.load();
23
- return this.gameRef = t, this.setOverrides(), t.start(), this;
22
+ const e = await this.load();
23
+ return this.wrappedGame = e, this.setOverrides(), e.start(), this;
24
24
  }
25
25
  async load() {
26
26
  console.log("loading game", this.options);
27
- const t = await h(this.options), s = l(t), e = new n({
28
- ...t,
29
- ...s
27
+ const e = await l(this.options), a = h(e), t = new n({
28
+ ...e,
29
+ ...a
30
30
  }, this);
31
- return await e.loadStage(t.stages[0]), e;
31
+ return await t.loadStage(e.stages[0]), t;
32
32
  }
33
33
  setOverrides() {
34
- if (!this.gameRef) {
34
+ if (!this.wrappedGame) {
35
35
  console.error(this.refErrorMessage);
36
36
  return;
37
37
  }
38
- if (this.gameRef.customSetup = this.setup, this.gameRef.customUpdate = this.update, this.gameRef.customDestroy = this.destroy, this.pendingGlobalChangeHandlers.length) {
39
- for (const { key: t, callback: s } of this.pendingGlobalChangeHandlers)
40
- this.gameRef.onGlobalChange(t, s);
38
+ if (this.wrappedGame.customSetup = this.setup, this.wrappedGame.customUpdate = this.update, this.wrappedGame.customDestroy = this.destroy, this.pendingGlobalChangeHandlers.length) {
39
+ for (const { key: e, callback: a } of this.pendingGlobalChangeHandlers)
40
+ this.wrappedGame.onGlobalChange(e, a);
41
41
  this.pendingGlobalChangeHandlers = [];
42
42
  }
43
43
  }
44
44
  async pause() {
45
- r(!0);
45
+ o(!0);
46
46
  }
47
47
  async resume() {
48
- r(!1), this.gameRef && (this.gameRef.previousTimeStamp = 0, this.gameRef.timer.reset());
48
+ o(!1), this.wrappedGame && (this.wrappedGame.previousTimeStamp = 0, this.wrappedGame.timer.reset());
49
49
  }
50
50
  async reset() {
51
- if (!this.gameRef) {
51
+ if (!this.wrappedGame) {
52
52
  console.error(this.refErrorMessage);
53
53
  return;
54
54
  }
55
- await this.gameRef.loadStage(this.gameRef.stages[0]);
55
+ await this.wrappedGame.loadStage(this.wrappedGame.stages[0]);
56
56
  }
57
57
  async nextStage() {
58
- if (!this.gameRef) {
58
+ if (!this.wrappedGame) {
59
59
  console.error(this.refErrorMessage);
60
60
  return;
61
61
  }
62
- const t = this.gameRef.currentStageId, s = this.gameRef.stages.findIndex((a) => a.stageRef.uuid === t), e = this.gameRef.stages[s + 1];
63
- if (!e) {
62
+ const e = this.wrappedGame.currentStageId, a = this.wrappedGame.stages.findIndex((r) => r.wrappedStage.uuid === e), t = this.wrappedGame.stages[a + 1];
63
+ if (!t) {
64
64
  console.error("next stage called on last stage");
65
65
  return;
66
66
  }
67
- await this.gameRef.loadStage(e);
67
+ await this.wrappedGame.loadStage(t);
68
68
  }
69
69
  async previousStage() {
70
- if (!this.gameRef) {
70
+ if (!this.wrappedGame) {
71
71
  console.error(this.refErrorMessage);
72
72
  return;
73
73
  }
74
- const t = this.gameRef.currentStageId, s = this.gameRef.stages.findIndex((a) => a.stageRef.uuid === t), e = this.gameRef.stages[s - 1];
75
- if (!e) {
74
+ const e = this.wrappedGame.currentStageId, a = this.wrappedGame.stages.findIndex((r) => r.wrappedStage.uuid === e), t = this.wrappedGame.stages[a - 1];
75
+ if (!t) {
76
76
  console.error("previous stage called on first stage");
77
77
  return;
78
78
  }
79
- await this.gameRef.loadStage(e);
79
+ await this.wrappedGame.loadStage(t);
80
80
  }
81
81
  async goToStage() {
82
82
  }
83
83
  async end() {
84
84
  }
85
- add(...t) {
86
- for (const s of t)
87
- if (s) {
88
- if (s instanceof o) {
89
- this.gameRef ? (this.gameRef.stages.push(s), this.gameRef.stageMap.set(s.stageRef.uuid, s)) : this.options.push(s);
90
- continue;
91
- }
92
- if (typeof s == "function") {
93
- try {
94
- const e = s();
95
- e instanceof o ? this.gameRef ? (this.gameRef.stages.push(e), this.gameRef.stageMap.set(e.stageRef.uuid, e)) : this.options.push(e) : e && typeof e.then == "function" && e.then((a) => {
96
- a instanceof o && (this.gameRef ? (this.gameRef.stages.push(a), this.gameRef.stageMap.set(a.stageRef.uuid, a)) : this.options.push(a));
97
- }).catch((a) => console.error("Failed to add async stage", a));
98
- } catch (e) {
99
- console.error("Error executing stage factory", e);
100
- }
101
- continue;
102
- }
103
- s && typeof s.then == "function" && s.then((e) => {
104
- e instanceof o && (this.gameRef ? (this.gameRef.stages.push(e), this.gameRef.stageMap.set(e.stageRef.uuid, e)) : this.options.push(e));
105
- }).catch((e) => console.error("Failed to add async stage", e));
106
- }
107
- return this;
108
- }
109
- getGlobal(t) {
110
- return this.gameRef ? this.gameRef.getGlobal(t) : g(t);
85
+ getGlobal(e) {
86
+ return this.wrappedGame ? this.wrappedGame.getGlobal(e) : i(e);
111
87
  }
112
- setGlobal(t, s) {
113
- if (this.gameRef) {
114
- this.gameRef.setGlobal(t, s);
88
+ setGlobal(e, a) {
89
+ if (this.wrappedGame) {
90
+ this.wrappedGame.setGlobal(e, a);
115
91
  return;
116
92
  }
117
- f(t, s);
93
+ p(e, a);
118
94
  }
119
- onGlobalChange(t, s) {
120
- if (this.gameRef) {
121
- this.gameRef.onGlobalChange(t, s);
95
+ onGlobalChange(e, a) {
96
+ if (this.wrappedGame) {
97
+ this.wrappedGame.onGlobalChange(e, a);
122
98
  return;
123
99
  }
124
- this.pendingGlobalChangeHandlers.push({ key: t, callback: s });
100
+ this.pendingGlobalChangeHandlers.push({ key: e, callback: a });
125
101
  }
126
102
  }
127
- function S(...i) {
128
- return new u(i);
103
+ function b(...s) {
104
+ return new m(s);
129
105
  }
130
106
  export {
131
- u as Game,
132
- S as game
107
+ m as Game,
108
+ b as createGame
133
109
  };
@@ -4,12 +4,12 @@ import { InputManager } from '../input/input-manager';
4
4
  import { Timer } from '../core/three-addons/Timer';
5
5
  import { ZylemCamera } from '~/lib/camera/zylem-camera';
6
6
  import { Stage } from '../stage/stage';
7
- import { BasicTypes, GlobalVariablesType, ZylemGameConfig } from './game-interfaces';
7
+ import { BaseGlobals, ZylemGameConfig } from './game-interfaces';
8
8
  import { GameConfig } from './game-config';
9
9
  import { AspectRatioDelegate } from '../device/aspect-ratio';
10
10
  import { GameCanvas } from './game-canvas';
11
- type ZylemGameOptions<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType> = ZylemGameConfig<Stage, ZylemGame<TGlobals>, TGlobals> & Partial<GameConfig>;
12
- export declare class ZylemGame<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType> {
11
+ type ZylemGameOptions<TGlobals extends BaseGlobals> = ZylemGameConfig<Stage, ZylemGame<TGlobals>, TGlobals> & Partial<GameConfig>;
12
+ export declare class ZylemGame<TGlobals extends BaseGlobals> {
13
13
  id: string;
14
14
  initialGlobals: TGlobals;
15
15
  customSetup: ((params: SetupContext<ZylemGame<TGlobals>, TGlobals>) => void) | null;
@@ -54,4 +54,5 @@ export declare class ZylemGame<TGlobals extends Record<string, BasicTypes> = Glo
54
54
  setGlobal<K extends keyof TGlobals>(key: K, value: TGlobals[K]): void;
55
55
  onGlobalChange<K extends keyof TGlobals>(key: K, callback: (value: TGlobals[K]) => void): void;
56
56
  }
57
- export default ZylemGame;
57
+ export {};
58
+ //# sourceMappingURL=zylem-game.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zylem-game.d.ts","sourceRoot":"","sources":["../../../src/lib/game/zylem-game.ts"],"names":[],"mappings":"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"}
@@ -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,19 @@ 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
133
140
  };
@@ -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"}
@@ -45,7 +45,4 @@ export interface InputGamepad {
45
45
  export type Inputs = Record<InputPlayer, InputGamepad>;
46
46
  export type ButtonName = keyof InputGamepad['buttons'];
47
47
  export type InputHandlerCallback = () => void;
48
- export interface InputHandler {
49
- onPress(button: ButtonName, callback: InputHandlerCallback): void;
50
- update(currentInputs: Inputs): void;
51
- }
48
+ //# 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"}
@@ -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"}
@@ -1,7 +1,6 @@
1
1
  import { Collider, KinematicCharacterController, RigidBody } from "@dimforge/rapier3d-compat";
2
2
  import { Group, Mesh } from "three";
3
3
  export type LifecycleFunction<T> = (params?: any) => void;
4
- export type CollisionOption = (entity: any, other: any, globals?: Global) => void;
5
4
  export interface Entity<T = any> {
6
5
  setup: (entity: T) => void;
7
6
  destroy: () => void;
@@ -24,8 +23,4 @@ export interface StageEntity extends Entity {
24
23
  name: string;
25
24
  markedForRemoval: boolean;
26
25
  }
27
- export type OptionalVector = {
28
- x?: number;
29
- y?: number;
30
- z?: number;
31
- };
26
+ //# 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;AAI1D,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"}
@@ -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"}