melonjs 17.1.0 → 17.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 (262) 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 +7 -7
  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 +29 -32
  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 +1 -1
  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 +29 -2
  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 +2 -9
  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 +6 -5
  79. package/dist/melonjs.mjs/node_modules/semver/classes/semver.js +2 -2
  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/lrucache.js +49 -0
  109. package/dist/melonjs.mjs/node_modules/semver/internal/parse-options.js +1 -1
  110. package/dist/melonjs.mjs/node_modules/semver/internal/re.js +1 -1
  111. package/dist/melonjs.mjs/node_modules/semver/ranges/gtr.js +1 -1
  112. package/dist/melonjs.mjs/node_modules/semver/ranges/intersects.js +1 -1
  113. package/dist/melonjs.mjs/node_modules/semver/ranges/ltr.js +1 -1
  114. package/dist/melonjs.mjs/node_modules/semver/ranges/max-satisfying.js +1 -1
  115. package/dist/melonjs.mjs/node_modules/semver/ranges/min-satisfying.js +1 -1
  116. package/dist/melonjs.mjs/node_modules/semver/ranges/min-version.js +1 -1
  117. package/dist/melonjs.mjs/node_modules/semver/ranges/outside.js +1 -1
  118. package/dist/melonjs.mjs/node_modules/semver/ranges/simplify.js +1 -1
  119. package/dist/melonjs.mjs/node_modules/semver/ranges/subset.js +1 -1
  120. package/dist/melonjs.mjs/node_modules/semver/ranges/to-comparators.js +1 -1
  121. package/dist/melonjs.mjs/node_modules/semver/ranges/valid.js +1 -1
  122. package/dist/melonjs.mjs/particles/emitter.js +1 -1
  123. package/dist/melonjs.mjs/particles/particle.js +1 -1
  124. package/dist/melonjs.mjs/particles/settings.js +1 -1
  125. package/dist/melonjs.mjs/physics/body.js +4 -4
  126. package/dist/melonjs.mjs/physics/bounds.js +1 -1
  127. package/dist/melonjs.mjs/physics/collision.js +1 -1
  128. package/dist/melonjs.mjs/physics/detector.js +2 -2
  129. package/dist/melonjs.mjs/physics/quadtree.js +1 -1
  130. package/dist/melonjs.mjs/physics/response.js +1 -1
  131. package/dist/melonjs.mjs/physics/sat.js +1 -1
  132. package/dist/melonjs.mjs/physics/world.js +2 -2
  133. package/dist/melonjs.mjs/plugin/plugin.js +3 -3
  134. package/dist/melonjs.mjs/renderable/collectable.js +1 -1
  135. package/dist/melonjs.mjs/renderable/colorlayer.js +1 -1
  136. package/dist/melonjs.mjs/renderable/container.js +2 -2
  137. package/dist/melonjs.mjs/renderable/draggable.js +1 -1
  138. package/dist/melonjs.mjs/renderable/dragndrop.js +1 -1
  139. package/dist/melonjs.mjs/renderable/entity/entity.js +1 -1
  140. package/dist/melonjs.mjs/renderable/imagelayer.js +1 -1
  141. package/dist/melonjs.mjs/renderable/light2d.js +7 -7
  142. package/dist/melonjs.mjs/renderable/nineslicesprite.js +1 -1
  143. package/dist/melonjs.mjs/renderable/renderable.js +1 -1
  144. package/dist/melonjs.mjs/renderable/sprite.js +1 -1
  145. package/dist/melonjs.mjs/renderable/text/bitmaptext.js +1 -1
  146. package/dist/melonjs.mjs/renderable/text/bitmaptextdata.js +1 -1
  147. package/dist/melonjs.mjs/renderable/text/glyph.js +1 -1
  148. package/dist/melonjs.mjs/renderable/text/text.js +1 -1
  149. package/dist/melonjs.mjs/renderable/text/textmetrics.js +1 -1
  150. package/dist/melonjs.mjs/renderable/text/textstyle.js +1 -1
  151. package/dist/melonjs.mjs/renderable/trigger.js +1 -1
  152. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +1 -1
  153. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +1 -1
  154. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +1 -1
  155. package/dist/melonjs.mjs/state/stage.js +1 -1
  156. package/dist/melonjs.mjs/state/state.js +5 -5
  157. package/dist/melonjs.mjs/system/device.js +6 -6
  158. package/dist/melonjs.mjs/system/dom.js +1 -1
  159. package/dist/melonjs.mjs/system/event.js +1 -1
  160. package/dist/melonjs.mjs/system/platform.js +4 -2
  161. package/dist/melonjs.mjs/system/pooling.js +2 -2
  162. package/dist/melonjs.mjs/system/save.js +2 -2
  163. package/dist/melonjs.mjs/system/timer.js +2 -2
  164. package/dist/melonjs.mjs/tweens/easing.js +68 -70
  165. package/dist/melonjs.mjs/tweens/interpolation.js +29 -29
  166. package/dist/melonjs.mjs/tweens/tween.js +43 -43
  167. package/dist/melonjs.mjs/utils/agent.js +1 -1
  168. package/dist/melonjs.mjs/utils/array.js +1 -1
  169. package/dist/melonjs.mjs/utils/file.js +1 -1
  170. package/dist/melonjs.mjs/utils/function.js +1 -1
  171. package/dist/melonjs.mjs/utils/string.js +1 -1
  172. package/dist/melonjs.mjs/utils/utils.js +1 -1
  173. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +18 -10
  174. package/dist/melonjs.mjs/video/renderer.js +18 -70
  175. package/dist/melonjs.mjs/video/rendertarget/canvasrendertarget.js +12 -6
  176. package/dist/melonjs.mjs/video/texture/atlas.js +13 -4
  177. package/dist/melonjs.mjs/video/texture/cache.js +57 -38
  178. package/dist/melonjs.mjs/video/texture/parser/aseprite.js +1 -1
  179. package/dist/melonjs.mjs/video/texture/parser/spritesheet.js +1 -1
  180. package/dist/melonjs.mjs/video/texture/parser/texturepacker.js +1 -1
  181. package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
  182. package/dist/melonjs.mjs/video/video.js +4 -3
  183. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +1 -1
  184. package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +1 -1
  185. package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +1 -1
  186. package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +1 -1
  187. package/dist/melonjs.mjs/video/webgl/glshader.js +1 -1
  188. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
  189. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
  190. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
  191. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
  192. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +1 -1
  193. package/dist/melonjs.mjs/video/webgl/utils/precision.js +5 -5
  194. package/dist/melonjs.mjs/video/webgl/utils/program.js +1 -1
  195. package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
  196. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +1 -1
  197. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +47 -21
  198. package/dist/melonjs.module.js +607 -1294
  199. package/dist/types/application/application.d.ts +7 -6
  200. package/dist/types/application/settings.d.ts +40 -23
  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/physics/world.d.ts +1 -1
  205. package/dist/types/system/platform.d.ts +2 -0
  206. package/dist/types/video/canvas/canvas_renderer.d.ts +6 -3
  207. package/dist/types/video/renderer.d.ts +6 -16
  208. package/dist/types/video/rendertarget/canvasrendertarget.d.ts +6 -9
  209. package/dist/types/video/texture/atlas.d.ts +6 -0
  210. package/dist/types/video/texture/cache.d.ts +7 -5
  211. package/dist/types/video/video.d.ts +3 -2
  212. package/dist/types/video/webgl/webgl_renderer.d.ts +8 -6
  213. package/package.json +16 -16
  214. package/src/application/application.js +6 -6
  215. package/src/application/header.js +1 -1
  216. package/src/application/settings.js +27 -30
  217. package/src/audio/audio.js +12 -8
  218. package/src/geometries/path2d.js +16 -16
  219. package/src/index.js +2 -2
  220. package/src/lang/deprecated.js +28 -1
  221. package/src/level/tiled/TMXObject.js +1 -1
  222. package/src/level/tiled/TMXTileMap.js +1 -1
  223. package/src/level/tiled/TMXUtils.js +2 -2
  224. package/src/level/tiled/renderer/TMXHexagonalRenderer.js +4 -4
  225. package/src/level/tiled/renderer/TMXOrthogonalRenderer.js +2 -2
  226. package/src/loader/cache.js +3 -0
  227. package/src/loader/loader.js +33 -3
  228. package/src/loader/parsers/fontface.js +24 -14
  229. package/src/loader/parsers/image.js +2 -2
  230. package/src/loader/parsers/tmx.js +1 -8
  231. package/src/math/color.js +5 -5
  232. package/src/math/matrix2.js +6 -6
  233. package/src/math/matrix3.js +1 -1
  234. package/src/math/observable_vector2.js +2 -2
  235. package/src/math/observable_vector3.js +3 -3
  236. package/src/math/vector2.js +2 -2
  237. package/src/math/vector3.js +3 -3
  238. package/src/physics/body.js +3 -3
  239. package/src/physics/detector.js +1 -1
  240. package/src/physics/world.js +1 -1
  241. package/src/renderable/container.js +1 -1
  242. package/src/renderable/light2d.js +6 -6
  243. package/src/state/state.js +4 -4
  244. package/src/system/device.js +5 -5
  245. package/src/system/platform.js +2 -0
  246. package/src/system/pooling.js +1 -1
  247. package/src/system/save.js +1 -1
  248. package/src/system/timer.js +1 -1
  249. package/src/tweens/easing.js +67 -69
  250. package/src/tweens/interpolation.js +28 -28
  251. package/src/tweens/tween.js +42 -42
  252. package/src/video/canvas/canvas_renderer.js +17 -9
  253. package/src/video/renderer.js +17 -69
  254. package/src/video/rendertarget/canvasrendertarget.js +11 -5
  255. package/src/video/texture/atlas.js +12 -3
  256. package/src/video/texture/cache.js +56 -37
  257. package/src/video/video.js +3 -2
  258. package/src/video/webgl/utils/precision.js +4 -4
  259. package/src/video/webgl/webgl_renderer.js +46 -20
  260. package/dist/melonjs.mjs/node_modules/semver/node_modules/lru-cache/index.js +0 -352
  261. package/dist/melonjs.mjs/node_modules/semver/node_modules/yallist/iterator.js +0 -24
  262. package/dist/melonjs.mjs/node_modules/semver/node_modules/yallist/yallist.js +0 -444
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -235,7 +235,7 @@ class TMXObject {
235
235
  let _polygon = pool.pull("Polygon", 0, 0, this.points);
236
236
  let isConvex = _polygon.isConvex();
237
237
  // make sure it's a convex polygon
238
- if (isConvex === false ) {
238
+ if (isConvex === false) {
239
239
  throw new Error("collision polygones in Tiled should be defined as Convex");
240
240
  } else if (isConvex === null) {
241
241
  throw new Error("invalid polygone");
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -206,7 +206,7 @@ class TMXTileMap {
206
206
  if (this.version !== "undefined" && this.version !== "") {
207
207
  // deprecation warning if map tiled version is older than 1.5
208
208
  if (checkVersion(this.version, "1.5") < 0) {
209
- warning("("+this.name+") Tiled Map format version 1.4 and below", "format 1.5 or higher", "10.4.4");
209
+ warning("(" + this.name + ") Tiled Map format version 1.4 and below", "format 1.5 or higher", "10.4.4");
210
210
  }
211
211
  }
212
212
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -52,7 +52,7 @@ function setTMXValue(name, type, value) {
52
52
  try {
53
53
  value = JSON.parse(match);
54
54
  }
55
- catch (e) {
55
+ catch {
56
56
  throw new Error("Unable to parse JSON: " + match);
57
57
  }
58
58
  }
@@ -63,7 +63,7 @@ function setTMXValue(name, type, value) {
63
63
  // eslint-disable-next-line
64
64
  value = Function("'use strict';return (" + match + ")")();
65
65
  }
66
- catch (e) {
66
+ catch {
67
67
  throw new Error("Unable to evaluate: " + match);
68
68
  }
69
69
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -190,10 +190,10 @@ class TMXHexagonalRenderer extends TMXRenderer {
190
190
  }
191
191
  } else {
192
192
  if ((x & 1) ^ this.staggerEven) {
193
- ret.set(x -1, y + 1);
193
+ ret.set(x - 1, y + 1);
194
194
  }
195
195
  else {
196
- ret.set(x -1, y);
196
+ ret.set(x - 1, y);
197
197
  }
198
198
  }
199
199
  return ret;
@@ -427,11 +427,11 @@ class TMXHexagonalRenderer extends TMXRenderer {
427
427
  let staggeredRow = this.doStaggerX(startTile.x + layer.pos.x);
428
428
 
429
429
  // main drawing loop
430
- for (; startPos.y < rect.bottom && startTile.y < endY; ) {
430
+ for (; startPos.y < rect.bottom && startTile.y < endY;) {
431
431
  rowTile.setV(startTile);
432
432
  rowPos.setV(startPos);
433
433
 
434
- for (; rowPos.x < rect.right && rowTile.x < endX; rowTile.x+=2) {
434
+ for (; rowPos.x < rect.right && rowTile.x < endX; rowTile.x += 2) {
435
435
  tile = layer.cellAt(rowTile.x, rowTile.y, false);
436
436
  if (tile) {
437
437
  // draw the tile
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -138,8 +138,8 @@ class TMXOrthogonalRenderer extends TMXRenderer {
138
138
  }
139
139
 
140
140
  // main drawing loop
141
- for (let y = start.y; y !== end.y; y+= incY) {
142
- for (let x = start.x; x !== end.x; x+= incX) {
141
+ for (let y = start.y; y !== end.y; y += incY) {
142
+ for (let x = start.x; x !== end.x; x += incX) {
143
143
  let tmxTile = layer.cellAt(x, y, false);
144
144
  if (tmxTile) {
145
145
  this.drawTile(renderer, x, y, tmxTile);
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -24,4 +24,7 @@ let jsonList = {};
24
24
  // contains all the video files
25
25
  let videoList = {};
26
26
 
27
- export { binList, imgList, jsonList, tmxList, videoList };
27
+ // contains all the font files
28
+ let fontList = {};
29
+
30
+ export { binList, fontList, imgList, jsonList, tmxList, videoList };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -9,7 +9,7 @@ import { getBasename } from '../utils/file.js';
9
9
  import { emit, LOADER_COMPLETE, LOADER_PROGRESS, LOADER_ERROR } from '../system/event.js';
10
10
  import { unload as unload$1, unloadAll as unloadAll$1, load as load$1 } from '../audio/audio.js';
11
11
  import state from '../state/state.js';
12
- import { videoList, tmxList, jsonList, imgList, binList } from './cache.js';
12
+ import { videoList, tmxList, fontList, jsonList, imgList, binList } from './cache.js';
13
13
  import { preloadImage } from './parsers/image.js';
14
14
  import { preloadFontFace } from './parsers/fontface.js';
15
15
  import { preloadTMX } from './parsers/tmx.js';
@@ -530,8 +530,12 @@ function unload(asset) {
530
530
  return true;
531
531
 
532
532
  case "fontface":
533
- // ??
534
- return true;
533
+ if (typeof typeof globalThis.document !== "undefined" && typeof globalThis.document.fonts !== "undefined") {
534
+ globalThis.document.fonts.delete(fontList[asset.name]);
535
+ delete fontList[asset.name];
536
+ return true;
537
+ }
538
+ return false;
535
539
 
536
540
  case "tmx":
537
541
  case "tsx":
@@ -616,6 +620,16 @@ function unloadAll() {
616
620
  }
617
621
  }
618
622
 
623
+ // unload all video resources
624
+ for (name in fontList) {
625
+ if (fontList.hasOwnProperty(name)) {
626
+ unload({
627
+ "name" : name,
628
+ "type" : "font"
629
+ });
630
+ }
631
+ }
632
+
619
633
  // unload all audio resources
620
634
  unloadAll$1();
621
635
  }
@@ -696,4 +710,19 @@ function getVideo(elt) {
696
710
  return null;
697
711
  }
698
712
 
699
- export { baseURL, crossOrigin, getBinary, getImage, getJSON, getTMX, getVideo, load, nocache, onError, onProgress, onload, preload, reload, setBaseURL, setNocache, setOptions, setParser, unload, unloadAll, withCredentials };
713
+ /**
714
+ * return the specified FontFace Object
715
+ * @memberof loader
716
+ * @param {string} elt - name of the font file
717
+ * @returns {FontFace}
718
+ */
719
+ function getFont(elt) {
720
+ // force as string
721
+ elt = "" + elt;
722
+ if (elt in fontList) {
723
+ return fontList[elt];
724
+ }
725
+ return null;
726
+ }
727
+
728
+ export { baseURL, crossOrigin, getBinary, getFont, getImage, getJSON, getTMX, getVideo, load, nocache, onError, onProgress, onload, preload, reload, setBaseURL, setNocache, setOptions, setParser, unload, unloadAll, withCredentials };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -115,6 +115,4 @@ class DefaultLoadingScreen extends Stage {
115
115
  }
116
116
  }
117
117
 
118
- var DefaultLoadingScreen$1 = DefaultLoadingScreen;
119
-
120
- export { DefaultLoadingScreen$1 as default };
118
+ export { DefaultLoadingScreen as default };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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,10 +1,11 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - 2024 Olivier Biot (AltByte Pte Ltd)
7
7
  */
8
+ import { fontList } from '../cache.js';
8
9
  import { isDataUrl } from '../../utils/string.js';
9
10
 
10
11
  /**
@@ -20,6 +21,7 @@ import { isDataUrl } from '../../utils/string.js';
20
21
  * ]);
21
22
  */
22
23
  function preloadFontFace(data, onload, onerror) {
24
+ const fontFaceSet = typeof globalThis.document !== "undefined" ? globalThis.document.fonts : undefined;
23
25
 
24
26
  if (isDataUrl(data.src) === true) {
25
27
  // make sure it in the `url(data:[<mediatype>][;base64],<data>)` format as expected by FontFace
@@ -28,23 +30,31 @@ function preloadFontFace(data, onload, onerror) {
28
30
  }
29
31
  }
30
32
 
31
- let font = new FontFace(data.name, data.src);
32
-
33
- // loading promise
34
- font.load().then(() => {
35
- // apply the font after the font has finished downloading
36
- globalThis.document.fonts.add(font);
37
- globalThis.document.body.style.fontFamily = data.name;
38
- if (typeof onload === "function") {
33
+ if (typeof fontFaceSet !== "undefined") {
34
+ // create a new font face
35
+ let font = new FontFace(data.name, data.src);
36
+ // loading promise
37
+ font.load().then(() => {
38
+ // add the font to the cache
39
+ fontList[data.name] = font;
40
+ // add the font to the document
41
+ fontFaceSet.add(font);
39
42
  // onloaded callback
40
- onload();
41
- }
42
- }, () => {
43
- if (typeof onerror === "function") {
43
+ if (typeof onload === "function") {
44
+ onload();
45
+ }
46
+ }, () => {
44
47
  // rejected
45
- onerror(data.name);
48
+ if (typeof onerror === "function") {
49
+ onerror(data.name);
50
+ }
51
+ });
52
+
53
+ } else {
54
+ if (typeof onerror === "function") {
55
+ onerror(error);
46
56
  }
47
- });
57
+ }
48
58
 
49
59
  return 1;
50
60
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -54,7 +54,7 @@ function preloadImage(img, onload, onerror, settings) {
54
54
  // callback
55
55
  onload();
56
56
  }
57
- } catch (e) {
57
+ } catch {
58
58
  // parseCompressedImage will throw an error if a format is not supported or badly formatted
59
59
  }
60
60
  }).catch(error => {
@@ -122,7 +122,7 @@ function preloadImage(img, onload, onerror, settings) {
122
122
 
123
123
  // no compatible format was found
124
124
  throw new Error(
125
- "No suppported Image file format found for " + img.name
125
+ "No supported Image file format found for " + img.name
126
126
  );
127
127
  }
128
128
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -72,15 +72,8 @@ function preloadTMX(tmxData, onload, onerror, settings) {
72
72
  const xmlDoc = parser.parseFromString(response, "text/xml");
73
73
  const data = parse(xmlDoc);
74
74
 
75
- switch (getExtension(tmxData.src)) {
76
- case "tmx":
77
- result = data.map;
78
- break;
75
+ result = data.map || data.tilesets[0] || data;
79
76
 
80
- case "tsx":
81
- result = data.tilesets[0];
82
- break;
83
- }
84
77
  break;
85
78
  }
86
79
  case "json":
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -18,9 +18,9 @@ function toHex(component) {
18
18
  function hue2rgb(p, q, t) {
19
19
  if (t < 0) t += 1;
20
20
  if (t > 1) t -= 1;
21
- if (t < 1/6) return p + (q - p) * 6 * t;
22
- if (t < 1/2) return q;
23
- if (t < 2/3) return p + (q - p) * (2/3 - t) * 6;
21
+ if (t < 1 / 6) return p + (q - p) * 6 * t;
22
+ if (t < 1 / 2) return q;
23
+ if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;
24
24
  return p;
25
25
  }
26
26
 
@@ -339,9 +339,9 @@ class Color {
339
339
  let q = l < 0.5 ? l * (1 + s) : l + s - l * s;
340
340
  let p = 2 * l - q;
341
341
 
342
- r = hue2rgb(p, q, h + 1/3);
342
+ r = hue2rgb(p, q, h + 1 / 3);
343
343
  g = hue2rgb(p, q, h);
344
- b = hue2rgb(p, q, h - 1/3);
344
+ b = hue2rgb(p, q, h - 1 / 3);
345
345
  }
346
346
 
347
347
  return this.setColor(r * 255, g * 255, b * 255);
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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 - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -257,16 +257,16 @@ class Matrix2d {
257
257
  let n = a * ta + b * td + c * tg;
258
258
 
259
259
  val[ 0 ] = ta / n;
260
- val[ 1 ] = ( c * h - i * b ) / n;
261
- val[ 2 ] = ( f * b - c * e ) / n;
260
+ val[ 1 ] = (c * h - i * b) / n;
261
+ val[ 2 ] = (f * b - c * e) / n;
262
262
 
263
263
  val[ 3 ] = td / n;
264
- val[ 4 ] = ( i * a - c * g ) / n;
265
- val[ 5 ] = ( c * d - f * a ) / n;
264
+ val[ 4 ] = (i * a - c * g) / n;
265
+ val[ 5 ] = (c * d - f * a) / n;
266
266
 
267
267
  val[ 6 ] = tg / n;
268
- val[ 7 ] = ( b * g - h * a ) / n;
269
- val[ 8 ] = ( e * a - b * d ) / n;
268
+ val[ 7 ] = (b * g - h * a) / n;
269
+ val[ 8 ] = (e * a - b * d) / n;
270
270
 
271
271
  return this;
272
272
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -510,7 +510,7 @@ class Matrix3d {
510
510
  let a = this.val;
511
511
  let _x, _y, _z;
512
512
 
513
- if (arguments.length > 1 ) {
513
+ if (arguments.length > 1) {
514
514
  // x, y (, z)
515
515
  _x = arguments[0];
516
516
  _y = arguments[1];
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -395,8 +395,8 @@ class ObservableVector2d extends Vector2d {
395
395
  */
396
396
  lerp(v, alpha) {
397
397
  return this._set(
398
- this._x + ( v.x - this._x ) * alpha,
399
- this._y + ( v.y - this._y ) * alpha
398
+ this._x + (v.x - this._x) * alpha,
399
+ this._y + (v.y - this._y) * alpha
400
400
  );
401
401
  }
402
402
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -472,9 +472,9 @@ class ObservableVector3d extends Vector3d {
472
472
  */
473
473
  lerp(v, alpha) {
474
474
  return this._set(
475
- this._x + ( v.x - this._x ) * alpha,
476
- this._y + ( v.y - this._y ) * alpha,
477
- this._z + ( v.z - this._z ) * alpha
475
+ this._x + (v.x - this._x) * alpha,
476
+ this._y + (v.y - this._y) * alpha,
477
+ this._z + (v.z - this._z) * alpha
478
478
  );
479
479
  }
480
480
 
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * melonJS Game Engine - v17.1.0
2
+ * melonJS Game Engine - v17.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
@@ -347,8 +347,8 @@ class Vector2d {
347
347
  * @returns {Vector2d} Reference to this object for method chaining
348
348
  */
349
349
  lerp(v, alpha) {
350
- this.x += ( v.x - this.x ) * alpha;
351
- this.y += ( v.y - this.y ) * alpha;
350
+ this.x += (v.x - this.x) * alpha;
351
+ this.y += (v.y - this.y) * alpha;
352
352
  return this;
353
353
  }
354
354