melonjs 14.2.0 → 14.3.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 (283) hide show
  1. package/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +1 -1
  2. package/dist/melonjs.mjs/_virtual/arraymultimap.js +1 -1
  3. package/dist/melonjs.mjs/_virtual/earcut.js +1 -1
  4. package/dist/melonjs.mjs/_virtual/howler.js +1 -1
  5. package/dist/melonjs.mjs/_virtual/index.js +1 -1
  6. package/dist/melonjs.mjs/_virtual/index2.js +1 -1
  7. package/dist/melonjs.mjs/_virtual/multimap.js +1 -1
  8. package/dist/melonjs.mjs/_virtual/setmultimap.js +1 -1
  9. package/dist/melonjs.mjs/application/application.js +153 -9
  10. package/dist/melonjs.mjs/application/header.js +34 -0
  11. package/dist/melonjs.mjs/application/resize.js +1 -1
  12. package/dist/melonjs.mjs/application/settings.js +28 -0
  13. package/dist/melonjs.mjs/audio/audio.js +1 -1
  14. package/dist/melonjs.mjs/camera/camera2d.js +2 -2
  15. package/dist/melonjs.mjs/entity/entity.js +1 -1
  16. package/dist/melonjs.mjs/game.js +1 -1
  17. package/dist/melonjs.mjs/geometries/ellipse.js +1 -1
  18. package/dist/melonjs.mjs/geometries/line.js +1 -1
  19. package/dist/melonjs.mjs/geometries/path2d.js +1 -1
  20. package/dist/melonjs.mjs/geometries/point.js +1 -1
  21. package/dist/melonjs.mjs/geometries/poly.js +1 -1
  22. package/dist/melonjs.mjs/geometries/rectangle.js +1 -1
  23. package/dist/melonjs.mjs/geometries/roundrect.js +1 -1
  24. package/dist/melonjs.mjs/index.js +41 -30
  25. package/dist/melonjs.mjs/input/gamepad.js +1 -1
  26. package/dist/melonjs.mjs/input/input.js +1 -1
  27. package/dist/melonjs.mjs/input/keyboard.js +1 -1
  28. package/dist/melonjs.mjs/input/pointer.js +2 -2
  29. package/dist/melonjs.mjs/input/pointerevent.js +2 -2
  30. package/dist/melonjs.mjs/lang/deprecated.js +1 -1
  31. package/dist/melonjs.mjs/level/level.js +2 -2
  32. package/dist/melonjs.mjs/level/tiled/TMXGroup.js +1 -1
  33. package/dist/melonjs.mjs/level/tiled/TMXLayer.js +2 -2
  34. package/dist/melonjs.mjs/level/tiled/TMXObject.js +1 -1
  35. package/dist/melonjs.mjs/level/tiled/TMXTile.js +1 -1
  36. package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +2 -2
  37. package/dist/melonjs.mjs/level/tiled/TMXTileset.js +1 -1
  38. package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +1 -1
  39. package/dist/melonjs.mjs/level/tiled/TMXUtils.js +1 -1
  40. package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +1 -1
  41. package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +1 -1
  42. package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +1 -1
  43. package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +1 -1
  44. package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +1 -1
  45. package/dist/melonjs.mjs/loader/loader.js +1 -1
  46. package/dist/melonjs.mjs/loader/loadingscreen.js +2 -2
  47. package/dist/melonjs.mjs/loader/melonjs_logo.png.js +1 -1
  48. package/dist/melonjs.mjs/math/color.js +1 -1
  49. package/dist/melonjs.mjs/math/math.js +1 -1
  50. package/dist/melonjs.mjs/math/matrix2.js +1 -1
  51. package/dist/melonjs.mjs/math/matrix3.js +1 -1
  52. package/dist/melonjs.mjs/math/observable_vector2.js +1 -1
  53. package/dist/melonjs.mjs/math/observable_vector3.js +1 -1
  54. package/dist/melonjs.mjs/math/vector2.js +1 -1
  55. package/dist/melonjs.mjs/math/vector3.js +1 -1
  56. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/arraymultimap.js +1 -1
  57. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/index.js +1 -1
  58. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/multimap.js +1 -1
  59. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/setmultimap.js +1 -1
  60. package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +1 -1
  61. package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +1 -1
  62. package/dist/melonjs.mjs/node_modules/eventemitter3/index2.js +1 -1
  63. package/dist/melonjs.mjs/node_modules/howler/dist/howler.js +1 -1
  64. package/dist/melonjs.mjs/particles/emitter.js +1 -1
  65. package/dist/melonjs.mjs/particles/particle.js +1 -1
  66. package/dist/melonjs.mjs/particles/settings.js +1 -1
  67. package/dist/melonjs.mjs/physics/body.js +1 -1
  68. package/dist/melonjs.mjs/physics/bounds.js +1 -1
  69. package/dist/melonjs.mjs/physics/collision.js +3 -3
  70. package/dist/melonjs.mjs/physics/detector.js +174 -146
  71. package/dist/melonjs.mjs/physics/quadtree.js +1 -1
  72. package/dist/melonjs.mjs/physics/response.js +1 -1
  73. package/dist/melonjs.mjs/physics/sat.js +1 -1
  74. package/dist/melonjs.mjs/physics/world.js +10 -30
  75. package/dist/melonjs.mjs/plugin/plugin.js +3 -3
  76. package/dist/melonjs.mjs/renderable/collectable.js +1 -1
  77. package/dist/melonjs.mjs/renderable/colorlayer.js +1 -1
  78. package/dist/melonjs.mjs/renderable/container.js +3 -87
  79. package/dist/melonjs.mjs/renderable/dragndrop.js +1 -1
  80. package/dist/melonjs.mjs/renderable/imagelayer.js +2 -2
  81. package/dist/melonjs.mjs/renderable/light2d.js +1 -1
  82. package/dist/melonjs.mjs/renderable/nineslicesprite.js +1 -1
  83. package/dist/melonjs.mjs/renderable/renderable.js +1 -1
  84. package/dist/melonjs.mjs/renderable/sprite.js +1 -1
  85. package/dist/melonjs.mjs/renderable/trigger.js +2 -2
  86. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +1 -1
  87. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +1 -1
  88. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +1 -1
  89. package/dist/melonjs.mjs/state/stage.js +2 -2
  90. package/dist/melonjs.mjs/state/state.js +2 -2
  91. package/dist/melonjs.mjs/system/device.js +2 -22
  92. package/dist/melonjs.mjs/system/dom.js +1 -1
  93. package/dist/melonjs.mjs/system/event.js +1 -1
  94. package/dist/melonjs.mjs/system/platform.js +1 -1
  95. package/dist/melonjs.mjs/system/pooling.js +1 -1
  96. package/dist/melonjs.mjs/system/save.js +1 -1
  97. package/dist/melonjs.mjs/system/timer.js +1 -1
  98. package/dist/melonjs.mjs/text/bitmaptext.js +1 -1
  99. package/dist/melonjs.mjs/text/bitmaptextdata.js +1 -1
  100. package/dist/melonjs.mjs/text/glyph.js +1 -1
  101. package/dist/melonjs.mjs/text/text.js +1 -1
  102. package/dist/melonjs.mjs/text/textmetrics.js +1 -1
  103. package/dist/melonjs.mjs/text/textstyle.js +1 -1
  104. package/dist/melonjs.mjs/tweens/easing.js +1 -1
  105. package/dist/melonjs.mjs/tweens/interpolation.js +1 -1
  106. package/dist/melonjs.mjs/tweens/tween.js +2 -2
  107. package/dist/melonjs.mjs/utils/agent.js +1 -1
  108. package/dist/melonjs.mjs/utils/array.js +1 -1
  109. package/dist/melonjs.mjs/utils/file.js +1 -1
  110. package/dist/melonjs.mjs/utils/function.js +1 -1
  111. package/dist/melonjs.mjs/utils/string.js +1 -1
  112. package/dist/melonjs.mjs/utils/utils.js +1 -1
  113. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +4 -1
  114. package/dist/melonjs.mjs/video/renderer.js +8 -1
  115. package/dist/melonjs.mjs/video/texture/atlas.js +1 -1
  116. package/dist/melonjs.mjs/video/texture/cache.js +1 -1
  117. package/dist/melonjs.mjs/video/texture/canvas_texture.js +3 -2
  118. package/dist/melonjs.mjs/video/utils/autodetect.js +27 -0
  119. package/dist/melonjs.mjs/video/utils/resize.js +1 -1
  120. package/dist/melonjs.mjs/video/video.js +15 -147
  121. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +1 -1
  122. package/dist/melonjs.mjs/video/webgl/glshader.js +2 -3
  123. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
  124. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
  125. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
  126. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
  127. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +1 -1
  128. package/dist/melonjs.mjs/video/webgl/utils/precision.js +20 -2
  129. package/dist/melonjs.mjs/video/webgl/utils/program.js +1 -1
  130. package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
  131. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +1 -1
  132. package/dist/melonjs.mjs/video/webgl/webgl_compositor.js +1 -1
  133. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +4 -1
  134. package/dist/melonjs.module.js +20922 -20921
  135. package/dist/types/application/application.d.ts +144 -0
  136. package/dist/types/application/header.d.ts +5 -0
  137. package/dist/types/application/resize.d.ts +5 -0
  138. package/dist/types/application/settings.d.ts +18 -0
  139. package/dist/types/audio/audio.d.ts +267 -0
  140. package/dist/types/camera/camera2d.d.ts +289 -0
  141. package/dist/types/entity/entity.d.ts +98 -0
  142. package/{src/game.js → dist/types/game.d.ts} +3 -14
  143. package/dist/types/geometries/ellipse.d.ts +154 -0
  144. package/dist/types/geometries/line.d.ts +11 -0
  145. package/dist/types/geometries/path2d.d.ts +121 -0
  146. package/dist/types/geometries/point.d.ts +53 -0
  147. package/dist/types/geometries/poly.d.ts +222 -0
  148. package/dist/types/geometries/rectangle.d.ts +176 -0
  149. package/dist/types/geometries/roundrect.d.ts +52 -0
  150. package/dist/types/index.d.ts +3 -2
  151. package/dist/types/input/gamepad.d.ts +95 -0
  152. package/dist/types/input/input.d.ts +15 -0
  153. package/dist/types/input/keyboard.d.ts +205 -0
  154. package/dist/types/input/pointer.d.ts +270 -0
  155. package/dist/types/input/pointerevent.d.ts +181 -0
  156. package/dist/types/lang/deprecated.d.ts +53 -0
  157. package/dist/types/level/level.d.ts +134 -0
  158. package/dist/types/level/tiled/TMXGroup.d.ts +82 -0
  159. package/dist/types/level/tiled/TMXLayer.d.ts +180 -0
  160. package/dist/types/level/tiled/TMXObject.d.ts +195 -0
  161. package/dist/types/level/tiled/TMXTile.d.ts +78 -0
  162. package/dist/types/level/tiled/TMXTileMap.d.ts +180 -0
  163. package/dist/types/level/tiled/TMXTileset.d.ts +94 -0
  164. package/dist/types/level/tiled/TMXTilesetGroup.d.ts +32 -0
  165. package/dist/types/level/tiled/TMXUtils.d.ts +47 -0
  166. package/dist/types/level/tiled/renderer/TMXHexagonalRenderer.d.ts +87 -0
  167. package/dist/types/level/tiled/renderer/TMXIsometricRenderer.d.ts +55 -0
  168. package/dist/types/level/tiled/renderer/TMXOrthogonalRenderer.d.ts +43 -0
  169. package/dist/types/level/tiled/renderer/TMXRenderer.d.ts +75 -0
  170. package/dist/types/level/tiled/renderer/TMXStaggeredRenderer.d.ts +8 -0
  171. package/dist/types/loader/loader.d.ts +181 -0
  172. package/dist/types/loader/loadingscreen.d.ts +18 -0
  173. package/dist/types/math/color.d.ts +170 -0
  174. package/dist/types/math/math.d.ts +165 -0
  175. package/dist/types/math/matrix2.d.ts +209 -0
  176. package/dist/types/math/matrix3.d.ts +236 -0
  177. package/dist/types/math/observable_vector2.d.ts +278 -0
  178. package/dist/types/math/observable_vector3.d.ts +277 -0
  179. package/dist/types/math/vector2.d.ts +327 -0
  180. package/dist/types/math/vector3.d.ts +332 -0
  181. package/dist/types/particles/emitter.d.ts +188 -0
  182. package/dist/types/particles/particle.d.ts +32 -0
  183. package/dist/types/particles/settings.d.ts +32 -0
  184. package/dist/types/physics/body.d.ts +330 -0
  185. package/dist/types/physics/bounds.d.ts +250 -0
  186. package/dist/types/physics/collision.d.ts +44 -0
  187. package/dist/types/physics/detector.d.ts +64 -0
  188. package/dist/types/physics/quadtree.d.ts +79 -0
  189. package/dist/types/physics/response.d.ts +37 -0
  190. package/dist/types/physics/sat.d.ts +48 -0
  191. package/dist/types/physics/world.d.ts +83 -0
  192. package/dist/types/plugin/plugin.d.ts +10 -0
  193. package/dist/types/polyfill/console.d.ts +0 -0
  194. package/dist/types/polyfill/index.d.ts +1 -0
  195. package/dist/types/polyfill/performance.d.ts +0 -0
  196. package/dist/types/polyfill/requestAnimationFrame.d.ts +1 -0
  197. package/dist/types/polyfill/roundrect.d.ts +0 -0
  198. package/dist/types/renderable/collectable.d.ts +19 -0
  199. package/dist/types/renderable/colorlayer.d.ts +28 -0
  200. package/dist/types/renderable/container.d.ts +302 -0
  201. package/dist/types/renderable/dragndrop.d.ts +118 -0
  202. package/dist/types/renderable/imagelayer.d.ts +106 -0
  203. package/dist/types/renderable/light2d.d.ts +58 -0
  204. package/dist/types/renderable/nineslicesprite.d.ts +59 -0
  205. package/dist/types/renderable/renderable.d.ts +402 -0
  206. package/dist/types/renderable/sprite.d.ts +268 -0
  207. package/dist/types/renderable/trigger.d.ts +61 -0
  208. package/dist/types/renderable/ui/uibaseelement.d.ts +95 -0
  209. package/dist/types/renderable/ui/uispriteelement.d.ts +127 -0
  210. package/dist/types/renderable/ui/uitextbutton.d.ts +54 -0
  211. package/dist/types/state/stage.d.ts +116 -0
  212. package/dist/types/state/state.d.ts +170 -0
  213. package/dist/types/system/device.d.ts +579 -0
  214. package/dist/types/system/dom.d.ts +1 -0
  215. package/dist/types/system/event.d.ts +473 -0
  216. package/dist/types/system/platform.d.ts +31 -0
  217. package/dist/types/system/pooling.d.ts +101 -0
  218. package/dist/types/system/save.d.ts +25 -0
  219. package/dist/types/system/timer.d.ts +126 -0
  220. package/dist/types/text/bitmaptext.d.ts +151 -0
  221. package/dist/types/text/bitmaptextdata.d.ts +35 -0
  222. package/dist/types/text/glyph.d.ts +28 -0
  223. package/dist/types/text/text.d.ts +173 -0
  224. package/dist/types/text/textmetrics.d.ts +47 -0
  225. package/dist/types/text/textstyle.d.ts +5 -0
  226. package/dist/types/tweens/easing.d.ts +46 -0
  227. package/dist/types/tweens/interpolation.d.ts +18 -0
  228. package/dist/types/tweens/tween.d.ts +195 -0
  229. package/dist/types/utils/agent.d.ts +21 -0
  230. package/dist/types/utils/array.d.ts +39 -0
  231. package/dist/types/utils/file.d.ts +18 -0
  232. package/dist/types/utils/function.d.ts +32 -0
  233. package/dist/types/utils/string.d.ts +50 -0
  234. package/dist/types/utils/utils.d.ts +17 -0
  235. package/dist/types/video/canvas/canvas_renderer.d.ts +380 -0
  236. package/dist/types/video/renderer.d.ts +222 -0
  237. package/dist/types/video/texture/atlas.d.ts +201 -0
  238. package/dist/types/video/texture/cache.d.ts +45 -0
  239. package/dist/types/video/texture/canvas_texture.d.ts +78 -0
  240. package/dist/types/video/utils/autodetect.d.ts +7 -0
  241. package/dist/types/video/utils/resize.d.ts +4 -0
  242. package/dist/types/video/video.d.ts +92 -0
  243. package/dist/types/video/webgl/buffer/vertex.d.ts +56 -0
  244. package/dist/types/video/webgl/glshader.d.ts +93 -0
  245. package/dist/types/video/webgl/utils/attributes.d.ts +4 -0
  246. package/dist/types/video/webgl/utils/precision.d.ts +13 -0
  247. package/dist/types/video/webgl/utils/program.d.ts +5 -0
  248. package/dist/types/video/webgl/utils/string.d.ts +5 -0
  249. package/dist/types/video/webgl/utils/uniforms.d.ts +4 -0
  250. package/dist/types/video/webgl/webgl_compositor.d.ts +174 -0
  251. package/dist/types/video/webgl/webgl_renderer.d.ts +429 -0
  252. package/package.json +4 -4
  253. package/src/application/application.js +151 -7
  254. package/src/application/header.js +25 -0
  255. package/src/{video/utils → application}/resize.js +9 -6
  256. package/src/application/settings.js +19 -0
  257. package/src/camera/camera2d.js +1 -1
  258. package/src/index.js +34 -23
  259. package/src/input/pointer.js +1 -1
  260. package/src/input/pointerevent.js +1 -1
  261. package/src/level/level.js +1 -1
  262. package/src/level/tiled/TMXLayer.js +1 -1
  263. package/src/level/tiled/TMXTileMap.js +2 -2
  264. package/src/loader/loadingscreen.js +1 -1
  265. package/src/physics/collision.js +2 -2
  266. package/src/physics/detector.js +172 -145
  267. package/src/physics/world.js +10 -30
  268. package/src/renderable/container.js +7 -91
  269. package/src/renderable/imagelayer.js +1 -1
  270. package/src/renderable/trigger.js +1 -1
  271. package/src/renderable/ui/uibaseelement.js +1 -1
  272. package/src/state/stage.js +1 -1
  273. package/src/state/state.js +1 -1
  274. package/src/system/device.js +0 -20
  275. package/src/tweens/tween.js +1 -1
  276. package/src/video/canvas/canvas_renderer.js +3 -0
  277. package/src/video/renderer.js +7 -0
  278. package/src/video/texture/canvas_texture.js +2 -1
  279. package/src/video/utils/autodetect.js +18 -0
  280. package/src/video/video.js +13 -145
  281. package/src/video/webgl/glshader.js +3 -4
  282. package/src/video/webgl/utils/precision.js +18 -0
  283. package/src/video/webgl/webgl_renderer.js +3 -0
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,15 +1,39 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
6
6
  * @copyright (C) 2011 - 2022 Olivier Biot (AltByte Pte Ltd)
7
7
  */
8
- import { renderer } from '../video/video.js';
9
- import { emit, GAME_INIT, GAME_RESET, GAME_BEFORE_UPDATE, GAME_UPDATE, GAME_AFTER_UPDATE, GAME_BEFORE_DRAW, GAME_AFTER_DRAW } from '../system/event.js';
8
+ import { autoDetectRenderer } from '../video/utils/autodetect.js';
9
+ import CanvasRenderer from '../video/canvas/canvas_renderer.js';
10
+ import { getElement, platform, enableSwipe } from '../system/device.js';
11
+ import { on, emit, GAME_AFTER_UPDATE, GAME_BEFORE_DRAW, GAME_AFTER_DRAW, WINDOW_ONRESIZE, WINDOW_ONORIENTATION_CHANGE, GAME_INIT, GAME_RESET, GAME_BEFORE_UPDATE, GAME_UPDATE } from '../system/event.js';
12
+ import utils from '../utils/utils.js';
10
13
  import timer from '../system/timer.js';
11
14
  import state from '../state/state.js';
12
15
  import World from '../physics/world.js';
16
+ import { onresize } from './resize.js';
17
+ import { defaultSettings } from './settings.js';
18
+ import { consoleHeader } from './header.js';
19
+
20
+ /**
21
+ * Select the HTML5 Canvas renderer
22
+ * @constant
23
+ */
24
+ const CANVAS = 0;
25
+
26
+ /**
27
+ * Select the WebGL renderer
28
+ * @constant
29
+ */
30
+ const WEBGL = 1;
31
+
32
+ /**
33
+ * Auto-select the renderer (Attempt WebGL first, with fallback to Canvas)
34
+ * @constant
35
+ */
36
+ const AUTO = 2;
13
37
 
14
38
  /**
15
39
  * @classdesc
@@ -18,7 +42,22 @@ import World from '../physics/world.js';
18
42
  * @see game
19
43
  */
20
44
  class Application {
21
- constructor() {
45
+ /**
46
+ * @param {number} width - The width of the canvas viewport
47
+ * @param {number} height - The height of the canvas viewport
48
+ * @param {object} [options] - The optional video/renderer parameters.<br> (see Renderer(s) documentation for further specific options)
49
+ * @param {string|HTMLElement} [options.parent=document.body] - the DOM parent element to hold the canvas in the HTML file
50
+ * @param {number|Renderer} [options.renderer=video.AUTO] - renderer to use (me.video.CANVAS, me.video.WEBGL, me.video.AUTO), or a custom renderer class
51
+ * @param {number|string} [options.scale=1.0] - enable scaling of the canvas ('auto' for automatic scaling)
52
+ * @param {string} [options.scaleMethod="fit"] - screen scaling modes ('fit','fill-min','fill-max','flex','flex-width','flex-height','stretch')
53
+ * @param {boolean} [options.preferWebGL1=false] - if true the renderer will only use WebGL 1
54
+ * @param {string} [options.powerPreference="default"] - a hint to the user agent indicating what configuration of GPU is suitable for the WebGL context ("default", "high-performance", "low-power"). To be noted that Safari and Chrome (since version 80) both default to "low-power" to save battery life and improve the user experience on these dual-GPU machines.
55
+ * @param {boolean} [options.transparent=false] - whether to allow transparent pixels in the front buffer (screen).
56
+ * @param {boolean} [options.antiAlias=false] - whether to enable or not video scaling interpolation
57
+ * @param {boolean} [options.consoleHeader=true] - whether to display melonJS version and basic device information in the console
58
+ * @throws Will throw an exception if it fails to instantiate a renderer
59
+ */
60
+ constructor(width, height, options) {
22
61
 
23
62
  /**
24
63
  * the parent HTML element holding the main canvas of this application
@@ -26,6 +65,12 @@ import World from '../physics/world.js';
26
65
  */
27
66
  this.parentElement = undefined;
28
67
 
68
+ /**
69
+ * a reference to the active Canvas or WebGL active renderer renderer
70
+ * @type {CanvasRenderer|WebGLRenderer}
71
+ */
72
+ this.renderer = undefined;
73
+
29
74
  /**
30
75
  * the active stage "default" camera
31
76
  * @type {Camera2d}
@@ -71,6 +116,12 @@ import World from '../physics/world.js';
71
116
  */
72
117
  this.isInitialized = false;
73
118
 
119
+ /**
120
+ * the given settings used when creating this application
121
+ * @type {Object}
122
+ */
123
+ this.settings = undefined;
124
+
74
125
  // to know when we have to refresh the display
75
126
  this.isDirty = true;
76
127
 
@@ -92,18 +143,111 @@ import World from '../physics/world.js';
92
143
  this.updateDelta = 0;
93
144
  this.lastUpdateStart = null;
94
145
  this.updateAverageDelta = 0;
146
+
147
+ // when using the default game application, legacy is set to true
148
+ // and init is called through the legacy video.init() call
149
+ if (options.legacy !== true) {
150
+ this.init(width, height, options);
151
+ }
95
152
  }
96
153
 
97
154
  /**
98
155
  * init the game instance (create a physic world, update starting time, etc..)
99
156
  */
100
- init() {
157
+ init(width, height, options) {
158
+
159
+ this.settings = Object.assign(defaultSettings, options || {});
160
+
161
+ // sanitize potential given parameters
162
+ this.settings.width = width;
163
+ this.settings.height = height;
164
+ this.settings.transparent = !!(this.settings.transparent);
165
+ this.settings.antiAlias = !!(this.settings.antiAlias);
166
+ this.settings.failIfMajorPerformanceCaveat = !!(this.settings.failIfMajorPerformanceCaveat);
167
+ this.settings.subPixel = !!(this.settings.subPixel);
168
+ this.settings.verbose = !!(this.settings.verbose);
169
+ if (this.settings.scaleMethod.search(/^(fill-(min|max)|fit|flex(-(width|height))?|stretch)$/) !== -1) {
170
+ this.settings.autoScale = (this.settings.scale === "auto") || true;
171
+ } else {
172
+ // default scaling method
173
+ this.settings.scaleMethod = "fit";
174
+ this.settings.autoScale = (this.settings.scale === "auto") || false;
175
+ }
176
+
177
+ // override renderer settings if &webgl or &canvas is defined in the URL
178
+ var uriFragment = utils.getUriFragment();
179
+ if (uriFragment.webgl === true || uriFragment.webgl1 === true || uriFragment.webgl2 === true) {
180
+ this.settings.renderer = WEBGL;
181
+ if (uriFragment.webgl1 === true) {
182
+ this.settings.preferWebGL1 = true;
183
+ }
184
+ } else if (uriFragment.canvas === true) {
185
+ this.settings.renderer = CANVAS;
186
+ }
187
+
188
+ // normalize scale
189
+ this.settings.scale = (this.settings.autoScale) ? 1.0 : (+this.settings.scale || 1.0);
190
+
191
+ // default scaled size value
192
+ this.settings.zoomX = width * this.settings.scale;
193
+ this.settings.zoomY = height * this.settings.scale;
194
+
195
+ if (typeof this.settings.renderer === "number") {
196
+ switch (this.settings.renderer) {
197
+ case AUTO:
198
+ case WEBGL:
199
+ this.renderer = autoDetectRenderer(this.settings);
200
+ break;
201
+ default:
202
+ this.renderer = new CanvasRenderer(this.settings);
203
+ break;
204
+ }
205
+ } else {
206
+ var CustomRenderer = this.settings.renderer;
207
+ // a renderer class
208
+ this.renderer = new CustomRenderer(this.settings);
209
+ }
210
+
211
+ // register to the channel
212
+ on(WINDOW_ONRESIZE, () => { onresize(this); }, this);
213
+ on(WINDOW_ONORIENTATION_CHANGE, () => { onresize(this); }, this);
214
+
215
+ // add our canvas (default to document.body if settings.parent is undefined)
216
+ this.parentElement = getElement(this.settings.parent);
217
+ this.parentElement.appendChild(this.renderer.getCanvas());
218
+
219
+ // Mobile browser hacks
220
+ if (platform.isMobile) {
221
+ // Prevent the webview from moving on a swipe
222
+ enableSwipe(false);
223
+ }
224
+
225
+ // trigger an initial resize();
226
+ onresize(this);
227
+
228
+ // add an observer to detect when the dom tree is modified
229
+ if ("MutationObserver" in globalThis) {
230
+ // Create an observer instance linked to the callback function
231
+ var observer = new MutationObserver(onresize.bind(this, this));
232
+
233
+ // Start observing the target node for configured mutations
234
+ observer.observe(this.parentElement, {
235
+ attributes: false, childList: true, subtree: true
236
+ });
237
+ }
238
+
239
+ if (this.settings.consoleHeader !== false) {
240
+ consoleHeader(this);
241
+ }
242
+
101
243
  // create a new physic world
102
244
  this.world = new World();
103
245
  // set the reference to this application instance
104
246
  this.world.app = this;
105
247
  this.lastUpdate = globalThis.performance.now();
248
+
106
249
  this.isInitialized = true;
250
+
107
251
  emit(GAME_INIT, this);
108
252
  }
109
253
 
@@ -220,21 +364,21 @@ import World from '../physics/world.js';
220
364
  * @param {Stage} stage - the current stage
221
365
  */
222
366
  draw(stage) {
223
- if (renderer.isContextValid === true && (this.isDirty || this.isAlwaysDirty)) {
367
+ if (this.renderer.isContextValid === true && (this.isDirty || this.isAlwaysDirty)) {
224
368
  // publish notification
225
369
  emit(GAME_BEFORE_DRAW, globalThis.performance.now());
226
370
 
227
371
  // prepare renderer to draw a new frame
228
- renderer.clear();
372
+ this.renderer.clear();
229
373
 
230
374
  // render the stage
231
- stage.draw(renderer);
375
+ stage.draw(this.renderer);
232
376
 
233
377
  // set back to flag
234
378
  this.isDirty = false;
235
379
 
236
380
  // flush/render our frame
237
- renderer.flush();
381
+ this.renderer.flush();
238
382
 
239
383
  // publish notification
240
384
  emit(GAME_AFTER_DRAW, globalThis.performance.now());
@@ -0,0 +1,34 @@
1
+ /*!
2
+ * melonJS Game Engine - v14.3.0
3
+ * http://www.melonjs.org
4
+ * melonjs is licensed under the MIT License.
5
+ * http://www.opensource.org/licenses/mit-license
6
+ * @copyright (C) 2011 - 2022 Olivier Biot (AltByte Pte Ltd)
7
+ */
8
+ import { devicePixelRatio, platform, getScreenOrientation, language, hasWebAudio } from '../system/device.js';
9
+
10
+ /**
11
+ * display information
12
+ * @param {Application} game - the game application instance calling this function
13
+ */
14
+ function consoleHeader(app) {
15
+ var renderType = app.renderer.type;
16
+ var gpu_renderer = (typeof app.renderer.GPURenderer === "string") ? " (" + app.renderer.GPURenderer + ")" : "";
17
+ var audioType = hasWebAudio ? "Web Audio" : "HTML5 Audio";
18
+
19
+ // output video information in the console
20
+ console.log(
21
+ renderType + " renderer" + gpu_renderer + " | " +
22
+ audioType + " | " +
23
+ "pixel ratio " + devicePixelRatio + " | " +
24
+ (platform.nodeJS ? "node.js" : platform.isMobile ? "mobile" : "desktop") + " | " +
25
+ getScreenOrientation() + " | " +
26
+ language
27
+ );
28
+
29
+ console.log( "resolution: " + "requested " + app.settings.width + "x" + app.settings.height +
30
+ ", got " + app.renderer.getWidth() + "x" + app.renderer.getHeight()
31
+ );
32
+ }
33
+
34
+ export { consoleHeader };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -0,0 +1,28 @@
1
+ /*!
2
+ * melonJS Game Engine - v14.3.0
3
+ * http://www.melonjs.org
4
+ * melonjs is licensed under the MIT License.
5
+ * http://www.opensource.org/licenses/mit-license
6
+ * @copyright (C) 2011 - 2022 Olivier Biot (AltByte Pte Ltd)
7
+ */
8
+ // default settings
9
+ const defaultSettings = {
10
+ parent : undefined,
11
+ renderer : 2, // AUTO
12
+ autoScale : false,
13
+ scale : 1.0,
14
+ scaleMethod : "manual",
15
+ transparent : false,
16
+ premultipliedAlpha: true,
17
+ blendMode : "normal",
18
+ antiAlias : false,
19
+ failIfMajorPerformanceCaveat : true,
20
+ subPixel : false,
21
+ preferWebGL1 : false,
22
+ powerPreference : "default",
23
+ verbose : false,
24
+ consoleHeader : true,
25
+ legacy : false
26
+ };
27
+
28
+ export { defaultSettings };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -17,7 +17,7 @@ import { on, GAME_RESET, CANVAS_ONRESIZE, emit, VIEWPORT_ONRESIZE, VIEWPORT_ONCH
17
17
  import pool from '../system/pooling.js';
18
18
  import Renderable from '../renderable/renderable.js';
19
19
  import { clamp, toBeCloseTo } from '../math/math.js';
20
- import game from '../game.js';
20
+ import { game } from '../index.js';
21
21
 
22
22
  // some ref shortcut
23
23
  const MIN = Math.min, MAX = Math.max;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,34 +1,10 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
6
6
  * @copyright (C) 2011 - 2022 Olivier Biot (AltByte Pte Ltd)
7
7
  */
8
- import * as audio from './audio/audio.js';
9
- export { audio };
10
- export { default as collision } from './physics/collision.js';
11
- import { emit, BOOT } from './system/event.js';
12
- import * as event from './system/event.js';
13
- export { event };
14
- import { onReady } from './system/device.js';
15
- import * as device from './system/device.js';
16
- export { device };
17
- export { default as game } from './game.js';
18
- import loader from './loader/loader.js';
19
- import * as math from './math/math.js';
20
- export { math as Math };
21
- import utils from './utils/utils.js';
22
- import * as input from './input/input.js';
23
- export { input };
24
- export { plugin, plugins } from './plugin/plugin.js';
25
- import * as video from './video/video.js';
26
- export { video };
27
- export { default as save } from './system/save.js';
28
- export { default as timer } from './system/timer.js';
29
- import pool from './system/pooling.js';
30
- export { default as state } from './state/state.js';
31
- export { default as level } from './level/level.js';
32
8
  import Color from './math/color.js';
33
9
  import Vector2d from './math/vector2.js';
34
10
  import Vector3d from './math/vector3.js';
@@ -54,9 +30,6 @@ export { default as CanvasRenderer } from './video/canvas/canvas_renderer.js';
54
30
  import CanvasTexture from './video/texture/canvas_texture.js';
55
31
  export { TextureAtlas } from './video/texture/atlas.js';
56
32
  import Renderable from './renderable/renderable.js';
57
- import Text from './text/text.js';
58
- import BitmapText from './text/bitmaptext.js';
59
- import BitmapTextData from './text/bitmaptextdata.js';
60
33
  import ColorLayer from './renderable/colorlayer.js';
61
34
  import ImageLayer from './renderable/imagelayer.js';
62
35
  import Sprite from './renderable/sprite.js';
@@ -67,6 +40,9 @@ export { default as UISpriteElement } from './renderable/ui/uispriteelement.js';
67
40
  import Collectable from './renderable/collectable.js';
68
41
  import Trigger from './renderable/trigger.js';
69
42
  import Light2d from './renderable/light2d.js';
43
+ import Text from './text/text.js';
44
+ import BitmapText from './text/bitmaptext.js';
45
+ import BitmapTextData from './text/bitmaptextdata.js';
70
46
  export { Draggable, DropTarget } from './renderable/dragndrop.js';
71
47
  export { default as TMXRenderer } from './level/tiled/renderer/TMXRenderer.js';
72
48
  export { default as TMXOrthogonalRenderer } from './level/tiled/renderer/TMXOrthogonalRenderer.js';
@@ -87,6 +63,30 @@ export { default as ParticleEmitterSettings } from './particles/settings.js';
87
63
  export { default as ParticleEmitter } from './particles/emitter.js';
88
64
  import Particle from './particles/particle.js';
89
65
  import Entity from './entity/entity.js';
66
+ import Application from './application/application.js';
67
+ import * as audio from './audio/audio.js';
68
+ export { audio };
69
+ export { default as collision } from './physics/collision.js';
70
+ import { emit, BOOT } from './system/event.js';
71
+ import * as event from './system/event.js';
72
+ export { event };
73
+ import { onReady } from './system/device.js';
74
+ import * as device from './system/device.js';
75
+ export { device };
76
+ import loader from './loader/loader.js';
77
+ import * as math from './math/math.js';
78
+ export { math as Math };
79
+ import utils from './utils/utils.js';
80
+ import * as input from './input/input.js';
81
+ export { input };
82
+ export { plugin, plugins } from './plugin/plugin.js';
83
+ import * as video from './video/video.js';
84
+ export { video };
85
+ export { default as save } from './system/save.js';
86
+ export { default as timer } from './system/timer.js';
87
+ import pool from './system/pooling.js';
88
+ export { default as state } from './state/state.js';
89
+ export { default as level } from './level/level.js';
90
90
  export { DraggableEntity, DroptargetEntity, GUI_Object, warning } from './lang/deprecated.js';
91
91
  import { initKeyboardEvent } from './input/keyboard.js';
92
92
 
@@ -100,7 +100,7 @@ import { initKeyboardEvent } from './input/keyboard.js';
100
100
  * @name version
101
101
  * @type {string}
102
102
  */
103
- const version = "14.2.0";
103
+ const version = "14.3.0";
104
104
 
105
105
 
106
106
  /**
@@ -119,6 +119,14 @@ var initialized = false;
119
119
  */
120
120
  var skipAutoInit = false;
121
121
 
122
+ /*
123
+ * game is a default instance of a melonJS Application and represents your current game,
124
+ * it contains all the objects, tilemap layers, current viewport, collision map, etc...<br>
125
+ * @namespace game
126
+ * @see Application
127
+ */
128
+ const game = new Application(0, 0, {legacy:true});
129
+
122
130
  /**
123
131
  * initialize the melonJS library.
124
132
  * this is automatically called unless me.skipAutoInit is set to true,
@@ -133,6 +141,9 @@ function boot() {
133
141
  return;
134
142
  }
135
143
 
144
+ // output melonJS version in the console
145
+ console.log("melonJS 2 (v" + version + ") | http://melonjs.org" );
146
+
136
147
  // register all built-ins objects into the object pool
137
148
  pool.register("me.Entity", Entity);
138
149
  pool.register("me.Collectable", Collectable);
@@ -214,4 +225,4 @@ onReady(() => {
214
225
  }
215
226
  });
216
227
 
217
- export { BitmapText, BitmapTextData, Bounds, Collectable, Color, ColorLayer, Ellipse, Entity, ImageLayer, Light2d, Line, Matrix2d, Matrix3d, NineSliceSprite, ObservableVector2d, ObservableVector3d, Particle, Point, Polygon, Rect, Renderable, RoundRect, Sprite, Text, Trigger, Tween, Vector2d, Vector3d, boot, initialized, loader, pool, skipAutoInit, utils, version };
228
+ export { Application, BitmapText, BitmapTextData, Bounds, Collectable, Color, ColorLayer, Ellipse, Entity, ImageLayer, Light2d, Line, Matrix2d, Matrix3d, NineSliceSprite, ObservableVector2d, ObservableVector3d, Particle, Point, Polygon, Rect, Renderable, RoundRect, Sprite, Text, Trigger, Tween, Vector2d, Vector3d, boot, game, initialized, loader, pool, skipAutoInit, utils, version };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import Vector2d from '../math/vector2.js';
9
9
  import Bounds from '../physics/bounds.js';
10
- import game from '../game.js';
10
+ import { game } from '../index.js';
11
11
  import { globalToLocal, locked } from './pointerevent.js';
12
12
 
13
13
  /**
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license
@@ -16,7 +16,7 @@ import pool from '../system/pooling.js';
16
16
  import { getElementBounds, hasPointerLockSupport, maxTouchPoints, pointerEvent, touch, focus, touchEvent } from '../system/device.js';
17
17
  import Pointer from './pointer.js';
18
18
  import Rect from '../geometries/rectangle.js';
19
- import game from '../game.js';
19
+ import { game } from '../index.js';
20
20
 
21
21
  /**
22
22
  * A pool of `Pointer` objects to cache pointer/touch event coordinates.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v14.2.0
2
+ * melonJS Game Engine - v14.3.0
3
3
  * http://www.melonjs.org
4
4
  * melonjs is licensed under the MIT License.
5
5
  * http://www.opensource.org/licenses/mit-license