@vpmedia/phaser 1.112.0 → 1.113.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/dist/index.js +1261 -1314
  2. package/dist/index.js.map +1 -1
  3. package/dist/phaser/core/animation.d.ts +14 -10
  4. package/dist/phaser/core/animation.d.ts.map +1 -1
  5. package/dist/phaser/core/animation_manager.d.ts +10 -8
  6. package/dist/phaser/core/animation_manager.d.ts.map +1 -1
  7. package/dist/phaser/core/animation_parser.d.ts +5 -4
  8. package/dist/phaser/core/animation_parser.d.ts.map +1 -1
  9. package/dist/phaser/core/array_set.d.ts.map +1 -1
  10. package/dist/phaser/core/cache.d.ts +4 -3
  11. package/dist/phaser/core/cache.d.ts.map +1 -1
  12. package/dist/phaser/core/const.d.ts.map +1 -1
  13. package/dist/phaser/core/device.d.ts.map +1 -1
  14. package/dist/phaser/core/device_util.d.ts.map +1 -1
  15. package/dist/phaser/core/dom.d.ts +3 -2
  16. package/dist/phaser/core/dom.d.ts.map +1 -1
  17. package/dist/phaser/core/event_manager.d.ts.map +1 -1
  18. package/dist/phaser/core/factory.d.ts +1 -1
  19. package/dist/phaser/core/factory.d.ts.map +1 -1
  20. package/dist/phaser/core/frame.d.ts.map +1 -1
  21. package/dist/phaser/core/frame_data.d.ts.map +1 -1
  22. package/dist/phaser/core/game.d.ts.map +1 -1
  23. package/dist/phaser/core/input.d.ts +8 -6
  24. package/dist/phaser/core/input.d.ts.map +1 -1
  25. package/dist/phaser/core/input_handler.d.ts +40 -30
  26. package/dist/phaser/core/input_handler.d.ts.map +1 -1
  27. package/dist/phaser/core/input_mouse.d.ts +3 -2
  28. package/dist/phaser/core/input_mouse.d.ts.map +1 -1
  29. package/dist/phaser/core/input_mspointer.d.ts +3 -2
  30. package/dist/phaser/core/input_mspointer.d.ts.map +1 -1
  31. package/dist/phaser/core/input_pointer.d.ts +6 -4
  32. package/dist/phaser/core/input_pointer.d.ts.map +1 -1
  33. package/dist/phaser/core/input_touch.d.ts +3 -2
  34. package/dist/phaser/core/input_touch.d.ts.map +1 -1
  35. package/dist/phaser/core/loader.d.ts +4 -3
  36. package/dist/phaser/core/loader.d.ts.map +1 -1
  37. package/dist/phaser/core/loader_parser.d.ts +9 -8
  38. package/dist/phaser/core/loader_parser.d.ts.map +1 -1
  39. package/dist/phaser/core/raf.d.ts +3 -2
  40. package/dist/phaser/core/raf.d.ts.map +1 -1
  41. package/dist/phaser/core/registry.d.ts +7 -0
  42. package/dist/phaser/core/registry.d.ts.map +1 -0
  43. package/dist/phaser/core/scale_manager.d.ts +1 -1
  44. package/dist/phaser/core/scale_manager.d.ts.map +1 -1
  45. package/dist/phaser/core/scene.d.ts +0 -1
  46. package/dist/phaser/core/scene.d.ts.map +1 -1
  47. package/dist/phaser/core/scene_manager.d.ts +1 -1
  48. package/dist/phaser/core/scene_manager.d.ts.map +1 -1
  49. package/dist/phaser/core/signal.d.ts +0 -1
  50. package/dist/phaser/core/signal.d.ts.map +1 -1
  51. package/dist/phaser/core/signal_binding.d.ts +4 -3
  52. package/dist/phaser/core/signal_binding.d.ts.map +1 -1
  53. package/dist/phaser/core/sound.d.ts +6 -4
  54. package/dist/phaser/core/sound.d.ts.map +1 -1
  55. package/dist/phaser/core/sound_manager.d.ts +3 -2
  56. package/dist/phaser/core/sound_manager.d.ts.map +1 -1
  57. package/dist/phaser/core/sound_sprite.d.ts +5 -4
  58. package/dist/phaser/core/sound_sprite.d.ts.map +1 -1
  59. package/dist/phaser/core/stage.d.ts +3 -2
  60. package/dist/phaser/core/stage.d.ts.map +1 -1
  61. package/dist/phaser/core/time.d.ts +1 -1
  62. package/dist/phaser/core/time.d.ts.map +1 -1
  63. package/dist/phaser/core/timer.d.ts +1 -1
  64. package/dist/phaser/core/timer.d.ts.map +1 -1
  65. package/dist/phaser/core/timer_event.d.ts.map +1 -1
  66. package/dist/phaser/core/tween.d.ts +10 -7
  67. package/dist/phaser/core/tween.d.ts.map +1 -1
  68. package/dist/phaser/core/tween_data.d.ts +3 -2
  69. package/dist/phaser/core/tween_data.d.ts.map +1 -1
  70. package/dist/phaser/core/tween_easing.d.ts.map +1 -1
  71. package/dist/phaser/core/tween_manager.d.ts +3 -2
  72. package/dist/phaser/core/tween_manager.d.ts.map +1 -1
  73. package/dist/phaser/core/world.d.ts +3 -2
  74. package/dist/phaser/core/world.d.ts.map +1 -1
  75. package/dist/phaser/display/bitmap_text.d.ts +3 -2
  76. package/dist/phaser/display/bitmap_text.d.ts.map +1 -1
  77. package/dist/phaser/display/button.d.ts +3 -2
  78. package/dist/phaser/display/button.d.ts.map +1 -1
  79. package/dist/phaser/display/canvas/buffer.d.ts.map +1 -1
  80. package/dist/phaser/display/canvas/graphics.d.ts +7 -6
  81. package/dist/phaser/display/canvas/graphics.d.ts.map +1 -1
  82. package/dist/phaser/display/canvas/pool.d.ts +2 -2
  83. package/dist/phaser/display/canvas/pool.d.ts.map +1 -1
  84. package/dist/phaser/display/canvas/renderer.d.ts +10 -8
  85. package/dist/phaser/display/canvas/renderer.d.ts.map +1 -1
  86. package/dist/phaser/display/canvas/tinter.d.ts +3 -2
  87. package/dist/phaser/display/canvas/tinter.d.ts.map +1 -1
  88. package/dist/phaser/display/canvas/util.d.ts +2 -2
  89. package/dist/phaser/display/canvas/util.d.ts.map +1 -1
  90. package/dist/phaser/display/display_object.d.ts +14 -12
  91. package/dist/phaser/display/display_object.d.ts.map +1 -1
  92. package/dist/phaser/display/graphics.d.ts +8 -5
  93. package/dist/phaser/display/graphics.d.ts.map +1 -1
  94. package/dist/phaser/display/graphics_data.d.ts.map +1 -1
  95. package/dist/phaser/display/graphics_data_util.d.ts.map +1 -1
  96. package/dist/phaser/display/group.d.ts +4 -3
  97. package/dist/phaser/display/group.d.ts.map +1 -1
  98. package/dist/phaser/display/image.d.ts +13 -10
  99. package/dist/phaser/display/image.d.ts.map +1 -1
  100. package/dist/phaser/display/sprite_batch.d.ts +3 -2
  101. package/dist/phaser/display/sprite_batch.d.ts.map +1 -1
  102. package/dist/phaser/display/sprite_util.d.ts +18 -15
  103. package/dist/phaser/display/sprite_util.d.ts.map +1 -1
  104. package/dist/phaser/display/text.d.ts +11 -9
  105. package/dist/phaser/display/text.d.ts.map +1 -1
  106. package/dist/phaser/display/webgl/abstract_filter.d.ts.map +1 -1
  107. package/dist/phaser/display/webgl/base_texture.d.ts.map +1 -1
  108. package/dist/phaser/display/webgl/blend_manager.d.ts +0 -1
  109. package/dist/phaser/display/webgl/blend_manager.d.ts.map +1 -1
  110. package/dist/phaser/display/webgl/earcut.d.ts +1 -1
  111. package/dist/phaser/display/webgl/earcut.d.ts.map +1 -1
  112. package/dist/phaser/display/webgl/earcut_node.d.ts.map +1 -1
  113. package/dist/phaser/display/webgl/fast_sprite_batch.d.ts +4 -3
  114. package/dist/phaser/display/webgl/fast_sprite_batch.d.ts.map +1 -1
  115. package/dist/phaser/display/webgl/filter_manager.d.ts +2 -1
  116. package/dist/phaser/display/webgl/filter_manager.d.ts.map +1 -1
  117. package/dist/phaser/display/webgl/filter_texture.d.ts +2 -1
  118. package/dist/phaser/display/webgl/filter_texture.d.ts.map +1 -1
  119. package/dist/phaser/display/webgl/graphics.d.ts +7 -6
  120. package/dist/phaser/display/webgl/graphics.d.ts.map +1 -1
  121. package/dist/phaser/display/webgl/graphics_data.d.ts +2 -1
  122. package/dist/phaser/display/webgl/graphics_data.d.ts.map +1 -1
  123. package/dist/phaser/display/webgl/render_texture.d.ts +4 -2
  124. package/dist/phaser/display/webgl/render_texture.d.ts.map +1 -1
  125. package/dist/phaser/display/webgl/renderer.d.ts +16 -11
  126. package/dist/phaser/display/webgl/renderer.d.ts.map +1 -1
  127. package/dist/phaser/display/webgl/shader/complex.d.ts +16 -6
  128. package/dist/phaser/display/webgl/shader/complex.d.ts.map +1 -1
  129. package/dist/phaser/display/webgl/shader/fast.d.ts +19 -7
  130. package/dist/phaser/display/webgl/shader/fast.d.ts.map +1 -1
  131. package/dist/phaser/display/webgl/shader/normal.d.ts +33 -12
  132. package/dist/phaser/display/webgl/shader/normal.d.ts.map +1 -1
  133. package/dist/phaser/display/webgl/shader/primitive.d.ts +15 -6
  134. package/dist/phaser/display/webgl/shader/primitive.d.ts.map +1 -1
  135. package/dist/phaser/display/webgl/shader/strip.d.ts +15 -6
  136. package/dist/phaser/display/webgl/shader/strip.d.ts.map +1 -1
  137. package/dist/phaser/display/webgl/shader_manager.d.ts +16 -11
  138. package/dist/phaser/display/webgl/shader_manager.d.ts.map +1 -1
  139. package/dist/phaser/display/webgl/sprite_batch.d.ts +29 -20
  140. package/dist/phaser/display/webgl/sprite_batch.d.ts.map +1 -1
  141. package/dist/phaser/display/webgl/stencil_manager.d.ts +12 -10
  142. package/dist/phaser/display/webgl/stencil_manager.d.ts.map +1 -1
  143. package/dist/phaser/display/webgl/texture.d.ts +3 -2
  144. package/dist/phaser/display/webgl/texture.d.ts.map +1 -1
  145. package/dist/phaser/display/webgl/texture_util.d.ts.map +1 -1
  146. package/dist/phaser/display/webgl/util.d.ts.map +1 -1
  147. package/dist/phaser/geom/circle.d.ts +4 -1
  148. package/dist/phaser/geom/circle.d.ts.map +1 -1
  149. package/dist/phaser/geom/ellipse.d.ts.map +1 -1
  150. package/dist/phaser/geom/line.d.ts +1 -1
  151. package/dist/phaser/geom/line.d.ts.map +1 -1
  152. package/dist/phaser/geom/matrix.d.ts.map +1 -1
  153. package/dist/phaser/geom/point.d.ts.map +1 -1
  154. package/dist/phaser/geom/polygon.d.ts.map +1 -1
  155. package/dist/phaser/geom/rectangle.d.ts.map +1 -1
  156. package/dist/phaser/geom/rounded_rectangle.d.ts.map +1 -1
  157. package/dist/phaser/geom/util/circle.d.ts.map +1 -1
  158. package/dist/phaser/geom/util/ellipse.d.ts +3 -2
  159. package/dist/phaser/geom/util/ellipse.d.ts.map +1 -1
  160. package/dist/phaser/geom/util/line.d.ts.map +1 -1
  161. package/dist/phaser/geom/util/matrix.d.ts +2 -2
  162. package/dist/phaser/geom/util/matrix.d.ts.map +1 -1
  163. package/dist/phaser/geom/util/point.d.ts.map +1 -1
  164. package/dist/phaser/geom/util/rectangle.d.ts +1 -1
  165. package/dist/phaser/geom/util/rectangle.d.ts.map +1 -1
  166. package/dist/phaser/util/math.d.ts.map +1 -1
  167. package/package.json +5 -5
  168. package/src/phaser/core/animation.ts +64 -60
  169. package/src/phaser/core/animation_manager.ts +50 -53
  170. package/src/phaser/core/animation_parser.ts +9 -9
  171. package/src/phaser/core/array_set.ts +16 -17
  172. package/src/phaser/core/cache.ts +92 -93
  173. package/src/phaser/core/const.ts +1 -1
  174. package/src/phaser/core/device.ts +24 -29
  175. package/src/phaser/core/device_util.ts +22 -26
  176. package/src/phaser/core/dom.ts +54 -65
  177. package/src/phaser/core/event_manager.ts +64 -94
  178. package/src/phaser/core/factory.ts +14 -14
  179. package/src/phaser/core/frame.ts +28 -28
  180. package/src/phaser/core/frame_data.test.ts +100 -0
  181. package/src/phaser/core/frame_data.ts +24 -24
  182. package/src/phaser/core/frame_util.ts +2 -2
  183. package/src/phaser/core/game.ts +47 -48
  184. package/src/phaser/core/input.ts +104 -110
  185. package/src/phaser/core/input_handler.test.ts +113 -0
  186. package/src/phaser/core/input_handler.ts +199 -218
  187. package/src/phaser/core/input_mouse.ts +71 -54
  188. package/src/phaser/core/input_mspointer.ts +52 -39
  189. package/src/phaser/core/input_pointer.ts +81 -80
  190. package/src/phaser/core/input_touch.ts +49 -36
  191. package/src/phaser/core/loader.ts +173 -152
  192. package/src/phaser/core/loader_parser.ts +39 -57
  193. package/src/phaser/core/raf.ts +8 -7
  194. package/src/phaser/core/registry.test.ts +31 -0
  195. package/src/phaser/core/registry.ts +9 -0
  196. package/src/phaser/core/scale_manager.ts +156 -152
  197. package/src/phaser/core/scene.ts +9 -13
  198. package/src/phaser/core/scene_manager.ts +47 -47
  199. package/src/phaser/core/signal.test.ts +4 -4
  200. package/src/phaser/core/signal.ts +41 -52
  201. package/src/phaser/core/signal_binding.ts +26 -25
  202. package/src/phaser/core/signal_dispatch.test.ts +180 -0
  203. package/src/phaser/core/sound.ts +75 -83
  204. package/src/phaser/core/sound_manager.ts +52 -51
  205. package/src/phaser/core/sound_sprite.ts +17 -16
  206. package/src/phaser/core/stage.ts +25 -24
  207. package/src/phaser/core/time.ts +52 -52
  208. package/src/phaser/core/timer.test.ts +187 -0
  209. package/src/phaser/core/timer.ts +82 -69
  210. package/src/phaser/core/timer_event.ts +10 -10
  211. package/src/phaser/core/tween.ts +90 -93
  212. package/src/phaser/core/tween_data.ts +45 -51
  213. package/src/phaser/core/tween_easing.test.ts +106 -0
  214. package/src/phaser/core/tween_easing.ts +151 -123
  215. package/src/phaser/core/tween_manager.ts +19 -18
  216. package/src/phaser/core/world.ts +4 -3
  217. package/src/phaser/display/bitmap_text.ts +56 -64
  218. package/src/phaser/display/button.ts +33 -32
  219. package/src/phaser/display/canvas/buffer.ts +8 -8
  220. package/src/phaser/display/canvas/graphics.ts +36 -37
  221. package/src/phaser/display/canvas/masker.ts +2 -2
  222. package/src/phaser/display/canvas/pool.test.ts +106 -0
  223. package/src/phaser/display/canvas/pool.ts +25 -27
  224. package/src/phaser/display/canvas/renderer.ts +32 -31
  225. package/src/phaser/display/canvas/tinter.ts +25 -25
  226. package/src/phaser/display/canvas/util.ts +7 -10
  227. package/src/phaser/display/display_object.ts +114 -118
  228. package/src/phaser/display/graphics.ts +121 -119
  229. package/src/phaser/display/graphics_data.ts +12 -12
  230. package/src/phaser/display/graphics_data_util.ts +2 -3
  231. package/src/phaser/display/group.ts +50 -57
  232. package/src/phaser/display/image.ts +55 -52
  233. package/src/phaser/display/sprite_batch.ts +3 -2
  234. package/src/phaser/display/sprite_util.ts +48 -54
  235. package/src/phaser/display/text.ts +199 -204
  236. package/src/phaser/display/webgl/abstract_filter.ts +9 -9
  237. package/src/phaser/display/webgl/base_texture.ts +21 -24
  238. package/src/phaser/display/webgl/blend_manager.ts +6 -10
  239. package/src/phaser/display/webgl/earcut.ts +73 -37
  240. package/src/phaser/display/webgl/earcut_node.ts +10 -10
  241. package/src/phaser/display/webgl/fast_sprite_batch.ts +34 -34
  242. package/src/phaser/display/webgl/filter_manager.ts +13 -12
  243. package/src/phaser/display/webgl/filter_texture.ts +14 -13
  244. package/src/phaser/display/webgl/graphics.ts +51 -57
  245. package/src/phaser/display/webgl/graphics_data.ts +15 -14
  246. package/src/phaser/display/webgl/mask_manager.ts +2 -2
  247. package/src/phaser/display/webgl/render_texture.ts +26 -25
  248. package/src/phaser/display/webgl/renderer.ts +57 -62
  249. package/src/phaser/display/webgl/shader/complex.ts +28 -12
  250. package/src/phaser/display/webgl/shader/fast.ts +30 -12
  251. package/src/phaser/display/webgl/shader/normal.ts +70 -57
  252. package/src/phaser/display/webgl/shader/primitive.ts +26 -11
  253. package/src/phaser/display/webgl/shader/shader.test.ts +148 -0
  254. package/src/phaser/display/webgl/shader/strip.ts +27 -12
  255. package/src/phaser/display/webgl/shader_manager.test.ts +124 -0
  256. package/src/phaser/display/webgl/shader_manager.ts +26 -34
  257. package/src/phaser/display/webgl/sprite_batch.ts +67 -61
  258. package/src/phaser/display/webgl/stencil_manager.ts +23 -34
  259. package/src/phaser/display/webgl/texture.ts +43 -50
  260. package/src/phaser/display/webgl/texture_util.ts +2 -3
  261. package/src/phaser/display/webgl/util.ts +26 -25
  262. package/src/phaser/geom/circle.test.ts +2 -3
  263. package/src/phaser/geom/circle.ts +36 -36
  264. package/src/phaser/geom/ellipse.test.ts +73 -71
  265. package/src/phaser/geom/ellipse.ts +14 -14
  266. package/src/phaser/geom/line.test.ts +5 -5
  267. package/src/phaser/geom/line.ts +35 -35
  268. package/src/phaser/geom/matrix.test.ts +1 -1
  269. package/src/phaser/geom/matrix.ts +27 -27
  270. package/src/phaser/geom/point.test.ts +1 -2
  271. package/src/phaser/geom/point.ts +35 -35
  272. package/src/phaser/geom/polygon.test.ts +82 -0
  273. package/src/phaser/geom/polygon.ts +16 -16
  274. package/src/phaser/geom/rectangle.test.ts +14 -14
  275. package/src/phaser/geom/rectangle.ts +83 -75
  276. package/src/phaser/geom/rounded_rectangle.test.ts +1 -7
  277. package/src/phaser/geom/rounded_rectangle.ts +9 -9
  278. package/src/phaser/geom/util/circle.test.ts +25 -23
  279. package/src/phaser/geom/util/circle.ts +9 -18
  280. package/src/phaser/geom/util/ellipse.test.ts +7 -5
  281. package/src/phaser/geom/util/ellipse.ts +3 -2
  282. package/src/phaser/geom/util/line.test.ts +10 -8
  283. package/src/phaser/geom/util/line.ts +6 -16
  284. package/src/phaser/geom/util/matrix.test.ts +20 -18
  285. package/src/phaser/geom/util/matrix.ts +8 -15
  286. package/src/phaser/geom/util/point.test.ts +8 -6
  287. package/src/phaser/geom/util/point.ts +24 -28
  288. package/src/phaser/geom/util/polygon.test.ts +12 -10
  289. package/src/phaser/geom/util/polygon.ts +2 -2
  290. package/src/phaser/geom/util/rectangle.test.ts +10 -8
  291. package/src/phaser/geom/util/rectangle.ts +18 -37
  292. package/src/phaser/geom/util/rounded_rectangle.test.ts +11 -9
  293. package/src/phaser/geom/util/rounded_rectangle.ts +1 -1
  294. package/src/phaser/util/math.test.ts +11 -11
  295. package/src/phaser/util/math.ts +29 -46
@@ -2,13 +2,13 @@ import { Frame } from './frame.js';
2
2
  import { FrameData } from './frame_data.js';
3
3
 
4
4
  export const cloneFrame = (frame: Frame, output: Frame | null = null): Frame => {
5
- const result = output || new Frame(frame.index, frame.x, frame.y, frame.width, frame.height);
5
+ const result = output ?? new Frame(frame.index, frame.x, frame.y, frame.width, frame.height);
6
6
  result.initialize(frame.index, frame.x, frame.y, frame.width, frame.height);
7
7
  return result;
8
8
  };
9
9
 
10
10
  export const cloneFrameData = (frameData: FrameData, output: FrameData | null = null): FrameData => {
11
- const result = output || new FrameData();
11
+ const result = output ?? new FrameData();
12
12
  for (let i = 0; i < frameData.total; i += 1) {
13
13
  result.addFrame(frameData.getFrame(i).clone());
14
14
  }
@@ -18,43 +18,44 @@ import { Stage } from './stage.js';
18
18
  import { Time } from './time.js';
19
19
  import { TweenManager } from './tween_manager.js';
20
20
  import { World } from './world.js';
21
+ import { getRegistry } from './registry.js';
21
22
 
22
23
  export class Game {
23
- config!: any;
24
- id!: number;
25
- parent!: string | HTMLElement;
26
- width!: number;
27
- height!: number;
28
- renderer!: CanvasRenderer | WebGLRenderer;
29
- state!: SceneManager;
30
- isBooted!: boolean;
31
- paused!: boolean;
32
- raf!: RequestAnimationFrame;
33
- add!: GameObjectFactory;
34
- cache!: Cache;
35
- input!: Input;
36
- load!: Loader;
37
- scale!: ScaleManager;
38
- sound!: SoundManager;
39
- stage!: Stage;
40
- time!: Time;
41
- tweens!: TweenManager;
42
- world!: World;
43
- device!: Device;
44
- logger!: Logger;
45
- canvas!: HTMLCanvasElement;
46
- context!:
24
+ public config!: any;
25
+ public id!: number;
26
+ public parent!: string | HTMLElement;
27
+ public width!: number;
28
+ public height!: number;
29
+ public renderer!: CanvasRenderer | WebGLRenderer;
30
+ public state!: SceneManager;
31
+ public isBooted!: boolean;
32
+ public paused!: boolean;
33
+ public raf!: RequestAnimationFrame;
34
+ public add!: GameObjectFactory;
35
+ public cache!: Cache;
36
+ public input!: Input;
37
+ public load!: Loader;
38
+ public scale!: ScaleManager;
39
+ public sound!: SoundManager;
40
+ public stage!: Stage;
41
+ public time!: Time;
42
+ public tweens!: TweenManager;
43
+ public world!: World;
44
+ public device!: Device;
45
+ public logger!: Logger;
46
+ public canvas!: HTMLCanvasElement;
47
+ public context!:
47
48
  | CanvasRenderingContext2D
48
49
  | ImageBitmapRenderingContext
49
50
  | WebGLRenderingContext
50
51
  | WebGL2RenderingContext
51
52
  | null;
52
- onPause!: Signal;
53
- onResume!: Signal;
54
- onBoot!: Signal;
55
- isPaused!: boolean;
56
- contextLostBinded!: any;
57
- contextRestoredBinded!: any;
53
+ public onPause!: Signal;
54
+ public onResume!: Signal;
55
+ public onBoot!: Signal;
56
+ public isPaused!: boolean;
57
+ public contextLostBinded!: any;
58
+ public contextRestoredBinded!: any;
58
59
  /**
59
60
  * Creates a new Game instance.
60
61
  * @param {object} gameConfig - The configuration object for the game.
@@ -75,10 +76,8 @@ export class Game {
75
76
  * @param {string|HTMLElement} gameConfig.parent - The parent element to append the canvas to.
76
77
  * @param {object} gameConfig.state - The initial state object or class.
77
78
  */
78
- constructor(gameConfig: any = {}) {
79
- if (!window.PhaserRegistry) {
80
- window.PhaserRegistry = {};
81
- }
79
+ public constructor(gameConfig: any = {}) {
80
+ getRegistry();
82
81
  this.config = {};
83
82
  this.id = 0;
84
83
  this.parent = '';
@@ -112,7 +111,7 @@ export class Game {
112
111
  /**
113
112
  * Boots the game and initializes all systems.
114
113
  */
115
- boot() {
114
+ public boot() {
116
115
  if (this.isBooted) {
117
116
  return;
118
117
  }
@@ -148,7 +147,7 @@ export class Game {
148
147
  /**
149
148
  * Creates the renderer canvas element.
150
149
  */
151
- createRendererCanvas() {
150
+ public createRendererCanvas() {
152
151
  this.logger.info('createRendererCanvas');
153
152
  if (this.canvas) {
154
153
  removeFromDOM(this.canvas);
@@ -161,7 +160,7 @@ export class Game {
161
160
  if (this.config.canvasStyle) {
162
161
  const canvasStyle = this.config.canvasStyle as Record<string, string>;
163
162
  for (const property of Object.keys(canvasStyle)) {
164
- this.canvas.style.setProperty(property, canvasStyle[property]);
163
+ this.canvas.style.setProperty(property, canvasStyle[property] ?? null);
165
164
  }
166
165
  } else {
167
166
  this.canvas.style.setProperty('-webkit-full-screen', 'width: 100%; height: 100%');
@@ -171,7 +170,7 @@ export class Game {
171
170
  /**
172
171
  * Initializes the renderer and sets up the rendering context.
173
172
  */
174
- initRenderer() {
173
+ public initRenderer() {
175
174
  let isWebGlReady = false;
176
175
  if (this.config.renderType === RENDER_AUTO || this.config.renderType === RENDER_WEBGL) {
177
176
  try {
@@ -186,11 +185,11 @@ export class Game {
186
185
  isWebGlReady = true;
187
186
  } catch (error) {
188
187
  isWebGlReady = false;
189
- if (window.PhaserRegistry?.GL_PROGRAM_INFO_LOG) {
190
- this.logger.warn('WebGL program info', { log: window.PhaserRegistry.GL_PROGRAM_INFO_LOG });
188
+ if (globalThis.PhaserRegistry?.GL_PROGRAM_INFO_LOG) {
189
+ this.logger.warn('WebGL program info', { log: globalThis.PhaserRegistry.GL_PROGRAM_INFO_LOG });
191
190
  }
192
- if (window.PhaserRegistry?.GL_SHADER_INFO_LOG) {
193
- this.logger.warn('WebGL shader info', { log: window.PhaserRegistry.GL_SHADER_INFO_LOG });
191
+ if (globalThis.PhaserRegistry?.GL_SHADER_INFO_LOG) {
192
+ this.logger.warn('WebGL shader info', { log: globalThis.PhaserRegistry.GL_SHADER_INFO_LOG });
194
193
  }
195
194
  const typedError = error instanceof Error ? error : new Error(String(error));
196
195
  this.logger.fatal('Game', { error: typedError });
@@ -222,7 +221,7 @@ export class Game {
222
221
  * @param {string} key - The configuration key to parse.
223
222
  * @param {*} defaultValue - The default value if the key is not found in config.
224
223
  */
225
- parseConfigElement(config: any, key: string, defaultValue?: any) {
224
+ public parseConfigElement(config: any, key: string, defaultValue?: any) {
226
225
  if (config[key] !== undefined) {
227
226
  this.config[key] = config[key];
228
227
  } else {
@@ -234,7 +233,7 @@ export class Game {
234
233
  * Parses the configuration object and sets up game properties.
235
234
  * @param {object} config - The configuration object to parse.
236
235
  */
237
- parseConfig(config: any) {
236
+ public parseConfig(config: any) {
238
237
  this.logger = config.logger ?? getLogger(['phaser']);
239
238
  this.logger.info('parseConfig');
240
239
  this.parseConfigElement(config, 'width', 800);
@@ -265,7 +264,7 @@ export class Game {
265
264
  * Called when the WebGL context is lost.
266
265
  * @param {WebGLContextEvent | Event} event - The WebGL context loss event.
267
266
  */
268
- contextLost(event: any) {
267
+ public contextLost(event: any) {
269
268
  this.logger.info('contextLost', event);
270
269
  event.preventDefault();
271
270
  if (this.renderer) {
@@ -277,7 +276,7 @@ export class Game {
277
276
  * Called when the WebGL context is restored.
278
277
  * @param {WebGLContextEvent | Event} event - The WebGL context restore event.
279
278
  */
280
- contextRestored(event: any) {
279
+ public contextRestored(event: any) {
281
280
  this.logger.info('contextRestored', event);
282
281
  if (this.renderer) {
283
282
  this.renderer.initContext(this);
@@ -290,7 +289,7 @@ export class Game {
290
289
  * Updates the game state.
291
290
  * @param {number} time - The current timestamp.
292
291
  */
293
- update(time: number) {
292
+ public update(time: number) {
294
293
  this.time.update(time);
295
294
  if (!this.isPaused) {
296
295
  this.scale.preUpdate();
@@ -313,7 +312,7 @@ export class Game {
313
312
  /**
314
313
  * Destroys the game and cleans up all resources.
315
314
  */
316
- destroy() {
315
+ public destroy() {
317
316
  this.logger.info('destroy');
318
317
  this.isPaused = true;
319
318
 
@@ -10,67 +10,69 @@ import { MSPointer } from './input_mspointer.js';
10
10
  import { Pointer } from './input_pointer.js';
11
11
  import { Touch } from './input_touch.js';
12
12
  import { Signal } from './signal.js';
13
+ import type { Game } from './game.js';
14
+ import type { DisplayObject } from '../display/display_object.js';
13
15
 
14
16
  const MAX_POINTERS = 10;
15
17
 
16
18
  export class Input {
17
- game!: any;
18
- hitCanvas!: HTMLCanvasElement;
19
- hitContext!: any;
20
- moveCallbacks!: { callback: Function; context: any }[];
21
- lockCallbacks!: any;
22
- customCandidateHandler!: any;
23
- customCandidateHandlerContext!: any;
24
- pollRate!: number;
25
- enabled!: boolean;
26
- multiInputOverride!: number;
27
- position!: Point;
28
- speed!: Point;
29
- circle!: Circle;
30
- scale!: Point;
31
- maxPointers!: number;
32
- tapRate!: number;
33
- doubleTapRate!: number;
34
- holdRate!: number;
35
- justPressedRate!: number;
36
- justReleasedRate!: number;
37
- recordPointerHistory!: boolean;
38
- recordRate!: number;
39
- recordLimit!: number;
40
- pointer1!: any;
41
- pointer2!: any;
42
- pointer3!: any;
43
- pointer4!: any;
44
- pointer5!: any;
45
- pointer6!: any;
46
- pointer7!: any;
47
- pointer8!: any;
48
- pointer9!: any;
49
- pointer10!: any;
50
- pointers!: Pointer[];
51
- activePointer!: Pointer;
52
- mousePointer!: Pointer;
53
- mouse!: Mouse;
54
- touch!: Touch;
55
- mspointer!: MSPointer;
56
- resetLocked!: boolean;
57
- onDown!: Signal;
58
- onUp!: Signal;
59
- onTap!: Signal;
60
- onHold!: Signal;
61
- minPriorityID!: number;
62
- interactiveItems!: ArraySet;
63
- _localPoint!: Point;
64
- _pollCounter!: number;
65
- _oldPosition!: Point;
66
- _onClickTrampoline!: any;
67
- _x!: number;
68
- _y!: number;
19
+ public game!: any;
20
+ public hitCanvas!: HTMLCanvasElement;
21
+ public hitContext!: any;
22
+ public moveCallbacks!: { callback: Function; context: any }[];
23
+ public lockCallbacks!: any;
24
+ public customCandidateHandler!: any;
25
+ public customCandidateHandlerContext!: any;
26
+ public pollRate!: number;
27
+ public enabled!: boolean;
28
+ public multiInputOverride!: number;
29
+ public position!: Point;
30
+ public speed!: Point;
31
+ public circle!: Circle;
32
+ public scale!: Point;
33
+ public maxPointers!: number;
34
+ public tapRate!: number;
35
+ public doubleTapRate!: number;
36
+ public holdRate!: number;
37
+ public justPressedRate!: number;
38
+ public justReleasedRate!: number;
39
+ public recordPointerHistory!: boolean;
40
+ public recordRate!: number;
41
+ public recordLimit!: number;
42
+ public pointer1!: any;
43
+ public pointer2!: any;
44
+ public pointer3!: any;
45
+ public pointer4!: any;
46
+ public pointer5!: any;
47
+ public pointer6!: any;
48
+ public pointer7!: any;
49
+ public pointer8!: any;
50
+ public pointer9!: any;
51
+ public pointer10!: any;
52
+ public pointers!: Pointer[];
53
+ public activePointer!: Pointer;
54
+ public mousePointer!: Pointer;
55
+ public mouse!: Mouse;
56
+ public touch!: Touch;
57
+ public mspointer!: MSPointer;
58
+ public resetLocked!: boolean;
59
+ public onDown!: Signal;
60
+ public onUp!: Signal;
61
+ public onTap!: Signal;
62
+ public onHold!: Signal;
63
+ public minPriorityID!: number;
64
+ public interactiveItems!: ArraySet;
65
+ public _localPoint!: Point;
66
+ public _pollCounter!: number;
67
+ public _oldPosition!: Point;
68
+ public _onClickTrampoline!: any;
69
+ public _x!: number;
70
+ public _y!: number;
69
71
  /**
70
72
  * TBD.
71
- * @param {import('./game.js').Game} game - TBD.
73
+ * @param {Game} game - TBD.
72
74
  */
73
- constructor(game: import('./game.js').Game) {
75
+ public constructor(game: Game) {
74
76
  this.game = game;
75
77
  this.hitCanvas = null!;
76
78
  this.hitContext = null;
@@ -127,7 +129,7 @@ export class Input {
127
129
  /**
128
130
  * TBD.
129
131
  */
130
- boot() {
132
+ public boot() {
131
133
  this.mousePointer = new Pointer(this.game, 0, POINTER_CURSOR);
132
134
  this.addPointer();
133
135
  this.addPointer();
@@ -161,7 +163,7 @@ export class Input {
161
163
  /**
162
164
  * TBD.
163
165
  */
164
- destroy() {
166
+ public destroy() {
165
167
  this.mouse.stop();
166
168
  if (this.game.device.mspointer) {
167
169
  this.mspointer.stop();
@@ -178,7 +180,7 @@ export class Input {
178
180
  * @param {Function} callback - TBD.
179
181
  * @param {object} context - TBD.
180
182
  */
181
- setInteractiveCandidateHandler(callback: Function, context: any) {
183
+ public setInteractiveCandidateHandler(callback: Function, context: any) {
182
184
  this.customCandidateHandler = callback;
183
185
  this.customCandidateHandlerContext = context;
184
186
  }
@@ -188,7 +190,7 @@ export class Input {
188
190
  * @param {Function} callback - TBD.
189
191
  * @param {object} context - TBD.
190
192
  */
191
- addMoveCallback(callback: Function, context: any) {
193
+ public addMoveCallback(callback: Function, context: any) {
192
194
  this.moveCallbacks.push({ callback, context });
193
195
  }
194
196
 
@@ -197,11 +199,11 @@ export class Input {
197
199
  * @param {Function} callback - TBD.
198
200
  * @param {object} context - TBD.
199
201
  */
200
- deleteMoveCallback(callback: Function, context: any) {
202
+ public deleteMoveCallback(callback: Function, context: any) {
201
203
  let i = this.moveCallbacks.length;
202
204
  while (i) {
203
205
  i -= 1;
204
- if (this.moveCallbacks[i].callback === callback && this.moveCallbacks[i].context === context) {
206
+ if (this.moveCallbacks[i]!.callback === callback && this.moveCallbacks[i]!.context === context) {
205
207
  this.moveCallbacks.splice(i, 1);
206
208
  return;
207
209
  }
@@ -212,7 +214,7 @@ export class Input {
212
214
  * TBD.
213
215
  * @returns {Pointer} TBD.
214
216
  */
215
- addPointer() {
217
+ public addPointer() {
216
218
  if (this.pointers.length >= MAX_POINTERS) {
217
219
  this.game.logger.warn(`Input.addPointer: Maximum limit of ${MAX_POINTERS} pointers reached.`);
218
220
  return null;
@@ -227,7 +229,7 @@ export class Input {
227
229
  /**
228
230
  * TBD.
229
231
  */
230
- update() {
232
+ public update() {
231
233
  if (this.pollRate > 0 && this._pollCounter < this.pollRate) {
232
234
  this._pollCounter += 1;
233
235
  return;
@@ -236,8 +238,8 @@ export class Input {
236
238
  this.speed.y = this.position.y - this._oldPosition.y;
237
239
  this._oldPosition.copyFrom(this.position);
238
240
  this.mousePointer.update();
239
- for (let i = 0; i < this.pointers.length; i += 1) {
240
- this.pointers[i].update();
241
+ for (const pointer of this.pointers) {
242
+ pointer.update();
241
243
  }
242
244
  this._pollCounter = 0;
243
245
  }
@@ -246,13 +248,13 @@ export class Input {
246
248
  * TBD.
247
249
  * @param {boolean} hard - TBD.
248
250
  */
249
- reset(hard: boolean = false) {
251
+ public reset(hard = false) {
250
252
  if (!this.game.isBooted || this.resetLocked) {
251
253
  return;
252
254
  }
253
255
  this.mousePointer.reset();
254
- for (let i = 0; i < this.pointers.length; i += 1) {
255
- this.pointers[i].reset();
256
+ for (const pointer of this.pointers) {
257
+ pointer.reset();
256
258
  }
257
259
  if (this.game.canvas.style.cursor !== 'none') {
258
260
  this.game.canvas.style.cursor = 'inherit';
@@ -276,7 +278,7 @@ export class Input {
276
278
  * @param {number} x - TBD.
277
279
  * @param {number} y - TBD.
278
280
  */
279
- resetSpeed(x: number, y: number) {
281
+ public resetSpeed(x: number, y: number) {
280
282
  this._oldPosition.setTo(x, y);
281
283
  this.speed.setTo(0, 0);
282
284
  }
@@ -286,7 +288,7 @@ export class Input {
286
288
  * @param {MouseEvent|TouchEvent|PointerEvent} event - TBD.
287
289
  * @returns {Pointer} TBD.
288
290
  */
289
- startPointer(event: any | TouchEvent | PointerEvent) {
291
+ public startPointer(event: any | TouchEvent | PointerEvent) {
290
292
  if (this.maxPointers >= 0 && this.countActivePointers(this.maxPointers) >= this.maxPointers) {
291
293
  return null;
292
294
  }
@@ -297,7 +299,7 @@ export class Input {
297
299
  return this.pointer2.start(event);
298
300
  }
299
301
  for (let i = 2; i < this.pointers.length; i += 1) {
300
- const pointer = this.pointers[i];
302
+ const pointer = this.pointers[i]!;
301
303
  if (!pointer.active) {
302
304
  return pointer.start(event);
303
305
  }
@@ -310,7 +312,7 @@ export class Input {
310
312
  * @param {MouseEvent|TouchEvent|PointerEvent} event - TBD.
311
313
  * @returns {Pointer} TBD.
312
314
  */
313
- updatePointer(event: any | TouchEvent | PointerEvent) {
315
+ public updatePointer(event: any | TouchEvent | PointerEvent) {
314
316
  if (this.pointer1.active && this.pointer1.identifier === event.identifier) {
315
317
  return this.pointer1.move(event);
316
318
  }
@@ -318,7 +320,7 @@ export class Input {
318
320
  return this.pointer2.move(event);
319
321
  }
320
322
  for (let i = 2; i < this.pointers.length; i += 1) {
321
- const pointer = this.pointers[i];
323
+ const pointer = this.pointers[i]!;
322
324
  if (pointer.active && pointer.identifier === event.identifier) {
323
325
  return pointer.move(event);
324
326
  }
@@ -331,7 +333,7 @@ export class Input {
331
333
  * @param {MouseEvent|TouchEvent|PointerEvent} event - TBD.
332
334
  * @returns {Pointer} TBD.
333
335
  */
334
- stopPointer(event: any | TouchEvent | PointerEvent) {
336
+ public stopPointer(event: any | TouchEvent | PointerEvent) {
335
337
  if (this.pointer1.active && this.pointer1.identifier === event.identifier) {
336
338
  return this.pointer1.stop(event);
337
339
  }
@@ -339,7 +341,7 @@ export class Input {
339
341
  return this.pointer2.stop(event);
340
342
  }
341
343
  for (let i = 2; i < this.pointers.length; i += 1) {
342
- const pointer = this.pointers[i];
344
+ const pointer = this.pointers[i]!;
343
345
  if (pointer.active && pointer.identifier === event.identifier) {
344
346
  return pointer.stop(event);
345
347
  }
@@ -352,10 +354,10 @@ export class Input {
352
354
  * @param {number} limit - TBD.
353
355
  * @returns {number} TBD.
354
356
  */
355
- countActivePointers(limit: number = this.pointers.length) {
357
+ public countActivePointers(limit: number = this.pointers.length) {
356
358
  let count = limit;
357
359
  for (let i = 0; i < this.pointers.length && count > 0; i += 1) {
358
- const pointer = this.pointers[i];
360
+ const pointer = this.pointers[i]!;
359
361
  if (pointer.active) {
360
362
  count -= 1;
361
363
  }
@@ -368,9 +370,8 @@ export class Input {
368
370
  * @param {boolean} isActive - TBD.
369
371
  * @returns {Pointer} TBD.
370
372
  */
371
- getPointer(isActive: boolean = false) {
372
- for (let i = 0; i < this.pointers.length; i += 1) {
373
- const pointer = this.pointers[i];
373
+ public getPointer(isActive = false) {
374
+ for (const pointer of this.pointers) {
374
375
  if (pointer.active === isActive) {
375
376
  return pointer;
376
377
  }
@@ -383,9 +384,8 @@ export class Input {
383
384
  * @param {number} identifier - TBD.
384
385
  * @returns {Pointer} TBD.
385
386
  */
386
- getPointerFromIdentifier(identifier: number) {
387
- for (let i = 0; i < this.pointers.length; i += 1) {
388
- const pointer = this.pointers[i];
387
+ public getPointerFromIdentifier(identifier: number) {
388
+ for (const pointer of this.pointers) {
389
389
  if (pointer.identifier === identifier) {
390
390
  return pointer;
391
391
  }
@@ -399,9 +399,8 @@ export class Input {
399
399
  * @param {number} pointerId - TBD.
400
400
  * @returns {Pointer} TBD.
401
401
  */
402
- getPointerFromId(pointerId: number) {
403
- for (let i = 0; i < this.pointers.length; i += 1) {
404
- const pointer = this.pointers[i];
402
+ public getPointerFromId(pointerId: number) {
403
+ for (const pointer of this.pointers) {
405
404
  if (pointer.pointerId === pointerId) {
406
405
  return pointer;
407
406
  }
@@ -412,17 +411,13 @@ export class Input {
412
411
 
413
412
  /**
414
413
  * TBD.
415
- * @param {import('../display/display_object.js').DisplayObject} displayObject - TBD.
414
+ * @param {DisplayObject} displayObject - TBD.
416
415
  * @param {Pointer} pointer - TBD.
417
416
  * @param {Point} output - TBD.
418
417
  * @returns {Point} TBD.
419
418
  */
420
- getLocalPosition(
421
- displayObject: import('../display/display_object.js').DisplayObject,
422
- pointer: Pointer,
423
- output: Point | null = null
424
- ) {
425
- const result = output || new Point();
419
+ public getLocalPosition(displayObject: DisplayObject, pointer: Pointer, output: Point | null = null) {
420
+ const result = output ?? new Point();
426
421
  const wt = displayObject.worldTransform;
427
422
  const id = 1 / (wt.a * wt.d + wt.c * -wt.b);
428
423
  return result.setTo(
@@ -433,12 +428,12 @@ export class Input {
433
428
 
434
429
  /**
435
430
  * TBD.
436
- * @param {import('../display/display_object.js').DisplayObject} displayObject - TBD.
431
+ * @param {DisplayObject} displayObject - TBD.
437
432
  * @param {Pointer} pointer - TBD.
438
433
  * @param {Point} localPoint - TBD.
439
434
  * @returns {boolean} TBD.
440
435
  */
441
- hitTest(displayObject: import('../display/display_object.js').DisplayObject, pointer: Pointer, localPoint: Point) {
436
+ public hitTest(displayObject: DisplayObject, pointer: Pointer, localPoint: Point) {
442
437
  if (!displayObject.worldVisible) {
443
438
  return false;
444
439
  }
@@ -447,8 +442,8 @@ export class Input {
447
442
  if (displayObject.hitArea && displayObject.hitArea.contains) {
448
443
  return displayObject.hitArea.contains(this._localPoint.x, this._localPoint.y);
449
444
  } else if (displayObject instanceof Image) {
450
- const width = displayObject.texture.frame.width;
451
- const height = displayObject.texture.frame.height;
445
+ const { width } = displayObject.texture.frame;
446
+ const { height } = displayObject.texture.frame;
452
447
  const x1 = -width * displayObject.anchor.x;
453
448
  if (this._localPoint.x >= x1 && this._localPoint.x < x1 + width) {
454
449
  const y1 = -height * displayObject.anchor.y;
@@ -457,8 +452,7 @@ export class Input {
457
452
  }
458
453
  }
459
454
  } else if (displayObject instanceof Graphics) {
460
- for (let i = 0; i < displayObject.graphicsData.length; i += 1) {
461
- const data = displayObject.graphicsData[i];
455
+ for (const data of displayObject.graphicsData) {
462
456
  if (data.fill && data.shape && data.shape.contains(this._localPoint.x, this._localPoint.y)) {
463
457
  // Only deal with fills..
464
458
  return true;
@@ -466,8 +460,8 @@ export class Input {
466
460
  }
467
461
  }
468
462
  // Didn't hit the parent, does it have any children?
469
- for (let i = 0; i < displayObject.children.length; i += 1) {
470
- if (this.hitTest(displayObject.children[i], pointer, localPoint)) {
463
+ for (const child of displayObject.children) {
464
+ if (this.hitTest(child, pointer, localPoint)) {
471
465
  return true;
472
466
  }
473
467
  }
@@ -477,7 +471,7 @@ export class Input {
477
471
  /**
478
472
  * TBD.
479
473
  */
480
- onClickTrampoline() {
474
+ public onClickTrampoline() {
481
475
  this.activePointer.processClickTrampolines();
482
476
  }
483
477
 
@@ -485,14 +479,14 @@ export class Input {
485
479
  * TBD.
486
480
  * @returns {number} TBD.
487
481
  */
488
- get x() {
482
+ public get x() {
489
483
  return this._x;
490
484
  }
491
485
 
492
486
  /**
493
487
  * TBD.
494
488
  */
495
- set x(value) {
489
+ public set x(value) {
496
490
  this._x = Math.floor(value);
497
491
  }
498
492
 
@@ -500,14 +494,14 @@ export class Input {
500
494
  * TBD.
501
495
  * @returns {number} TBD.
502
496
  */
503
- get y() {
497
+ public get y() {
504
498
  return this._y;
505
499
  }
506
500
 
507
501
  /**
508
502
  * TBD.
509
503
  */
510
- set y(value) {
504
+ public set y(value) {
511
505
  this._y = Math.floor(value);
512
506
  }
513
507
 
@@ -515,7 +509,7 @@ export class Input {
515
509
  * TBD.
516
510
  * @returns {boolean} TBD.
517
511
  */
518
- get pollLocked() {
512
+ public get pollLocked() {
519
513
  return this.pollRate > 0 && this._pollCounter < this.pollRate;
520
514
  }
521
515
 
@@ -523,7 +517,7 @@ export class Input {
523
517
  * TBD.
524
518
  * @returns {number} TBD.
525
519
  */
526
- get totalInactivePointers() {
520
+ public get totalInactivePointers() {
527
521
  return this.pointers.length - this.countActivePointers();
528
522
  }
529
523
 
@@ -531,7 +525,7 @@ export class Input {
531
525
  * TBD.
532
526
  * @returns {number} TBD.
533
527
  */
534
- get totalActivePointers() {
528
+ public get totalActivePointers() {
535
529
  return this.countActivePointers();
536
530
  }
537
531
 
@@ -539,7 +533,7 @@ export class Input {
539
533
  * TBD.
540
534
  * @returns {number} TBD.
541
535
  */
542
- get worldX() {
536
+ public get worldX() {
543
537
  return this.x;
544
538
  }
545
539
 
@@ -547,7 +541,7 @@ export class Input {
547
541
  * TBD.
548
542
  * @returns {number} TBD.
549
543
  */
550
- get worldY() {
544
+ public get worldY() {
551
545
  return this.y;
552
546
  }
553
547
  }