melonjs 17.1.0 → 17.2.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 (246) hide show
  1. package/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +1 -1
  2. package/dist/melonjs.mjs/_virtual/earcut.js +1 -1
  3. package/dist/melonjs.mjs/_virtual/howler.js +1 -1
  4. package/dist/melonjs.mjs/_virtual/index.js +1 -1
  5. package/dist/melonjs.mjs/_virtual/re.js +1 -1
  6. package/dist/melonjs.mjs/application/application.js +2 -2
  7. package/dist/melonjs.mjs/application/header.js +2 -2
  8. package/dist/melonjs.mjs/application/resize.js +1 -1
  9. package/dist/melonjs.mjs/application/settings.js +1 -1
  10. package/dist/melonjs.mjs/audio/audio.js +13 -9
  11. package/dist/melonjs.mjs/camera/camera2d.js +1 -1
  12. package/dist/melonjs.mjs/const.js +1 -1
  13. package/dist/melonjs.mjs/geometries/ellipse.js +1 -1
  14. package/dist/melonjs.mjs/geometries/line.js +1 -1
  15. package/dist/melonjs.mjs/geometries/path2d.js +17 -17
  16. package/dist/melonjs.mjs/geometries/point.js +1 -1
  17. package/dist/melonjs.mjs/geometries/poly.js +1 -1
  18. package/dist/melonjs.mjs/geometries/rectangle.js +1 -1
  19. package/dist/melonjs.mjs/geometries/roundrect.js +1 -1
  20. package/dist/melonjs.mjs/geometries/toarccanvas.js +4 -6
  21. package/dist/melonjs.mjs/index.js +4 -4
  22. package/dist/melonjs.mjs/input/gamepad.js +1 -1
  23. package/dist/melonjs.mjs/input/input.js +1 -1
  24. package/dist/melonjs.mjs/input/keyboard.js +1 -1
  25. package/dist/melonjs.mjs/input/pointer.js +1 -1
  26. package/dist/melonjs.mjs/input/pointerevent.js +1 -1
  27. package/dist/melonjs.mjs/lang/console.js +1 -1
  28. package/dist/melonjs.mjs/lang/deprecated.js +1 -1
  29. package/dist/melonjs.mjs/level/level.js +1 -1
  30. package/dist/melonjs.mjs/level/tiled/TMXGroup.js +1 -1
  31. package/dist/melonjs.mjs/level/tiled/TMXLayer.js +1 -1
  32. package/dist/melonjs.mjs/level/tiled/TMXObject.js +2 -2
  33. package/dist/melonjs.mjs/level/tiled/TMXTile.js +1 -1
  34. package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +2 -2
  35. package/dist/melonjs.mjs/level/tiled/TMXTileset.js +1 -1
  36. package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +1 -1
  37. package/dist/melonjs.mjs/level/tiled/TMXUtils.js +3 -3
  38. package/dist/melonjs.mjs/level/tiled/constants.js +1 -1
  39. package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +5 -5
  40. package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +1 -1
  41. package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +3 -3
  42. package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +1 -1
  43. package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +1 -1
  44. package/dist/melonjs.mjs/level/tiled/renderer/autodetect.js +1 -1
  45. package/dist/melonjs.mjs/loader/cache.js +5 -2
  46. package/dist/melonjs.mjs/loader/loader.js +34 -5
  47. package/dist/melonjs.mjs/loader/loadingscreen.js +2 -4
  48. package/dist/melonjs.mjs/loader/melonjs_logo.png.js +1 -1
  49. package/dist/melonjs.mjs/loader/parsers/binary.js +1 -1
  50. package/dist/melonjs.mjs/loader/parsers/compressed_textures/compressed_image.js +1 -1
  51. package/dist/melonjs.mjs/loader/parsers/compressed_textures/parseDDS.js +1 -1
  52. package/dist/melonjs.mjs/loader/parsers/compressed_textures/parseKTX.js +1 -1
  53. package/dist/melonjs.mjs/loader/parsers/compressed_textures/parseKTX2.js +1 -1
  54. package/dist/melonjs.mjs/loader/parsers/compressed_textures/parsePKM.js +1 -1
  55. package/dist/melonjs.mjs/loader/parsers/compressed_textures/parsePVR.js +1 -1
  56. package/dist/melonjs.mjs/loader/parsers/fetchdata.js +1 -1
  57. package/dist/melonjs.mjs/loader/parsers/fontface.js +25 -15
  58. package/dist/melonjs.mjs/loader/parsers/image.js +3 -3
  59. package/dist/melonjs.mjs/loader/parsers/json.js +1 -1
  60. package/dist/melonjs.mjs/loader/parsers/script.js +1 -1
  61. package/dist/melonjs.mjs/loader/parsers/tmx.js +1 -1
  62. package/dist/melonjs.mjs/loader/parsers/video.js +1 -1
  63. package/dist/melonjs.mjs/math/color.js +6 -6
  64. package/dist/melonjs.mjs/math/math.js +1 -1
  65. package/dist/melonjs.mjs/math/matrix2.js +7 -7
  66. package/dist/melonjs.mjs/math/matrix3.js +2 -2
  67. package/dist/melonjs.mjs/math/observable_vector2.js +3 -3
  68. package/dist/melonjs.mjs/math/observable_vector3.js +4 -4
  69. package/dist/melonjs.mjs/math/vector2.js +3 -3
  70. package/dist/melonjs.mjs/math/vector3.js +4 -4
  71. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/arraymultimap.js +1 -1
  72. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/multimap.js +1 -1
  73. package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +1 -1
  74. package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +1 -1
  75. package/dist/melonjs.mjs/node_modules/eventemitter3/index2.js +1 -1
  76. package/dist/melonjs.mjs/node_modules/howler/dist/howler.js +1 -1
  77. package/dist/melonjs.mjs/node_modules/semver/classes/comparator.js +1 -1
  78. package/dist/melonjs.mjs/node_modules/semver/classes/range.js +1 -1
  79. package/dist/melonjs.mjs/node_modules/semver/classes/semver.js +1 -1
  80. package/dist/melonjs.mjs/node_modules/semver/functions/clean.js +1 -1
  81. package/dist/melonjs.mjs/node_modules/semver/functions/cmp.js +1 -1
  82. package/dist/melonjs.mjs/node_modules/semver/functions/coerce.js +1 -1
  83. package/dist/melonjs.mjs/node_modules/semver/functions/compare-build.js +1 -1
  84. package/dist/melonjs.mjs/node_modules/semver/functions/compare-loose.js +1 -1
  85. package/dist/melonjs.mjs/node_modules/semver/functions/compare.js +1 -1
  86. package/dist/melonjs.mjs/node_modules/semver/functions/diff.js +1 -1
  87. package/dist/melonjs.mjs/node_modules/semver/functions/eq.js +1 -1
  88. package/dist/melonjs.mjs/node_modules/semver/functions/gt.js +1 -1
  89. package/dist/melonjs.mjs/node_modules/semver/functions/gte.js +1 -1
  90. package/dist/melonjs.mjs/node_modules/semver/functions/inc.js +1 -1
  91. package/dist/melonjs.mjs/node_modules/semver/functions/lt.js +1 -1
  92. package/dist/melonjs.mjs/node_modules/semver/functions/lte.js +1 -1
  93. package/dist/melonjs.mjs/node_modules/semver/functions/major.js +1 -1
  94. package/dist/melonjs.mjs/node_modules/semver/functions/minor.js +1 -1
  95. package/dist/melonjs.mjs/node_modules/semver/functions/neq.js +1 -1
  96. package/dist/melonjs.mjs/node_modules/semver/functions/parse.js +1 -1
  97. package/dist/melonjs.mjs/node_modules/semver/functions/patch.js +1 -1
  98. package/dist/melonjs.mjs/node_modules/semver/functions/prerelease.js +1 -1
  99. package/dist/melonjs.mjs/node_modules/semver/functions/rcompare.js +1 -1
  100. package/dist/melonjs.mjs/node_modules/semver/functions/rsort.js +1 -1
  101. package/dist/melonjs.mjs/node_modules/semver/functions/satisfies.js +1 -1
  102. package/dist/melonjs.mjs/node_modules/semver/functions/sort.js +1 -1
  103. package/dist/melonjs.mjs/node_modules/semver/functions/valid.js +1 -1
  104. package/dist/melonjs.mjs/node_modules/semver/index.js +1 -1
  105. package/dist/melonjs.mjs/node_modules/semver/internal/constants.js +1 -1
  106. package/dist/melonjs.mjs/node_modules/semver/internal/debug.js +1 -1
  107. package/dist/melonjs.mjs/node_modules/semver/internal/identifiers.js +1 -1
  108. package/dist/melonjs.mjs/node_modules/semver/internal/parse-options.js +1 -1
  109. package/dist/melonjs.mjs/node_modules/semver/internal/re.js +1 -1
  110. package/dist/melonjs.mjs/node_modules/semver/node_modules/lru-cache/index.js +1 -1
  111. package/dist/melonjs.mjs/node_modules/semver/node_modules/yallist/iterator.js +1 -1
  112. package/dist/melonjs.mjs/node_modules/semver/node_modules/yallist/yallist.js +1 -1
  113. package/dist/melonjs.mjs/node_modules/semver/ranges/gtr.js +1 -1
  114. package/dist/melonjs.mjs/node_modules/semver/ranges/intersects.js +1 -1
  115. package/dist/melonjs.mjs/node_modules/semver/ranges/ltr.js +1 -1
  116. package/dist/melonjs.mjs/node_modules/semver/ranges/max-satisfying.js +1 -1
  117. package/dist/melonjs.mjs/node_modules/semver/ranges/min-satisfying.js +1 -1
  118. package/dist/melonjs.mjs/node_modules/semver/ranges/min-version.js +1 -1
  119. package/dist/melonjs.mjs/node_modules/semver/ranges/outside.js +1 -1
  120. package/dist/melonjs.mjs/node_modules/semver/ranges/simplify.js +1 -1
  121. package/dist/melonjs.mjs/node_modules/semver/ranges/subset.js +1 -1
  122. package/dist/melonjs.mjs/node_modules/semver/ranges/to-comparators.js +1 -1
  123. package/dist/melonjs.mjs/node_modules/semver/ranges/valid.js +1 -1
  124. package/dist/melonjs.mjs/particles/emitter.js +1 -1
  125. package/dist/melonjs.mjs/particles/particle.js +1 -1
  126. package/dist/melonjs.mjs/particles/settings.js +1 -1
  127. package/dist/melonjs.mjs/physics/body.js +4 -4
  128. package/dist/melonjs.mjs/physics/bounds.js +1 -1
  129. package/dist/melonjs.mjs/physics/collision.js +1 -1
  130. package/dist/melonjs.mjs/physics/detector.js +2 -2
  131. package/dist/melonjs.mjs/physics/quadtree.js +1 -1
  132. package/dist/melonjs.mjs/physics/response.js +1 -1
  133. package/dist/melonjs.mjs/physics/sat.js +1 -1
  134. package/dist/melonjs.mjs/physics/world.js +1 -1
  135. package/dist/melonjs.mjs/plugin/plugin.js +3 -3
  136. package/dist/melonjs.mjs/renderable/collectable.js +1 -1
  137. package/dist/melonjs.mjs/renderable/colorlayer.js +1 -1
  138. package/dist/melonjs.mjs/renderable/container.js +2 -2
  139. package/dist/melonjs.mjs/renderable/draggable.js +1 -1
  140. package/dist/melonjs.mjs/renderable/dragndrop.js +1 -1
  141. package/dist/melonjs.mjs/renderable/entity/entity.js +1 -1
  142. package/dist/melonjs.mjs/renderable/imagelayer.js +1 -1
  143. package/dist/melonjs.mjs/renderable/light2d.js +7 -7
  144. package/dist/melonjs.mjs/renderable/nineslicesprite.js +1 -1
  145. package/dist/melonjs.mjs/renderable/renderable.js +1 -1
  146. package/dist/melonjs.mjs/renderable/sprite.js +1 -1
  147. package/dist/melonjs.mjs/renderable/text/bitmaptext.js +1 -1
  148. package/dist/melonjs.mjs/renderable/text/bitmaptextdata.js +1 -1
  149. package/dist/melonjs.mjs/renderable/text/glyph.js +1 -1
  150. package/dist/melonjs.mjs/renderable/text/text.js +1 -1
  151. package/dist/melonjs.mjs/renderable/text/textmetrics.js +1 -1
  152. package/dist/melonjs.mjs/renderable/text/textstyle.js +1 -1
  153. package/dist/melonjs.mjs/renderable/trigger.js +1 -1
  154. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +1 -1
  155. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +1 -1
  156. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +1 -1
  157. package/dist/melonjs.mjs/state/stage.js +1 -1
  158. package/dist/melonjs.mjs/state/state.js +5 -5
  159. package/dist/melonjs.mjs/system/device.js +6 -6
  160. package/dist/melonjs.mjs/system/dom.js +1 -1
  161. package/dist/melonjs.mjs/system/event.js +1 -1
  162. package/dist/melonjs.mjs/system/platform.js +4 -2
  163. package/dist/melonjs.mjs/system/pooling.js +2 -2
  164. package/dist/melonjs.mjs/system/save.js +2 -2
  165. package/dist/melonjs.mjs/system/timer.js +2 -2
  166. package/dist/melonjs.mjs/tweens/easing.js +68 -70
  167. package/dist/melonjs.mjs/tweens/interpolation.js +29 -29
  168. package/dist/melonjs.mjs/tweens/tween.js +43 -43
  169. package/dist/melonjs.mjs/utils/agent.js +1 -1
  170. package/dist/melonjs.mjs/utils/array.js +1 -1
  171. package/dist/melonjs.mjs/utils/file.js +1 -1
  172. package/dist/melonjs.mjs/utils/function.js +1 -1
  173. package/dist/melonjs.mjs/utils/string.js +1 -1
  174. package/dist/melonjs.mjs/utils/utils.js +1 -1
  175. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +6 -5
  176. package/dist/melonjs.mjs/video/renderer.js +17 -69
  177. package/dist/melonjs.mjs/video/rendertarget/canvasrendertarget.js +12 -6
  178. package/dist/melonjs.mjs/video/texture/atlas.js +1 -1
  179. package/dist/melonjs.mjs/video/texture/cache.js +1 -1
  180. package/dist/melonjs.mjs/video/texture/parser/aseprite.js +1 -1
  181. package/dist/melonjs.mjs/video/texture/parser/spritesheet.js +1 -1
  182. package/dist/melonjs.mjs/video/texture/parser/texturepacker.js +1 -1
  183. package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
  184. package/dist/melonjs.mjs/video/video.js +1 -1
  185. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +1 -1
  186. package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +1 -1
  187. package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +1 -1
  188. package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +1 -1
  189. package/dist/melonjs.mjs/video/webgl/glshader.js +1 -1
  190. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
  191. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
  192. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
  193. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
  194. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +1 -1
  195. package/dist/melonjs.mjs/video/webgl/utils/precision.js +5 -5
  196. package/dist/melonjs.mjs/video/webgl/utils/program.js +1 -1
  197. package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
  198. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +1 -1
  199. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +8 -7
  200. package/dist/melonjs.module.js +358 -369
  201. package/dist/types/audio/audio.d.ts +8 -4
  202. package/dist/types/loader/cache.d.ts +1 -0
  203. package/dist/types/loader/loader.d.ts +7 -0
  204. package/dist/types/system/platform.d.ts +2 -0
  205. package/dist/types/video/renderer.d.ts +5 -15
  206. package/dist/types/video/rendertarget/canvasrendertarget.d.ts +6 -9
  207. package/package.json +13 -13
  208. package/src/application/application.js +1 -1
  209. package/src/application/header.js +1 -1
  210. package/src/audio/audio.js +12 -8
  211. package/src/geometries/path2d.js +16 -16
  212. package/src/index.js +2 -2
  213. package/src/level/tiled/TMXObject.js +1 -1
  214. package/src/level/tiled/TMXTileMap.js +1 -1
  215. package/src/level/tiled/TMXUtils.js +2 -2
  216. package/src/level/tiled/renderer/TMXHexagonalRenderer.js +4 -4
  217. package/src/level/tiled/renderer/TMXOrthogonalRenderer.js +2 -2
  218. package/src/loader/cache.js +3 -0
  219. package/src/loader/loader.js +33 -3
  220. package/src/loader/parsers/fontface.js +24 -14
  221. package/src/loader/parsers/image.js +2 -2
  222. package/src/math/color.js +5 -5
  223. package/src/math/matrix2.js +6 -6
  224. package/src/math/matrix3.js +1 -1
  225. package/src/math/observable_vector2.js +2 -2
  226. package/src/math/observable_vector3.js +3 -3
  227. package/src/math/vector2.js +2 -2
  228. package/src/math/vector3.js +3 -3
  229. package/src/physics/body.js +3 -3
  230. package/src/physics/detector.js +1 -1
  231. package/src/renderable/container.js +1 -1
  232. package/src/renderable/light2d.js +6 -6
  233. package/src/state/state.js +4 -4
  234. package/src/system/device.js +5 -5
  235. package/src/system/platform.js +2 -0
  236. package/src/system/pooling.js +1 -1
  237. package/src/system/save.js +1 -1
  238. package/src/system/timer.js +1 -1
  239. package/src/tweens/easing.js +67 -69
  240. package/src/tweens/interpolation.js +28 -28
  241. package/src/tweens/tween.js +42 -42
  242. package/src/video/canvas/canvas_renderer.js +5 -4
  243. package/src/video/renderer.js +16 -68
  244. package/src/video/rendertarget/canvasrendertarget.js +11 -5
  245. package/src/video/webgl/utils/precision.js +4 -4
  246. package/src/video/webgl/webgl_renderer.js +7 -6
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.2.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 - v17.1.0
2
+ * melonJS Game Engine - v17.2.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 - v17.1.0
2
+ * melonJS Game Engine - v17.2.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 - v17.1.0
2
+ * melonJS Game Engine - v17.2.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 - v17.1.0
2
+ * melonJS Game Engine - v17.2.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 - v17.1.0
2
+ * melonJS Game Engine - v17.2.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
@@ -248,7 +248,7 @@ let state = {
248
248
  * @public
249
249
  * @param {boolean} [pauseTrack=false] - pause current track on screen stop.
250
250
  */
251
- stop(pauseTrack=false) {
251
+ stop(pauseTrack = false) {
252
252
  // only stop when we are not loading stuff
253
253
  if ((_state !== this.LOADING) && this.isRunning()) {
254
254
  // stop the main loop
@@ -274,7 +274,7 @@ let state = {
274
274
  * @public
275
275
  * @param {boolean} [music=false] - pause current music track on screen pause
276
276
  */
277
- pause(music=false) {
277
+ pause(music = false) {
278
278
  // only pause when we are not loading stuff
279
279
  if ((_state !== this.LOADING) && !this.isPaused()) {
280
280
  // stop the main loop
@@ -299,7 +299,7 @@ let state = {
299
299
  * @public
300
300
  * @param {boolean} [music=false] - resume current music track on screen resume
301
301
  */
302
- restart(music=false) {
302
+ restart(music = false) {
303
303
  if (!this.isRunning()) {
304
304
  // restart the main loop
305
305
  _startRunLoop();
@@ -323,7 +323,7 @@ let state = {
323
323
  * @public
324
324
  * @param {boolean} [music=false] - resume current music track on screen resume
325
325
  */
326
- resume(music=false) {
326
+ resume(music = false) {
327
327
  if (this.isPaused()) {
328
328
  // resume the main loop
329
329
  _resumeRunLoop();
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.2.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
@@ -41,7 +41,7 @@ function disableSwipeFn(e) {
41
41
  function hasLocalStorage() {
42
42
  try {
43
43
  return !!globalThis.localStorage;
44
- } catch (e) {
44
+ } catch {
45
45
  // the above generates an exception when cookies are blocked
46
46
  return false;
47
47
  }
@@ -51,8 +51,8 @@ function hasOffscreenCanvas() {
51
51
  try {
52
52
  // some browser (e.g. Safari) implements WebGL1 and WebGL2 contexts only
53
53
  // https://bugzilla.mozilla.org/show_bug.cgi?id=801176
54
- return (typeof globalThis.OffscreenCanvas !== "undefined") && ((new globalThis.OffscreenCanvas(0, 0).getContext( "2d" )) !== null);
55
- } catch (e) {
54
+ return (typeof globalThis.OffscreenCanvas !== "undefined") && ((new globalThis.OffscreenCanvas(0, 0).getContext("2d")) !== null);
55
+ } catch {
56
56
  return false;
57
57
  }
58
58
  }
@@ -428,7 +428,7 @@ function onReady(fn) {
428
428
  } else {
429
429
  emit(BLUR);
430
430
  }
431
- }, false );
431
+ }, false);
432
432
  }
433
433
  }
434
434
  // call the supplied function
@@ -696,7 +696,7 @@ function isWebGLSupported(options) {
696
696
  };
697
697
  _supported = !! (globalThis.WebGLRenderingContext && (canvas.getContext("webgl", ctxOptions) || canvas.getContext("experimental-webgl", ctxOptions)));
698
698
  WebGLSupport = _supported ? 1 : 0;
699
- } catch (e) {
699
+ } catch {
700
700
  WebGLSupport = 0;
701
701
  }
702
702
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.2.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 - v17.1.0
2
+ * melonJS Game Engine - v17.2.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 - v17.1.0
2
+ * melonJS Game Engine - v17.2.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
@@ -22,6 +22,7 @@
22
22
  * @property {boolean} isWeixin `true` if running under Wechat
23
23
  * @property {boolean} nodeJS `true` if running under node.js
24
24
  * @property {boolean} isMobile `true` if a mobile device
25
+ * @property {boolean} webApp `true` if running as a standalone web app
25
26
  */
26
27
 
27
28
  const ua = typeof globalThis.navigator !== "undefined" ? globalThis.navigator.userAgent : "";
@@ -37,5 +38,6 @@ const ejecta = (typeof globalThis.ejecta !== "undefined");
37
38
  const isWeixin = /MicroMessenger/i.test(ua);
38
39
  const nodeJS = (typeof globalThis.process !== "undefined") && (typeof globalThis.process.release !== "undefined") && (globalThis.process.release.name === "node");
39
40
  const isMobile = /Mobi/i.test(ua) || iOS || android || wp || BlackBerry || Kindle || false;
41
+ const webApp = (typeof globalThis.navigator !== "undefined" && globalThis.navigator.standalone === true) || (typeof globalThis.matchMedia !== "undefined" && globalThis.matchMedia("(display-mode: standalone)").matches);
40
42
 
41
- export { BlackBerry, Kindle, android, android2, chromeOS, ejecta, iOS, isMobile, isWeixin, linux, nodeJS, ua, wp };
43
+ export { BlackBerry, Kindle, android, android2, chromeOS, ejecta, iOS, isMobile, isWeixin, linux, nodeJS, ua, webApp, wp };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.2.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
@@ -125,7 +125,7 @@ class ObjectPool {
125
125
  */
126
126
  push(obj, throwOnError = true) {
127
127
  if (!this.poolable(obj)) {
128
- if (throwOnError === true ) {
128
+ if (throwOnError === true) {
129
129
  throw new Error("me.pool: object " + obj + " cannot be recycled");
130
130
  } else {
131
131
  return false;
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.2.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
@@ -46,7 +46,7 @@ let hasLocalStorage = false;
46
46
  try {
47
47
  // true if localStorage is supported
48
48
  hasLocalStorage = typeof globalThis !== "undefined" && typeof globalThis.localStorage !== "undefined";
49
- } catch (e) {
49
+ } catch {
50
50
  // the above generates an exception when cookies are blocked
51
51
  hasLocalStorage = false;
52
52
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.2.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
@@ -65,7 +65,7 @@ class Timer {
65
65
  this.now = 0;
66
66
  this.delta = 0;
67
67
  // for timeout/interval update
68
- this.step =0;
68
+ this.step = 0;
69
69
  this.minstep = 0;
70
70
 
71
71
  // list of defined timer function
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.2.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
@@ -10,8 +10,6 @@
10
10
  * https://github.com/tweenjs/tween.js
11
11
  */
12
12
 
13
- /* eslint-disable quotes, keyword-spacing, comma-spacing, no-return-assign */
14
-
15
13
  /**
16
14
  * Easing Function :<br>
17
15
  * <p>
@@ -57,7 +55,7 @@ let Easing = {
57
55
 
58
56
  Linear: {
59
57
  /** @ignore */
60
- None: function ( k ) {
58
+ None: function (k) {
61
59
 
62
60
  return k;
63
61
 
@@ -67,22 +65,22 @@ let Easing = {
67
65
 
68
66
  Quadratic: {
69
67
  /** @ignore */
70
- In: function ( k ) {
68
+ In: function (k) {
71
69
 
72
70
  return k * k;
73
71
 
74
72
  },
75
73
  /** @ignore */
76
- Out: function ( k ) {
74
+ Out: function (k) {
77
75
 
78
- return k * ( 2 - k );
76
+ return k * (2 - k);
79
77
 
80
78
  },
81
79
  /** @ignore */
82
- InOut: function ( k ) {
80
+ InOut: function (k) {
83
81
 
84
- if ( ( k *= 2 ) < 1 ) return 0.5 * k * k;
85
- return - 0.5 * ( --k * ( k - 2 ) - 1 );
82
+ if ((k *= 2) < 1) return 0.5 * k * k;
83
+ return - 0.5 * (--k * (k - 2) - 1);
86
84
 
87
85
  }
88
86
 
@@ -90,22 +88,22 @@ let Easing = {
90
88
 
91
89
  Cubic: {
92
90
  /** @ignore */
93
- In: function ( k ) {
91
+ In: function (k) {
94
92
 
95
93
  return k * k * k;
96
94
 
97
95
  },
98
96
  /** @ignore */
99
- Out: function ( k ) {
97
+ Out: function (k) {
100
98
 
101
99
  return --k * k * k + 1;
102
100
 
103
101
  },
104
102
  /** @ignore */
105
- InOut: function ( k ) {
103
+ InOut: function (k) {
106
104
 
107
- if ( ( k *= 2 ) < 1 ) return 0.5 * k * k * k;
108
- return 0.5 * ( ( k -= 2 ) * k * k + 2 );
105
+ if ((k *= 2) < 1) return 0.5 * k * k * k;
106
+ return 0.5 * ((k -= 2) * k * k + 2);
109
107
 
110
108
  }
111
109
 
@@ -113,22 +111,22 @@ let Easing = {
113
111
 
114
112
  Quartic: {
115
113
  /** @ignore */
116
- In: function ( k ) {
114
+ In: function (k) {
117
115
 
118
116
  return k * k * k * k;
119
117
 
120
118
  },
121
119
  /** @ignore */
122
- Out: function ( k ) {
120
+ Out: function (k) {
123
121
 
124
- return 1 - ( --k * k * k * k );
122
+ return 1 - (--k * k * k * k);
125
123
 
126
124
  },
127
125
  /** @ignore */
128
- InOut: function ( k ) {
126
+ InOut: function (k) {
129
127
 
130
- if ( ( k *= 2 ) < 1) return 0.5 * k * k * k * k;
131
- return - 0.5 * ( ( k -= 2 ) * k * k * k - 2 );
128
+ if ((k *= 2) < 1) return 0.5 * k * k * k * k;
129
+ return - 0.5 * ((k -= 2) * k * k * k - 2);
132
130
 
133
131
  }
134
132
 
@@ -136,22 +134,22 @@ let Easing = {
136
134
 
137
135
  Quintic: {
138
136
  /** @ignore */
139
- In: function ( k ) {
137
+ In: function (k) {
140
138
 
141
139
  return k * k * k * k * k;
142
140
 
143
141
  },
144
142
  /** @ignore */
145
- Out: function ( k ) {
143
+ Out: function (k) {
146
144
 
147
145
  return --k * k * k * k * k + 1;
148
146
 
149
147
  },
150
148
  /** @ignore */
151
- InOut: function ( k ) {
149
+ InOut: function (k) {
152
150
 
153
- if ( ( k *= 2 ) < 1 ) return 0.5 * k * k * k * k * k;
154
- return 0.5 * ( ( k -= 2 ) * k * k * k * k + 2 );
151
+ if ((k *= 2) < 1) return 0.5 * k * k * k * k * k;
152
+ return 0.5 * ((k -= 2) * k * k * k * k + 2);
155
153
 
156
154
  }
157
155
 
@@ -159,21 +157,21 @@ let Easing = {
159
157
 
160
158
  Sinusoidal: {
161
159
  /** @ignore */
162
- In: function ( k ) {
160
+ In: function (k) {
163
161
 
164
- return 1 - Math.cos( k * Math.PI / 2 );
162
+ return 1 - Math.cos(k * Math.PI / 2);
165
163
 
166
164
  },
167
165
  /** @ignore */
168
- Out: function ( k ) {
166
+ Out: function (k) {
169
167
 
170
- return Math.sin( k * Math.PI / 2 );
168
+ return Math.sin(k * Math.PI / 2);
171
169
 
172
170
  },
173
171
  /** @ignore */
174
- InOut: function ( k ) {
172
+ InOut: function (k) {
175
173
 
176
- return 0.5 * ( 1 - Math.cos( Math.PI * k ) );
174
+ return 0.5 * (1 - Math.cos(Math.PI * k));
177
175
 
178
176
  }
179
177
 
@@ -181,24 +179,24 @@ let Easing = {
181
179
 
182
180
  Exponential: {
183
181
  /** @ignore */
184
- In: function ( k ) {
182
+ In: function (k) {
185
183
 
186
- return k === 0 ? 0 : Math.pow( 1024, k - 1 );
184
+ return k === 0 ? 0 : Math.pow(1024, k - 1);
187
185
 
188
186
  },
189
187
  /** @ignore */
190
- Out: function ( k ) {
188
+ Out: function (k) {
191
189
 
192
- return k === 1 ? 1 : 1 - Math.pow( 2, - 10 * k );
190
+ return k === 1 ? 1 : 1 - Math.pow(2, - 10 * k);
193
191
 
194
192
  },
195
193
  /** @ignore */
196
- InOut: function ( k ) {
194
+ InOut: function (k) {
197
195
 
198
- if ( k === 0 ) return 0;
199
- if ( k === 1 ) return 1;
200
- if ( ( k *= 2 ) < 1 ) return 0.5 * Math.pow( 1024, k - 1 );
201
- return 0.5 * ( - Math.pow( 2, - 10 * ( k - 1 ) ) + 2 );
196
+ if (k === 0) return 0;
197
+ if (k === 1) return 1;
198
+ if ((k *= 2) < 1) return 0.5 * Math.pow(1024, k - 1);
199
+ return 0.5 * (- Math.pow(2, - 10 * (k - 1)) + 2);
202
200
 
203
201
  }
204
202
 
@@ -206,22 +204,22 @@ let Easing = {
206
204
 
207
205
  Circular: {
208
206
  /** @ignore */
209
- In: function ( k ) {
207
+ In: function (k) {
210
208
 
211
- return 1 - Math.sqrt( 1 - k * k );
209
+ return 1 - Math.sqrt(1 - k * k);
212
210
 
213
211
  },
214
212
  /** @ignore */
215
- Out: function ( k ) {
213
+ Out: function (k) {
216
214
 
217
- return Math.sqrt( 1 - ( --k * k ) );
215
+ return Math.sqrt(1 - (--k * k));
218
216
 
219
217
  },
220
218
  /** @ignore */
221
- InOut: function ( k ) {
219
+ InOut: function (k) {
222
220
 
223
- if ( ( k *= 2 ) < 1) return - 0.5 * ( Math.sqrt( 1 - k * k) - 1);
224
- return 0.5 * ( Math.sqrt( 1 - ( k -= 2) * k) + 1);
221
+ if ((k *= 2) < 1) return - 0.5 * (Math.sqrt(1 - k * k) - 1);
222
+ return 0.5 * (Math.sqrt(1 - (k -= 2) * k) + 1);
225
223
 
226
224
  }
227
225
 
@@ -229,7 +227,7 @@ let Easing = {
229
227
 
230
228
  Elastic: {
231
229
  /** @ignore */
232
- In: function ( k ) {
230
+ In: function (k) {
233
231
  if (k === 0) {
234
232
  return 0;
235
233
  }
@@ -239,7 +237,7 @@ let Easing = {
239
237
  return -Math.pow(2, 10 * (k - 1)) * Math.sin((k - 1.1) * 5 * Math.PI);
240
238
  },
241
239
  /** @ignore */
242
- Out: function ( k ) {
240
+ Out: function (k) {
243
241
  if (k === 0) {
244
242
  return 0;
245
243
  }
@@ -250,7 +248,7 @@ let Easing = {
250
248
 
251
249
  },
252
250
  /** @ignore */
253
- InOut: function ( k ) {
251
+ InOut: function (k) {
254
252
  if (k === 0) {
255
253
  return 0;
256
254
  }
@@ -268,25 +266,25 @@ let Easing = {
268
266
 
269
267
  Back: {
270
268
  /** @ignore */
271
- In: function ( k ) {
269
+ In: function (k) {
272
270
 
273
271
  const s = 1.70158;
274
- return k * k * ( ( s + 1 ) * k - s );
272
+ return k * k * ((s + 1) * k - s);
275
273
 
276
274
  },
277
275
  /** @ignore */
278
- Out: function ( k ) {
276
+ Out: function (k) {
279
277
 
280
278
  const s = 1.70158;
281
- return --k * k * ( ( s + 1 ) * k + s ) + 1;
279
+ return --k * k * ((s + 1) * k + s) + 1;
282
280
 
283
281
  },
284
282
  /** @ignore */
285
- InOut: function ( k ) {
283
+ InOut: function (k) {
286
284
 
287
285
  const s = 1.70158 * 1.525;
288
- if ( ( k *= 2 ) < 1 ) return 0.5 * ( k * k * ( ( s + 1 ) * k - s ) );
289
- return 0.5 * ( ( k -= 2 ) * k * ( ( s + 1 ) * k + s ) + 2 );
286
+ if ((k *= 2) < 1) return 0.5 * (k * k * ((s + 1) * k - s));
287
+ return 0.5 * ((k -= 2) * k * ((s + 1) * k + s) + 2);
290
288
 
291
289
  }
292
290
 
@@ -294,38 +292,38 @@ let Easing = {
294
292
 
295
293
  Bounce: {
296
294
  /** @ignore */
297
- In: function ( k ) {
295
+ In: function (k) {
298
296
 
299
- return 1 - Easing.Bounce.Out( 1 - k );
297
+ return 1 - Easing.Bounce.Out(1 - k);
300
298
 
301
299
  },
302
300
  /** @ignore */
303
- Out: function ( k ) {
301
+ Out: function (k) {
304
302
 
305
- if ( k < ( 1 / 2.75 ) ) {
303
+ if (k < (1 / 2.75)) {
306
304
 
307
305
  return 7.5625 * k * k;
308
306
 
309
- } else if ( k < ( 2 / 2.75 ) ) {
307
+ } else if (k < (2 / 2.75)) {
310
308
 
311
- return 7.5625 * ( k -= ( 1.5 / 2.75 ) ) * k + 0.75;
309
+ return 7.5625 * (k -= (1.5 / 2.75)) * k + 0.75;
312
310
 
313
- } else if ( k < ( 2.5 / 2.75 ) ) {
311
+ } else if (k < (2.5 / 2.75)) {
314
312
 
315
- return 7.5625 * ( k -= ( 2.25 / 2.75 ) ) * k + 0.9375;
313
+ return 7.5625 * (k -= (2.25 / 2.75)) * k + 0.9375;
316
314
 
317
315
  } else {
318
316
 
319
- return 7.5625 * ( k -= ( 2.625 / 2.75 ) ) * k + 0.984375;
317
+ return 7.5625 * (k -= (2.625 / 2.75)) * k + 0.984375;
320
318
 
321
319
  }
322
320
 
323
321
  },
324
322
  /** @ignore */
325
- InOut: function ( k ) {
323
+ InOut: function (k) {
326
324
 
327
- if ( k < 0.5 ) return Easing.Bounce.In( k * 2 ) * 0.5;
328
- return Easing.Bounce.Out( k * 2 - 1 ) * 0.5 + 0.5;
325
+ if (k < 0.5) return Easing.Bounce.In(k * 2) * 0.5;
326
+ return Easing.Bounce.Out(k * 2 - 1) * 0.5 + 0.5;
329
327
 
330
328
  }
331
329
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.2.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
@@ -25,45 +25,45 @@
25
25
  */
26
26
  let Interpolation = {
27
27
  /** @ignore */
28
- Linear: function ( v, k ) {
28
+ Linear: function (v, k) {
29
29
 
30
- let m = v.length - 1, f = m * k, i = Math.floor( f ), fn = Interpolation.Utils.Linear;
30
+ let m = v.length - 1, f = m * k, i = Math.floor(f), fn = Interpolation.Utils.Linear;
31
31
 
32
- if ( k < 0 ) return fn( v[ 0 ], v[ 1 ], f );
33
- if ( k > 1 ) return fn( v[ m ], v[ m - 1 ], m - f );
32
+ if (k < 0) return fn(v[ 0 ], v[ 1 ], f);
33
+ if (k > 1) return fn(v[ m ], v[ m - 1 ], m - f);
34
34
 
35
- return fn( v[ i ], v[ i + 1 > m ? m : i + 1 ], f - i );
35
+ return fn(v[ i ], v[ i + 1 > m ? m : i + 1 ], f - i);
36
36
 
37
37
  },
38
38
  /** @ignore */
39
- Bezier: function ( v, k ) {
39
+ Bezier: function (v, k) {
40
40
 
41
41
  let b = 0, n = v.length - 1, pw = Math.pow, bn = Interpolation.Utils.Bernstein, i;
42
42
 
43
- for ( i = 0; i <= n; i++ ) {
44
- b += pw( 1 - k, n - i ) * pw( k, i ) * v[ i ] * bn( n, i );
43
+ for (i = 0; i <= n; i++) {
44
+ b += pw(1 - k, n - i) * pw(k, i) * v[ i ] * bn(n, i);
45
45
  }
46
46
 
47
47
  return b;
48
48
 
49
49
  },
50
50
  /** @ignore */
51
- CatmullRom: function ( v, k ) {
51
+ CatmullRom: function (v, k) {
52
52
 
53
- let m = v.length - 1, f = m * k, i = Math.floor( f ), fn = Interpolation.Utils.CatmullRom;
53
+ let m = v.length - 1, f = m * k, i = Math.floor(f), fn = Interpolation.Utils.CatmullRom;
54
54
 
55
- if ( v[ 0 ] === v[ m ] ) {
55
+ if (v[ 0 ] === v[ m ]) {
56
56
 
57
- if ( k < 0 ) i = Math.floor( f = m * ( 1 + k ) );
57
+ if (k < 0) i = Math.floor(f = m * (1 + k));
58
58
 
59
- return fn( v[ ( i - 1 + m ) % m ], v[ i ], v[ ( i + 1 ) % m ], v[ ( i + 2 ) % m ], f - i );
59
+ return fn(v[ (i - 1 + m) % m ], v[ i ], v[ (i + 1) % m ], v[ (i + 2) % m ], f - i);
60
60
 
61
61
  } else {
62
62
 
63
- if ( k < 0 ) return v[ 0 ] - ( fn( v[ 0 ], v[ 0 ], v[ 1 ], v[ 1 ], -f ) - v[ 0 ] );
64
- if ( k > 1 ) return v[ m ] - ( fn( v[ m ], v[ m ], v[ m - 1 ], v[ m - 1 ], f - m ) - v[ m ] );
63
+ if (k < 0) return v[ 0 ] - (fn(v[ 0 ], v[ 0 ], v[ 1 ], v[ 1 ], -f) - v[ 0 ]);
64
+ if (k > 1) return v[ m ] - (fn(v[ m ], v[ m ], v[ m - 1 ], v[ m - 1 ], f - m) - v[ m ]);
65
65
 
66
- return fn( v[ i ? i - 1 : 0 ], v[ i ], v[ m < i + 1 ? m : i + 1 ], v[ m < i + 2 ? m : i + 2 ], f - i );
66
+ return fn(v[ i ? i - 1 : 0 ], v[ i ], v[ m < i + 1 ? m : i + 1 ], v[ m < i + 2 ? m : i + 2 ], f - i);
67
67
 
68
68
  }
69
69
 
@@ -71,39 +71,39 @@ let Interpolation = {
71
71
 
72
72
  Utils: {
73
73
  /** @ignore */
74
- Linear: function ( p0, p1, t ) {
74
+ Linear: function (p0, p1, t) {
75
75
 
76
- return ( p1 - p0 ) * t + p0;
76
+ return (p1 - p0) * t + p0;
77
77
 
78
78
  },
79
79
  /** @ignore */
80
- Bernstein: function ( n, i ) {
80
+ Bernstein: function (n, i) {
81
81
 
82
82
  let fc = Interpolation.Utils.Factorial;
83
- return fc( n ) / fc( i ) / fc( n - i );
83
+ return fc(n) / fc(i) / fc(n - i);
84
84
 
85
85
  },
86
86
  /* @ignore */
87
- Factorial: ( function () {
87
+ Factorial: (function () {
88
88
 
89
89
  let a = [ 1 ];
90
90
 
91
- return function ( n ) {
91
+ return function (n) {
92
92
 
93
93
  let s = 1, i;
94
- if ( a[ n ] ) return a[ n ];
95
- for ( i = n; i > 1; i-- ) s *= i;
94
+ if (a[ n ]) return a[ n ];
95
+ for (i = n; i > 1; i--) s *= i;
96
96
  a[ n ] = s;
97
97
  return s;
98
98
 
99
99
  };
100
100
 
101
- } )(),
101
+ })(),
102
102
  /** @ignore */
103
- CatmullRom: function ( p0, p1, p2, p3, t ) {
103
+ CatmullRom: function (p0, p1, p2, p3, t) {
104
104
 
105
- let v0 = ( p2 - p0 ) * 0.5, v1 = ( p3 - p1 ) * 0.5, t2 = t * t, t3 = t * t2;
106
- return ( 2 * p1 - 2 * p2 + v0 + v1 ) * t3 + ( - 3 * p1 + 3 * p2 - 2 * v0 - v1 ) * t2 + v0 * t + p1;
105
+ let v0 = (p2 - p0) * 0.5, v1 = (p3 - p1) * 0.5, t2 = t * t, t3 = t * t2;
106
+ return (2 * p1 - 2 * p2 + v0 + v1) * t3 + (- 3 * p1 + 3 * p2 - 2 * v0 - v1) * t2 + v0 * t + p1;
107
107
  }
108
108
  }
109
109