@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
@@ -16,6 +16,14 @@ export interface PerspectiveController {
16
16
  update(delta: number): void;
17
17
  resize(width: number, height: number): void;
18
18
  }
19
+ export interface CameraDebugState {
20
+ enabled: boolean;
21
+ selected: string[];
22
+ }
23
+ export interface CameraDebugDelegate {
24
+ subscribe(listener: (state: CameraDebugState) => void): () => void;
25
+ resolveTarget(uuid: string): Object3D | null;
26
+ }
19
27
  export declare class ZylemCamera {
20
28
  cameraRig: Object3D;
21
29
  camera: Camera;
@@ -28,6 +36,11 @@ export declare class ZylemCamera {
28
36
  sceneRef: Scene | null;
29
37
  frustumSize: number;
30
38
  perspectiveController: PerspectiveController | null;
39
+ debugDelegate: CameraDebugDelegate | null;
40
+ private debugUnsubscribe;
41
+ private debugStateSnapshot;
42
+ private orbitTarget;
43
+ private orbitTargetWorldPos;
31
44
  constructor(perspective: PerspectiveType, screenResolution: Vector2, frustumSize?: number);
32
45
  /**
33
46
  * Setup the camera with a scene
@@ -41,10 +54,18 @@ export declare class ZylemCamera {
41
54
  * Dispose renderer, composer, controls, and detach from scene
42
55
  */
43
56
  destroy(): void;
57
+ /**
58
+ * Attach a delegate to react to debug state changes.
59
+ */
60
+ setDebugDelegate(delegate: CameraDebugDelegate | null): void;
44
61
  /**
45
62
  * Resize camera and renderer
46
63
  */
47
64
  resize(width: number, height: number): void;
65
+ /**
66
+ * Update renderer pixel ratio (DPR)
67
+ */
68
+ setPixelRatio(dpr: number): void;
48
69
  /**
49
70
  * Create camera based on perspective type
50
71
  */
@@ -65,4 +86,10 @@ export declare class ZylemCamera {
65
86
  * Get the DOM element for the renderer
66
87
  */
67
88
  getDomElement(): HTMLCanvasElement;
89
+ private applyDebugState;
90
+ private enableOrbitControls;
91
+ private disableOrbitControls;
92
+ private updateOrbitTargetFromSelection;
93
+ private detachDebugDelegate;
68
94
  }
95
+ //# sourceMappingURL=zylem-camera.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zylem-camera.d.ts","sourceRoot":"","sources":["../../../src/lib/camera/zylem-camera.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
- import { WebGLRenderer as c, Object3D as m, Vector3 as h, PerspectiveCamera as a, OrthographicCamera as o } from "three";
1
+ import { Vector3 as a, WebGLRenderer as c, Object3D as u, PerspectiveCamera as o, OrthographicCamera as n } from "three";
2
2
  import { OrbitControls as l } from "three/addons/controls/OrbitControls.js";
3
- import { Perspectives as t } from "./perspective.js";
4
- import { ThirdPersonCamera as n } from "./third-person.js";
5
- import { Fixed2DCamera as p } from "./fixed-2d.js";
6
- import { EffectComposer as u } from "three/examples/jsm/postprocessing/EffectComposer.js";
3
+ import { Perspectives as s } from "./perspective.js";
4
+ import { ThirdPersonCamera as h } from "./third-person.js";
5
+ import { Fixed2DCamera as m } from "./fixed-2d.js";
6
+ import { EffectComposer as b } from "three/examples/jsm/postprocessing/EffectComposer.js";
7
7
  import d from "../graphics/render-pass.js";
8
- class S {
8
+ class F {
9
9
  cameraRig;
10
10
  camera;
11
11
  screenResolution;
@@ -18,20 +18,25 @@ class S {
18
18
  frustumSize = 10;
19
19
  // Perspective controller delegation
20
20
  perspectiveController = null;
21
- constructor(e, r, s = 10) {
22
- this._perspective = e, this.screenResolution = r, this.frustumSize = s, this.renderer = new c({ antialias: !1, alpha: !0 }), this.renderer.setSize(r.x, r.y), this.renderer.shadowMap.enabled = !0, this.composer = new u(this.renderer);
23
- const i = r.x / r.y;
24
- this.camera = this.createCameraForPerspective(i), this.cameraRig = new m(), this.cameraRig.position.set(0, 3, 10), this.cameraRig.add(this.camera), this.camera.lookAt(new h(0, 2, 0)), this.initializePerspectiveController();
21
+ debugDelegate = null;
22
+ debugUnsubscribe = null;
23
+ debugStateSnapshot = { enabled: !1, selected: [] };
24
+ orbitTarget = null;
25
+ orbitTargetWorldPos = new a();
26
+ constructor(e, t, r = 10) {
27
+ this._perspective = e, this.screenResolution = t, this.frustumSize = r, this.renderer = new c({ antialias: !1, alpha: !0 }), this.renderer.setSize(t.x, t.y), this.renderer.shadowMap.enabled = !0, this.composer = new b(this.renderer);
28
+ const i = t.x / t.y;
29
+ this.camera = this.createCameraForPerspective(i), this.cameraRig = new u(), this.cameraRig.position.set(0, 3, 10), this.cameraRig.add(this.camera), this.camera.lookAt(new a(0, 2, 0)), this.initializePerspectiveController();
25
30
  }
26
31
  /**
27
32
  * Setup the camera with a scene
28
33
  */
29
34
  async setup(e) {
30
35
  this.sceneRef = e, this.orbitControls === null && (this.orbitControls = new l(this.camera, this.renderer.domElement), this.orbitControls.enableDamping = !0, this.orbitControls.dampingFactor = 0.05, this.orbitControls.screenSpacePanning = !1, this.orbitControls.minDistance = 1, this.orbitControls.maxDistance = 500, this.orbitControls.maxPolarAngle = Math.PI / 2);
31
- let r = this.screenResolution.clone().divideScalar(2);
32
- r.x |= 0, r.y |= 0;
33
- const s = new d(r, e, this.camera);
34
- this.composer.addPass(s), this.perspectiveController && this.perspectiveController.setup({
36
+ let t = this.screenResolution.clone().divideScalar(2);
37
+ t.x |= 0, t.y |= 0;
38
+ const r = new d(t, e, this.camera);
39
+ this.composer.addPass(r), this.perspectiveController && this.perspectiveController.setup({
35
40
  screenResolution: this.screenResolution,
36
41
  renderer: this.renderer,
37
42
  scene: e,
@@ -44,7 +49,7 @@ class S {
44
49
  * Update camera and render
45
50
  */
46
51
  update(e) {
47
- this.orbitControls?.update(), this.perspectiveController && this.perspectiveController.update(e), this.composer.render(e);
52
+ this.orbitControls && this.orbitTarget && (this.orbitTarget.getWorldPosition(this.orbitTargetWorldPos), this.orbitControls.target.copy(this.orbitTargetWorldPos)), this.orbitControls?.update(), this.perspectiveController && this.perspectiveController.update(e), this.composer.render(e);
48
53
  }
49
54
  /**
50
55
  * Dispose renderer, composer, controls, and detach from scene
@@ -55,7 +60,7 @@ class S {
55
60
  } catch {
56
61
  }
57
62
  try {
58
- this.orbitControls?.dispose(), this.orbitControls = null;
63
+ this.disableOrbitControls();
59
64
  } catch {
60
65
  }
61
66
  try {
@@ -66,28 +71,52 @@ class S {
66
71
  this.renderer.dispose();
67
72
  } catch {
68
73
  }
69
- this.sceneRef = null;
74
+ this.detachDebugDelegate(), this.sceneRef = null;
75
+ }
76
+ /**
77
+ * Attach a delegate to react to debug state changes.
78
+ */
79
+ setDebugDelegate(e) {
80
+ if (this.debugDelegate === e)
81
+ return;
82
+ if (this.detachDebugDelegate(), this.debugDelegate = e, !e) {
83
+ this.applyDebugState({ enabled: !1, selected: [] });
84
+ return;
85
+ }
86
+ const t = e.subscribe((r) => {
87
+ this.applyDebugState(r);
88
+ });
89
+ this.debugUnsubscribe = () => {
90
+ t?.();
91
+ };
70
92
  }
71
93
  /**
72
94
  * Resize camera and renderer
73
95
  */
74
- resize(e, r) {
75
- this.screenResolution.set(e, r), this.renderer.setSize(e, r, !0), this.composer.setSize(e, r), this.camera instanceof a && (this.camera.aspect = e / r, this.camera.updateProjectionMatrix()), this.perspectiveController && this.perspectiveController.resize(e, r);
96
+ resize(e, t) {
97
+ this.screenResolution.set(e, t), this.renderer.setSize(e, t, !1), this.composer.setSize(e, t), this.camera instanceof o && (this.camera.aspect = e / t, this.camera.updateProjectionMatrix()), this.perspectiveController && this.perspectiveController.resize(e, t);
98
+ }
99
+ /**
100
+ * Update renderer pixel ratio (DPR)
101
+ */
102
+ setPixelRatio(e) {
103
+ const t = Math.max(1, Number.isFinite(e) ? e : 1);
104
+ this.renderer.setPixelRatio(t);
76
105
  }
77
106
  /**
78
107
  * Create camera based on perspective type
79
108
  */
80
109
  createCameraForPerspective(e) {
81
110
  switch (this._perspective) {
82
- case t.ThirdPerson:
111
+ case s.ThirdPerson:
83
112
  return this.createThirdPersonCamera(e);
84
- case t.FirstPerson:
113
+ case s.FirstPerson:
85
114
  return this.createFirstPersonCamera(e);
86
- case t.Isometric:
115
+ case s.Isometric:
87
116
  return this.createIsometricCamera(e);
88
- case t.Flat2D:
117
+ case s.Flat2D:
89
118
  return this.createFlat2DCamera(e);
90
- case t.Fixed2D:
119
+ case s.Fixed2D:
91
120
  return this.createFixed2DCamera(e);
92
121
  default:
93
122
  return this.createThirdPersonCamera(e);
@@ -98,40 +127,40 @@ class S {
98
127
  */
99
128
  initializePerspectiveController() {
100
129
  switch (this._perspective) {
101
- case t.ThirdPerson:
102
- this.perspectiveController = new n();
130
+ case s.ThirdPerson:
131
+ this.perspectiveController = new h();
103
132
  break;
104
- case t.Fixed2D:
105
- this.perspectiveController = new p();
133
+ case s.Fixed2D:
134
+ this.perspectiveController = new m();
106
135
  break;
107
136
  default:
108
- this.perspectiveController = new n();
137
+ this.perspectiveController = new h();
109
138
  }
110
139
  }
111
140
  createThirdPersonCamera(e) {
112
- return new a(75, e, 0.1, 1e3);
141
+ return new o(75, e, 0.1, 1e3);
113
142
  }
114
143
  createFirstPersonCamera(e) {
115
- return new a(75, e, 0.1, 1e3);
144
+ return new o(75, e, 0.1, 1e3);
116
145
  }
117
146
  createIsometricCamera(e) {
118
- return new o(this.frustumSize * e / -2, this.frustumSize * e / 2, this.frustumSize / 2, this.frustumSize / -2, 1, 1e3);
147
+ return new n(this.frustumSize * e / -2, this.frustumSize * e / 2, this.frustumSize / 2, this.frustumSize / -2, 1, 1e3);
119
148
  }
120
149
  createFlat2DCamera(e) {
121
- return new o(this.frustumSize * e / -2, this.frustumSize * e / 2, this.frustumSize / 2, this.frustumSize / -2, 1, 1e3);
150
+ return new n(this.frustumSize * e / -2, this.frustumSize * e / 2, this.frustumSize / 2, this.frustumSize / -2, 1, 1e3);
122
151
  }
123
152
  createFixed2DCamera(e) {
124
153
  return this.createFlat2DCamera(e);
125
154
  }
126
155
  // Movement methods
127
156
  moveCamera(e) {
128
- (this._perspective === t.Flat2D || this._perspective === t.Fixed2D) && (this.frustumSize = e.z), this.cameraRig.position.set(e.x, e.y, e.z);
157
+ (this._perspective === s.Flat2D || this._perspective === s.Fixed2D) && (this.frustumSize = e.z), this.cameraRig.position.set(e.x, e.y, e.z);
129
158
  }
130
159
  move(e) {
131
160
  this.moveCamera(e);
132
161
  }
133
- rotate(e, r, s) {
134
- this.cameraRig.rotateX(e), this.cameraRig.rotateY(r), this.cameraRig.rotateZ(s);
162
+ rotate(e, t, r) {
163
+ this.cameraRig.rotateX(e), this.cameraRig.rotateY(t), this.cameraRig.rotateZ(r);
135
164
  }
136
165
  /**
137
166
  * Get the DOM element for the renderer
@@ -139,7 +168,41 @@ class S {
139
168
  getDomElement() {
140
169
  return this.renderer.domElement;
141
170
  }
171
+ applyDebugState(e) {
172
+ this.debugStateSnapshot = {
173
+ enabled: e.enabled,
174
+ selected: [...e.selected]
175
+ }, e.enabled ? (this.enableOrbitControls(), this.updateOrbitTargetFromSelection(e.selected)) : (this.orbitTarget = null, this.disableOrbitControls());
176
+ }
177
+ enableOrbitControls() {
178
+ this.orbitControls || (this.orbitControls = new l(this.camera, this.renderer.domElement), this.orbitControls.enableDamping = !0, this.orbitControls.dampingFactor = 0.05, this.orbitControls.screenSpacePanning = !1, this.orbitControls.minDistance = 1, this.orbitControls.maxDistance = 500, this.orbitControls.maxPolarAngle = Math.PI / 2);
179
+ }
180
+ disableOrbitControls() {
181
+ this.orbitControls && (this.orbitControls.dispose(), this.orbitControls = null);
182
+ }
183
+ updateOrbitTargetFromSelection(e) {
184
+ if (!this.debugDelegate || e.length === 0) {
185
+ this.orbitTarget = null;
186
+ return;
187
+ }
188
+ for (let t = e.length - 1; t >= 0; t -= 1) {
189
+ const r = e[t], i = this.debugDelegate.resolveTarget(r);
190
+ if (i) {
191
+ this.orbitTarget = i, this.orbitControls && (i.getWorldPosition(this.orbitTargetWorldPos), this.orbitControls.target.copy(this.orbitTargetWorldPos));
192
+ return;
193
+ }
194
+ }
195
+ this.orbitTarget = null;
196
+ }
197
+ detachDebugDelegate() {
198
+ if (this.debugUnsubscribe)
199
+ try {
200
+ this.debugUnsubscribe();
201
+ } catch {
202
+ }
203
+ this.debugUnsubscribe = null, this.debugDelegate = null;
204
+ }
142
205
  }
143
206
  export {
144
- S as ZylemCamera
207
+ F as ZylemCamera
145
208
  };
@@ -3,11 +3,6 @@ import { Vec3 } from "../core/vector";
3
3
  import { CollisionOptions } from "./collision";
4
4
  export declare function getOrCreateCollisionGroupId(type: string): number;
5
5
  export declare function createCollisionFilter(allowedTypes: string[]): number;
6
- export declare function setCollisionGroups(collider: ColliderDesc, entityType: string, allowedTypes: string[]): void;
7
- export type ColliderFunction = () => ColliderDesc;
8
- export type RigidBodyFunction = ({ isDynamicBody }: {
9
- isDynamicBody: boolean;
10
- }) => RigidBodyDesc;
11
6
  export declare class CollisionBuilder {
12
7
  static: boolean;
13
8
  sensor: boolean;
@@ -19,3 +14,4 @@ export declare class CollisionBuilder {
19
14
  isDynamicBody?: boolean | undefined;
20
15
  }): RigidBodyDesc;
21
16
  }
17
+ //# sourceMappingURL=collision-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collision-builder.d.ts","sourceRoot":"","sources":["../../../src/lib/collision/collision-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,YAAY,EAAE,aAAa,EAA0B,MAAM,2BAA2B,CAAC;AACtH,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAK/C,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOhE;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,CAOpE;AAED,qBAAa,gBAAgB;IAC5B,MAAM,EAAE,OAAO,CAAS;IACxB,MAAM,EAAE,OAAO,CAAS;IACxB,OAAO,EAAE,IAAI,CAAwB;IAErC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC;IAmBxE,aAAa,CAAC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAMhE,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,YAAY;IAOjD,QAAQ,CAAC,EAAE,aAAoB,EAAE;;KAAA,GAAG,aAAa;CASjD"}
@@ -3,9 +3,4 @@ export interface CollisionHandlerDelegate {
3
3
  handlePostCollision(params: any): boolean;
4
4
  handleIntersectionEvent(params: any): void;
5
5
  }
6
- export declare class CollisionHandler {
7
- entityReference: CollisionHandlerDelegate;
8
- constructor(entity: CollisionHandlerDelegate);
9
- handlePostCollision(params: any): boolean;
10
- handleIntersectionEvent(params: any): void;
11
- }
6
+ //# sourceMappingURL=collision-delegate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collision-delegate.d.ts","sourceRoot":"","sources":["../../../src/lib/collision/collision-delegate.ts"],"names":[],"mappings":"AACA,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,wBAAwB,CAEpF;AAED,MAAM,WAAW,wBAAwB;IACxC,mBAAmB,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC;IAC1C,uBAAuB,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC;CAC3C"}
@@ -8,3 +8,4 @@ import { GameEntity } from '../entities/entity';
8
8
  * @returns The entity for method chaining
9
9
  */
10
10
  export declare function collisionGroup<T extends GameEntity<any>>(entity: T, allowedTypes: string[]): T;
11
+ //# sourceMappingURL=collision-group.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collision-group.d.ts","sourceRoot":"","sources":["../../../src/lib/collision/collision-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGhD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,CAAC,GAAG,CAAC,EACvD,MAAM,EAAE,CAAC,EACT,YAAY,EAAE,MAAM,EAAE,GACpB,CAAC,CAiBH"}
@@ -15,3 +15,4 @@ export declare function buildCollisionMask(...types: string[]): CollisionMask;
15
15
  * Tests whether the given entity's collision type is included in the mask.
16
16
  */
17
17
  export declare function entityMatchesMask(entity: GameEntity<any>, mask: CollisionMask): boolean;
18
+ //# sourceMappingURL=collision-mask.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collision-mask.d.ts","sourceRoot":"","sources":["../../../src/lib/collision/collision-mask.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAA;CAAE,CAAC;AAE3E;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,aAAa,CAEpE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,aAAa,GAAG,OAAO,CAIvF"}
@@ -8,15 +8,6 @@ export declare class BaseCollision {
8
8
  isDynamicBody?: boolean | undefined;
9
9
  });
10
10
  }
11
- export declare const CollisionComponent: import("bitecs").ComponentType<{
12
- static: "i8";
13
- isSensor: "i8";
14
- bodyDescription: "i8";
15
- }>;
16
- export declare const CollisionDebugComponent: import("bitecs").ComponentType<{
17
- active: "i8";
18
- color: "f32";
19
- }>;
20
11
  export interface CollisionOptions {
21
12
  static?: boolean;
22
13
  sensor?: boolean;
@@ -25,3 +16,4 @@ export interface CollisionOptions {
25
16
  collisionType?: string;
26
17
  collisionFilter?: string[];
27
18
  }
19
+ //# sourceMappingURL=collision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collision.d.ts","sourceRoot":"","sources":["../../../src/lib/collision/collision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAiB,MAAM,2BAA2B,CAAC;AAEzE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,qBAAa,aAAa;IACzB,MAAM,EAAE,OAAO,CAAS;IACxB,QAAQ,EAAE,OAAO,CAAS;IAC1B,eAAe,EAAE,aAAa,CAAC;gBAEnB,EAAE,aAAoB,EAAE;;KAAA;CAQpC;AAaD,MAAM,WAAW,gBAAgB;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B"}
@@ -12,3 +12,4 @@ export type CollisionSelector = {
12
12
  * Returns true if the `other` entity matches the provided selector.
13
13
  */
14
14
  export declare function matchesCollisionSelector(other: GameEntity<any>, selector?: CollisionSelector): boolean;
15
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/collision/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;AAEtD,MAAM,MAAM,iBAAiB,GAC1B;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,aAAa,GAAG,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,OAAO,CAAA;CAAE,CAAC;AAEjD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,EAAE,iBAAiB,GAAG,OAAO,CA0BtG"}
@@ -20,3 +20,4 @@ export declare class ZylemWorld implements Entity<ZylemWorld> {
20
20
  updateColliders(delta: number): void;
21
21
  destroy(): void;
22
22
  }
23
+ //# sourceMappingURL=world.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"world.d.ts","sourceRoot":"","sources":["../../../src/lib/collision/world.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAG7D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,qBAAa,UAAW,YAAW,MAAM,CAAC,UAAU,CAAC;IACpD,IAAI,SAAW;IACf,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAa;IACvD,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAa;IAC/D,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAa;WAEzC,WAAW,CAAC,OAAO,EAAE,OAAO;gBAM7B,KAAK,EAAE,KAAK;IAIxB,SAAS,CAAC,MAAM,EAAE,GAAG;IAwBrB,aAAa,CAAC,MAAM,EAAE,GAAG;IAMzB,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC;IAWrC,KAAK;IAEL,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC;IAUjC,4BAA4B,CAAC,KAAK,EAAE,MAAM;IAc1C,eAAe,CAAC,KAAK,EAAE,MAAM;IAwC7B,OAAO;CAaP"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=asset-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset-manager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/asset-manager.ts"],"names":[],"mappings":""}
@@ -65,3 +65,4 @@ export interface CleanupContext<T, TGlobals extends Record<string, unknown> = an
65
65
  me: T;
66
66
  globals: TGlobals;
67
67
  }
68
+ //# sourceMappingURL=base-node-life-cycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-node-life-cycle.d.ts","sourceRoot":"","sources":["../../../src/lib/core/base-node-life-cycle.ts"],"names":[],"mappings":"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"}
@@ -34,3 +34,4 @@ export declare abstract class BaseNode<Options = any, T = any> {
34
34
  getOptions(): Options;
35
35
  setOptions(options: Partial<Options>): void;
36
36
  }
37
+ //# sourceMappingURL=base-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-node.d.ts","sourceRoot":"","sources":["../../../src/lib/core/base-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EACN,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,EACf,aAAa,EACb,cAAc,EACd,YAAY,EACZ,aAAa,EACb,aAAa,EACb,cAAc,EACd,MAAM,wBAAwB,CAAC;AAIhC,MAAM,MAAM,eAAe,CAAC,CAAC,GAAG,GAAG,IAAI,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAE7D,8BAAsB,QAAQ,CAAC,OAAO,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG;IACpD,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAAQ;IACzC,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAM;IAC7B,SAAS,EAAE,QAAQ,EAAE,CAAM;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAK;IAChB,IAAI,EAAE,MAAM,CAAM;IAClB,IAAI,EAAE,MAAM,CAAM;IAClB,gBAAgB,EAAE,OAAO,CAAS;IAEzC,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,CAAa;IACvC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAa;IACzC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAa;IACzC,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,CAAa;IAC3C,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,CAAa;gBAE/B,IAAI,GAAE,eAAe,EAAO;IAQjC,SAAS,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,GAAG,IAAI;IAIxC,SAAS,IAAI,QAAQ,GAAG,IAAI;IAI5B,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAK7B,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAQhC,WAAW,IAAI,QAAQ,EAAE;IAIzB,WAAW,IAAI,OAAO;aAIb,MAAM,IAAI,CAAC;IAE3B,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI;IAE3D,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI;IAE7D,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAE/D,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjE,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC;IAYpC,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI;IAa7C,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,IAAI;IAW/C,UAAU,IAAI,OAAO;IAIrB,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI;CAGlD"}
@@ -42,7 +42,7 @@ class s {
42
42
  return this.children.length > 0;
43
43
  }
44
44
  nodeSetup(t) {
45
- typeof this._setup == "function" && this._setup(t), this.setup && this.setup(t), this.children.forEach((e) => e.nodeSetup(t));
45
+ this.markedForRemoval = !1, typeof this._setup == "function" && this._setup(t), this.setup && this.setup(t), this.children.forEach((e) => e.nodeSetup(t));
46
46
  }
47
47
  nodeUpdate(t) {
48
48
  this.markedForRemoval || (typeof this._update == "function" && this._update(t), this.update && this.update(t), this.children.forEach((e) => e.nodeUpdate(t)));
@@ -1,9 +1,5 @@
1
1
  import { AnimationClip, Object3D } from 'three';
2
2
  import { GLTF } from 'three/addons/loaders/GLTFLoader.js';
3
- export declare enum FileExtensionTypes {
4
- FBX = "fbx",
5
- GLTF = "gltf"
6
- }
7
3
  export interface AssetLoaderResult {
8
4
  object?: Object3D;
9
5
  animation?: AnimationClip;
@@ -13,17 +9,8 @@ export interface IAssetLoader {
13
9
  load(file: string): Promise<AssetLoaderResult>;
14
10
  isSupported(file: string): boolean;
15
11
  }
16
- export declare class FBXAssetLoader implements IAssetLoader {
17
- private loader;
18
- isSupported(file: string): boolean;
19
- load(file: string): Promise<AssetLoaderResult>;
20
- }
21
- export declare class GLTFAssetLoader implements IAssetLoader {
22
- private loader;
23
- isSupported(file: string): boolean;
24
- load(file: string): Promise<AssetLoaderResult>;
25
- }
26
12
  export declare class EntityAssetLoader {
27
13
  private loaders;
28
14
  loadFile(file: string): Promise<AssetLoaderResult>;
29
15
  }
16
+ //# sourceMappingURL=entity-asset-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity-asset-loader.d.ts","sourceRoot":"","sources":["../../../src/lib/core/entity-asset-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEhD,OAAO,EAAE,IAAI,EAAc,MAAM,oCAAoC,CAAC;AAOtE,MAAM,WAAW,iBAAiB;IACjC,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,IAAI,CAAC,EAAE,IAAI,CAAC;CACZ;AAED,MAAM,WAAW,YAAY;IAC5B,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;CACnC;AAmDD,qBAAa,iBAAiB;IAC7B,OAAO,CAAC,OAAO,CAGb;IAEI,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CASxD"}
@@ -50,8 +50,5 @@ class u {
50
50
  }
51
51
  }
52
52
  export {
53
- u as EntityAssetLoader,
54
- l as FBXAssetLoader,
55
- t as FileExtensionTypes,
56
- p as GLTFAssetLoader
53
+ u as EntityAssetLoader
57
54
  };
@@ -2,3 +2,4 @@ export declare class EntityErrors {
2
2
  errorEntityBody(): string;
3
3
  errorIncompatibleFileType(extension?: string): string;
4
4
  }
5
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/lib/core/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,YAAY;IAExB,eAAe,IAAI,MAAM;IAMzB,yBAAyB,CAAC,SAAS,GAAE,MAAkB,GAAG,MAAM;CAKhE"}
@@ -1,2 +1,3 @@
1
1
  /** Vite build flags */
2
2
  export declare const DEBUG_FLAG: boolean;
3
+ //# sourceMappingURL=flags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flags.d.ts","sourceRoot":"","sources":["../../../src/lib/core/flags.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,eAAO,MAAM,UAAU,SAA6C,CAAC"}
@@ -2,3 +2,4 @@ export * from '../game/zylem-game';
2
2
  export * from '../stage/zylem-stage';
3
3
  export * from './vessel';
4
4
  export * from '../types';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/core/index.ts"],"names":[],"mappings":"AACA,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC"}
@@ -77,3 +77,4 @@ export declare const loadFullGame: () => Promise<{
77
77
  scene: typeof import("../graphics/zylem-scene");
78
78
  };
79
79
  }>;
80
+ //# sourceMappingURL=lazy-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lazy-loader.d.ts","sourceRoot":"","sources":["../../../src/lib/core/lazy-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,eAAO,MAAM,cAAc;;;;;EAQ1B,CAAC;AAGF,eAAO,MAAM,SAAS,oDAGrB,CAAC;AAEF,eAAO,MAAM,SAAS,wDAGrB,CAAC;AAEF,eAAO,MAAM,YAAY;;;EAMxB,CAAC;AAEF,eAAO,MAAM,WAAW;;;EAMvB,CAAC;AAGF,eAAO,MAAM,UAAU;;;EAMtB,CAAC;AAGF,eAAO,MAAM,eAAe,oDAG3B,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,YAAY,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,wOAiBpG,CAAC;AAGF,eAAO,MAAM,aAAa,8DAGzB,CAAC;AAGF,eAAO,MAAM,YAAY;;;EAMxB,CAAC;AAGF,eAAO,MAAM,SAAS;;;;EAOrB,CAAC;AAEF,eAAO,MAAM,cAAc,6CAG1B,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBxB,CAAC"}
@@ -14,3 +14,4 @@ export declare abstract class LifeCycleBase<TSelf> {
14
14
  nodeUpdate(context: UpdateContext<TSelf>): void;
15
15
  nodeDestroy(context: DestroyContext<TSelf>): void;
16
16
  }
17
+ //# sourceMappingURL=lifecycle-base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle-base.d.ts","sourceRoot":"","sources":["../../../src/lib/core/lifecycle-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAErI;;;GAGG;AACH,8BAAsB,aAAa,CAAC,KAAK;IACxC,MAAM,EAAE,cAAc,CAAC,KAAK,CAAC,CAAa;IAC1C,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAa;IACxC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,CAAa;IAE5C,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,GAAG,IAAI;IAC7D,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,IAAI;IAC/D,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI;IAEjE,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC;IAStC,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC;IASxC,WAAW,CAAC,OAAO,EAAE,cAAc,CAAC,KAAK,CAAC;CAQ1C"}
@@ -2,10 +2,7 @@ export type ZylemShaderObject = {
2
2
  fragment: string;
3
3
  vertex: string;
4
4
  };
5
- export declare const starShader: ZylemShaderObject;
6
- export declare const fireShader: ZylemShaderObject;
7
- export declare const standardShader: ZylemShaderObject;
8
- export declare const debugShader: ZylemShaderObject;
9
5
  export type ZylemShaderType = 'standard' | 'fire' | 'star' | 'debug';
10
6
  declare const shaderMap: Map<ZylemShaderType, ZylemShaderObject>;
11
7
  export default shaderMap;
8
+ //# sourceMappingURL=preset-shader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preset-shader.d.ts","sourceRoot":"","sources":["../../../src/lib/core/preset-shader.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,iBAAiB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAsBrE,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAErE,QAAA,MAAM,SAAS,EAAE,GAAG,CAAC,eAAe,EAAE,iBAAiB,CAAa,CAAC;AAMrE,eAAe,SAAS,CAAC"}
@@ -22,9 +22,5 @@ e.set("fire", m);
22
22
  e.set("star", s);
23
23
  e.set("debug", u);
24
24
  export {
25
- u as debugShader,
26
- e as default,
27
- m as fireShader,
28
- n as standardShader,
29
- s as starShader
25
+ e as default
30
26
  };
@@ -88,19 +88,5 @@ declare class Timer {
88
88
  */
89
89
  update(timestamp?: number): Timer;
90
90
  }
91
- /**
92
- * A special version of a timer with a fixed time delta value.
93
- * Can be useful for testing and debugging purposes.
94
- *
95
- * @augments Timer
96
- */
97
- declare class FixedTimer extends Timer {
98
- /**
99
- * Constructs a new timer.
100
- *
101
- * @param {number} [fps=60] - The fixed FPS of this timer.
102
- */
103
- constructor(fps?: number);
104
- update(): FixedTimer;
105
- }
106
- export { Timer, FixedTimer };
91
+ export { Timer, };
92
+ //# sourceMappingURL=Timer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Timer.d.ts","sourceRoot":"","sources":["../../../../src/lib/core/three-addons/Timer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,cAAM,KAAK;IACV,SAAS,CAAC,aAAa,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,SAAS,EAAE,QAAQ,GAAG,IAAI,CAAC;IACrC,SAAS,CAAC,sBAAsB,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;IAEtD;;OAEG;;IAiBH;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAgBjC;;OAEG;IACH,UAAU,IAAI,IAAI;IAalB;;;;OAIG;IACH,QAAQ,IAAI,MAAM;IAMlB;;;;OAIG;IACH,UAAU,IAAI,MAAM;IAMpB;;;;OAIG;IACH,YAAY,IAAI,MAAM;IAMtB;;;;;;OAMG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK;IAQtC;;;;OAIG;IACH,KAAK,IAAI,KAAK;IAQd;;;OAGG;IACH,OAAO,IAAI,IAAI;IAMf;;;;;;;;;OASG;IACH,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK;CAoBjC;AA4CD,OAAO,EAAE,KAAK,GAAI,CAAC"}
@@ -1,11 +1,13 @@
1
1
  import { BaseNode } from '../base-node';
2
2
  import { Stage } from '../../stage/stage';
3
3
  import { GameEntityLifeCycle } from '../../entities/entity';
4
- import { BasicTypes, GlobalVariablesType, ZylemGameConfig } from '../../game/game-interfaces';
4
+ import { BaseGlobals, ZylemGameConfig } from '../../game/game-interfaces';
5
5
  import { GameConfigLike } from '~/lib/game/game-config';
6
- export type GameOptions<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType> = Array<ZylemGameConfig<Stage, any, TGlobals> | GameConfigLike | Stage | GameEntityLifeCycle | BaseNode>;
7
- export declare function convertNodes<TGlobals extends Record<string, BasicTypes> = GlobalVariablesType>(_options: GameOptions<TGlobals>): Promise<{
6
+ export type GameOptions<TGlobals extends BaseGlobals> = Array<ZylemGameConfig<Stage, any, TGlobals> | GameConfigLike | Stage | GameEntityLifeCycle | BaseNode>;
7
+ export declare function convertNodes<TGlobals extends BaseGlobals>(_options: GameOptions<TGlobals>): Promise<{
8
8
  id: string;
9
9
  globals: TGlobals;
10
10
  stages: Stage[];
11
11
  }>;
12
+ export declare function hasStages<TGlobals extends BaseGlobals>(_options: GameOptions<TGlobals>): Boolean;
13
+ //# sourceMappingURL=nodes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../../../src/lib/core/utility/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAc,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAMxD,MAAM,MAAM,WAAW,CAAC,QAAQ,SAAS,WAAW,IAAI,KAAK,CAC5D,eAAe,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,GACrC,cAAc,GACd,KAAK,GACL,mBAAmB,GACnB,QAAQ,CACR,CAAC;AAEF,wBAAsB,YAAY,CAAC,QAAQ,SAAS,WAAW,EAC9D,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,GAC7B,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,KAAK,EAAE,CAAA;CAAE,CAAC,CAgC7D;AAED,wBAAgB,SAAS,CAAC,QAAQ,SAAS,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,OAAO,CAGhG"}