melonjs 14.3.0 → 14.5.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 (323) hide show
  1. package/README.md +11 -55
  2. package/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +2 -2
  3. package/dist/melonjs.mjs/_virtual/arraymultimap.js +2 -2
  4. package/dist/melonjs.mjs/_virtual/earcut.js +2 -2
  5. package/dist/melonjs.mjs/_virtual/howler.js +2 -2
  6. package/dist/melonjs.mjs/_virtual/index.js +2 -2
  7. package/dist/melonjs.mjs/_virtual/index2.js +2 -2
  8. package/dist/melonjs.mjs/_virtual/multimap.js +2 -2
  9. package/dist/melonjs.mjs/_virtual/setmultimap.js +2 -2
  10. package/dist/melonjs.mjs/application/application.js +8 -21
  11. package/dist/melonjs.mjs/application/header.js +2 -2
  12. package/dist/melonjs.mjs/application/resize.js +4 -2
  13. package/dist/melonjs.mjs/application/settings.js +2 -2
  14. package/dist/melonjs.mjs/audio/audio.js +5 -5
  15. package/dist/melonjs.mjs/camera/camera2d.js +2 -2
  16. package/dist/melonjs.mjs/const.js +32 -0
  17. package/dist/melonjs.mjs/entity/entity.js +44 -10
  18. package/dist/melonjs.mjs/geometries/ellipse.js +3 -4
  19. package/dist/melonjs.mjs/geometries/line.js +2 -2
  20. package/dist/melonjs.mjs/geometries/path2d.js +19 -43
  21. package/dist/melonjs.mjs/geometries/point.js +2 -7
  22. package/dist/melonjs.mjs/geometries/poly.js +3 -6
  23. package/dist/melonjs.mjs/geometries/rectangle.js +14 -10
  24. package/dist/melonjs.mjs/geometries/roundrect.js +2 -2
  25. package/dist/melonjs.mjs/index.js +11 -9
  26. package/dist/melonjs.mjs/input/gamepad.js +11 -17
  27. package/dist/melonjs.mjs/input/input.js +2 -2
  28. package/dist/melonjs.mjs/input/keyboard.js +2 -2
  29. package/dist/melonjs.mjs/input/pointer.js +2 -2
  30. package/dist/melonjs.mjs/input/pointerevent.js +3 -17
  31. package/dist/melonjs.mjs/lang/console.js +44 -0
  32. package/dist/melonjs.mjs/lang/deprecated.js +4 -40
  33. package/dist/melonjs.mjs/level/level.js +4 -4
  34. package/dist/melonjs.mjs/level/tiled/TMXGroup.js +2 -23
  35. package/dist/melonjs.mjs/level/tiled/TMXLayer.js +67 -64
  36. package/dist/melonjs.mjs/level/tiled/TMXObject.js +2 -64
  37. package/dist/melonjs.mjs/level/tiled/TMXTile.js +10 -26
  38. package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +21 -83
  39. package/dist/melonjs.mjs/level/tiled/TMXTileset.js +6 -20
  40. package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +3 -10
  41. package/dist/melonjs.mjs/level/tiled/TMXUtils.js +37 -14
  42. package/dist/melonjs.mjs/level/tiled/constants.js +17 -0
  43. package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +7 -8
  44. package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +3 -6
  45. package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +2 -2
  46. package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +2 -14
  47. package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +2 -2
  48. package/dist/melonjs.mjs/level/tiled/renderer/autodetect.js +38 -0
  49. package/dist/melonjs.mjs/loader/cache.js +24 -0
  50. package/dist/melonjs.mjs/loader/loader.js +332 -715
  51. package/dist/melonjs.mjs/loader/loadingscreen.js +5 -5
  52. package/dist/melonjs.mjs/loader/melonjs_logo.png.js +2 -2
  53. package/dist/melonjs.mjs/loader/parser.js +281 -0
  54. package/dist/melonjs.mjs/loader/settings.js +91 -0
  55. package/dist/melonjs.mjs/math/color.js +2 -2
  56. package/dist/melonjs.mjs/math/math.js +2 -2
  57. package/dist/melonjs.mjs/math/matrix2.js +8 -10
  58. package/dist/melonjs.mjs/math/matrix3.js +19 -22
  59. package/dist/melonjs.mjs/math/observable_vector2.js +4 -4
  60. package/dist/melonjs.mjs/math/observable_vector3.js +4 -5
  61. package/dist/melonjs.mjs/math/vector2.js +4 -4
  62. package/dist/melonjs.mjs/math/vector3.js +4 -5
  63. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/arraymultimap.js +2 -2
  64. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/index.js +2 -2
  65. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/multimap.js +2 -2
  66. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/setmultimap.js +2 -2
  67. package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +2 -2
  68. package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +2 -2
  69. package/dist/melonjs.mjs/node_modules/eventemitter3/index2.js +2 -2
  70. package/dist/melonjs.mjs/node_modules/howler/dist/howler.js +2 -2
  71. package/dist/melonjs.mjs/particles/emitter.js +4 -4
  72. package/dist/melonjs.mjs/particles/particle.js +2 -2
  73. package/dist/melonjs.mjs/particles/settings.js +2 -2
  74. package/dist/melonjs.mjs/physics/body.js +19 -15
  75. package/dist/melonjs.mjs/physics/bounds.js +19 -71
  76. package/dist/melonjs.mjs/physics/collision.js +3 -3
  77. package/dist/melonjs.mjs/physics/detector.js +2 -2
  78. package/dist/melonjs.mjs/physics/quadtree.js +2 -2
  79. package/dist/melonjs.mjs/physics/response.js +2 -2
  80. package/dist/melonjs.mjs/physics/sat.js +2 -2
  81. package/dist/melonjs.mjs/physics/world.js +2 -2
  82. package/dist/melonjs.mjs/plugin/plugin.js +4 -4
  83. package/dist/melonjs.mjs/renderable/collectable.js +2 -2
  84. package/dist/melonjs.mjs/renderable/colorlayer.js +2 -2
  85. package/dist/melonjs.mjs/renderable/container.js +26 -20
  86. package/dist/melonjs.mjs/renderable/dragndrop.js +2 -2
  87. package/dist/melonjs.mjs/renderable/imagelayer.js +8 -2
  88. package/dist/melonjs.mjs/renderable/light2d.js +2 -2
  89. package/dist/melonjs.mjs/renderable/nineslicesprite.js +2 -2
  90. package/dist/melonjs.mjs/renderable/renderable.js +127 -106
  91. package/dist/melonjs.mjs/renderable/sprite.js +34 -55
  92. package/dist/melonjs.mjs/renderable/trigger.js +2 -2
  93. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +2 -2
  94. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +2 -2
  95. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +2 -2
  96. package/dist/melonjs.mjs/state/stage.js +2 -2
  97. package/dist/melonjs.mjs/state/state.js +3 -3
  98. package/dist/melonjs.mjs/system/device.js +2 -2
  99. package/dist/melonjs.mjs/system/dom.js +2 -2
  100. package/dist/melonjs.mjs/system/event.js +2 -2
  101. package/dist/melonjs.mjs/system/platform.js +2 -2
  102. package/dist/melonjs.mjs/system/pooling.js +9 -19
  103. package/dist/melonjs.mjs/system/save.js +2 -2
  104. package/dist/melonjs.mjs/system/timer.js +2 -2
  105. package/dist/melonjs.mjs/text/bitmaptext.js +67 -9
  106. package/dist/melonjs.mjs/text/bitmaptextdata.js +2 -2
  107. package/dist/melonjs.mjs/text/glyph.js +2 -2
  108. package/dist/melonjs.mjs/text/text.js +2 -2
  109. package/dist/melonjs.mjs/text/textmetrics.js +2 -2
  110. package/dist/melonjs.mjs/text/textstyle.js +2 -2
  111. package/dist/melonjs.mjs/tweens/easing.js +2 -2
  112. package/dist/melonjs.mjs/tweens/interpolation.js +2 -2
  113. package/dist/melonjs.mjs/tweens/tween.js +2 -2
  114. package/dist/melonjs.mjs/utils/agent.js +2 -2
  115. package/dist/melonjs.mjs/utils/array.js +2 -2
  116. package/dist/melonjs.mjs/utils/file.js +2 -2
  117. package/dist/melonjs.mjs/utils/function.js +2 -2
  118. package/dist/melonjs.mjs/utils/string.js +3 -3
  119. package/dist/melonjs.mjs/utils/utils.js +3 -5
  120. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +2 -2
  121. package/dist/melonjs.mjs/video/renderer.js +2 -2
  122. package/dist/melonjs.mjs/video/texture/atlas.js +11 -10
  123. package/dist/melonjs.mjs/video/texture/cache.js +4 -4
  124. package/dist/melonjs.mjs/video/texture/canvas_texture.js +2 -2
  125. package/dist/melonjs.mjs/video/utils/autodetect.js +2 -2
  126. package/dist/melonjs.mjs/video/video.js +17 -14
  127. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +2 -2
  128. package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +235 -0
  129. package/{src/video/webgl → dist/melonjs.mjs/video/webgl/compositors}/webgl_compositor.js +28 -205
  130. package/dist/melonjs.mjs/video/webgl/glshader.js +2 -2
  131. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +2 -2
  132. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +2 -2
  133. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +2 -2
  134. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +2 -2
  135. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +2 -2
  136. package/dist/melonjs.mjs/video/webgl/utils/precision.js +2 -2
  137. package/dist/melonjs.mjs/video/webgl/utils/program.js +2 -2
  138. package/dist/melonjs.mjs/video/webgl/utils/string.js +2 -2
  139. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +2 -2
  140. package/dist/melonjs.mjs/video/webgl/webgl_compositor.js +3 -3
  141. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +3 -3
  142. package/dist/melonjs.module.js +19807 -19896
  143. package/dist/types/application/application.d.ts +5 -1
  144. package/dist/types/application/resize.d.ts +1 -0
  145. package/dist/types/const.d.ts +21 -0
  146. package/dist/types/entity/entity.d.ts +2 -2
  147. package/dist/types/geometries/path2d.d.ts +5 -31
  148. package/dist/types/geometries/point.d.ts +2 -7
  149. package/dist/types/geometries/poly.d.ts +0 -1
  150. package/dist/types/index.d.ts +3 -2
  151. package/dist/types/lang/console.d.ts +7 -0
  152. package/dist/types/lang/deprecated.d.ts +0 -8
  153. package/dist/types/level/tiled/TMXGroup.d.ts +7 -28
  154. package/dist/types/level/tiled/TMXLayer.d.ts +25 -47
  155. package/dist/types/level/tiled/TMXObject.d.ts +20 -82
  156. package/dist/types/level/tiled/TMXTile.d.ts +11 -25
  157. package/dist/types/level/tiled/TMXTileMap.d.ts +18 -56
  158. package/dist/types/level/tiled/TMXTileset.d.ts +7 -21
  159. package/dist/types/level/tiled/TMXTilesetGroup.d.ts +3 -9
  160. package/dist/types/level/tiled/constants.d.ts +5 -0
  161. package/dist/types/level/tiled/renderer/TMXHexagonalRenderer.d.ts +2 -6
  162. package/dist/types/level/tiled/renderer/TMXIsometricRenderer.d.ts +2 -6
  163. package/dist/types/level/tiled/renderer/TMXRenderer.d.ts +6 -18
  164. package/dist/types/level/tiled/renderer/autodetect.d.ts +9 -0
  165. package/dist/types/loader/cache.d.ts +7 -0
  166. package/dist/types/loader/loader.d.ts +166 -181
  167. package/dist/types/loader/parser.d.ts +41 -0
  168. package/dist/types/loader/settings.d.ts +57 -0
  169. package/dist/types/particles/emitter.d.ts +4 -4
  170. package/dist/types/physics/bounds.d.ts +29 -84
  171. package/dist/types/renderable/container.d.ts +0 -11
  172. package/dist/types/renderable/renderable.d.ts +37 -31
  173. package/dist/types/renderable/sprite.d.ts +3 -3
  174. package/dist/types/state/state.d.ts +1 -1
  175. package/dist/types/system/pooling.d.ts +2 -2
  176. package/dist/types/video/renderer.d.ts +1 -1
  177. package/dist/types/video/video.d.ts +7 -6
  178. package/dist/types/video/webgl/compositors/compositor.d.ts +101 -0
  179. package/dist/types/video/webgl/compositors/webgl_compositor.d.ts +86 -0
  180. package/dist/types/video/webgl/webgl_compositor.d.ts +2 -3
  181. package/dist/types/video/webgl/webgl_renderer.d.ts +1 -1
  182. package/package.json +17 -16
  183. package/src/application/application.js +6 -19
  184. package/src/application/resize.js +2 -0
  185. package/src/audio/audio.js +3 -3
  186. package/src/const.js +23 -0
  187. package/src/entity/entity.js +42 -8
  188. package/src/geometries/ellipse.js +1 -2
  189. package/src/geometries/path2d.js +17 -41
  190. package/src/geometries/point.js +0 -5
  191. package/src/geometries/poly.js +1 -4
  192. package/src/geometries/rectangle.js +12 -8
  193. package/src/index.js +4 -2
  194. package/src/input/gamepad.js +9 -15
  195. package/src/input/pointerevent.js +1 -15
  196. package/src/lang/console.js +36 -0
  197. package/src/lang/deprecated.js +2 -37
  198. package/src/level/level.js +2 -2
  199. package/src/level/tiled/TMXGroup.js +0 -21
  200. package/src/level/tiled/TMXLayer.js +65 -62
  201. package/src/level/tiled/TMXObject.js +0 -62
  202. package/src/level/tiled/TMXTile.js +8 -24
  203. package/src/level/tiled/TMXTileMap.js +19 -81
  204. package/src/level/tiled/TMXTileset.js +4 -18
  205. package/src/level/tiled/TMXTilesetGroup.js +1 -9
  206. package/src/level/tiled/TMXUtils.js +38 -15
  207. package/src/level/tiled/constants.js +8 -0
  208. package/src/level/tiled/renderer/TMXHexagonalRenderer.js +5 -6
  209. package/src/level/tiled/renderer/TMXIsometricRenderer.js +1 -4
  210. package/src/level/tiled/renderer/TMXRenderer.js +0 -12
  211. package/src/level/tiled/renderer/autodetect.js +29 -0
  212. package/src/loader/cache.js +16 -0
  213. package/src/loader/loader.js +339 -709
  214. package/src/loader/loadingscreen.js +3 -3
  215. package/src/loader/parser.js +279 -0
  216. package/src/loader/settings.js +85 -0
  217. package/src/math/matrix2.js +6 -8
  218. package/src/math/matrix3.js +17 -20
  219. package/src/math/observable_vector2.js +2 -2
  220. package/src/math/observable_vector3.js +2 -3
  221. package/src/math/vector2.js +2 -2
  222. package/src/math/vector3.js +2 -3
  223. package/src/particles/emitter.js +2 -2
  224. package/src/physics/body.js +17 -13
  225. package/src/physics/bounds.js +17 -69
  226. package/src/physics/collision.js +1 -1
  227. package/src/renderable/container.js +24 -18
  228. package/src/renderable/imagelayer.js +6 -0
  229. package/src/renderable/renderable.js +125 -104
  230. package/src/renderable/sprite.js +32 -53
  231. package/src/state/state.js +1 -1
  232. package/src/system/pooling.js +7 -17
  233. package/src/text/bitmaptext.js +65 -7
  234. package/src/utils/string.js +1 -1
  235. package/src/utils/utils.js +1 -3
  236. package/src/video/texture/atlas.js +9 -8
  237. package/src/video/texture/cache.js +2 -2
  238. package/src/video/video.js +15 -12
  239. package/src/video/webgl/compositors/compositor.js +227 -0
  240. package/src/video/webgl/compositors/webgl_compositor.js +300 -0
  241. package/src/video/webgl/webgl_renderer.js +1 -1
  242. package/dist/melonjs.mjs/node_modules/core-js/es/string/trim-end.js +0 -13
  243. package/dist/melonjs.mjs/node_modules/core-js/es/string/trim-start.js +0 -13
  244. package/dist/melonjs.mjs/node_modules/core-js/internals/a-callable.js +0 -22
  245. package/dist/melonjs.mjs/node_modules/core-js/internals/an-object.js +0 -21
  246. package/dist/melonjs.mjs/node_modules/core-js/internals/array-includes.js +0 -45
  247. package/dist/melonjs.mjs/node_modules/core-js/internals/classof-raw.js +0 -19
  248. package/dist/melonjs.mjs/node_modules/core-js/internals/classof.js +0 -43
  249. package/dist/melonjs.mjs/node_modules/core-js/internals/copy-constructor-properties.js +0 -32
  250. package/dist/melonjs.mjs/node_modules/core-js/internals/create-non-enumerable-property.js +0 -24
  251. package/dist/melonjs.mjs/node_modules/core-js/internals/create-property-descriptor.js +0 -17
  252. package/dist/melonjs.mjs/node_modules/core-js/internals/define-built-in.js +0 -43
  253. package/dist/melonjs.mjs/node_modules/core-js/internals/define-global-property.js +0 -23
  254. package/dist/melonjs.mjs/node_modules/core-js/internals/descriptors.js +0 -18
  255. package/dist/melonjs.mjs/node_modules/core-js/internals/document-all.js +0 -18
  256. package/dist/melonjs.mjs/node_modules/core-js/internals/document-create-element.js +0 -22
  257. package/dist/melonjs.mjs/node_modules/core-js/internals/engine-user-agent.js +0 -14
  258. package/dist/melonjs.mjs/node_modules/core-js/internals/engine-v8-version.js +0 -39
  259. package/dist/melonjs.mjs/node_modules/core-js/internals/entry-unbind.js +0 -18
  260. package/dist/melonjs.mjs/node_modules/core-js/internals/enum-bug-keys.js +0 -19
  261. package/dist/melonjs.mjs/node_modules/core-js/internals/export.js +0 -72
  262. package/dist/melonjs.mjs/node_modules/core-js/internals/fails.js +0 -16
  263. package/dist/melonjs.mjs/node_modules/core-js/internals/function-bind-native.js +0 -19
  264. package/dist/melonjs.mjs/node_modules/core-js/internals/function-call.js +0 -18
  265. package/dist/melonjs.mjs/node_modules/core-js/internals/function-name.js +0 -29
  266. package/dist/melonjs.mjs/node_modules/core-js/internals/function-uncurry-this.js +0 -22
  267. package/dist/melonjs.mjs/node_modules/core-js/internals/get-built-in.js +0 -22
  268. package/dist/melonjs.mjs/node_modules/core-js/internals/get-method.js +0 -21
  269. package/dist/melonjs.mjs/node_modules/core-js/internals/global.js +0 -25
  270. package/dist/melonjs.mjs/node_modules/core-js/internals/has-own-property.js +0 -23
  271. package/dist/melonjs.mjs/node_modules/core-js/internals/hidden-keys.js +0 -10
  272. package/dist/melonjs.mjs/node_modules/core-js/internals/ie8-dom-define.js +0 -24
  273. package/dist/melonjs.mjs/node_modules/core-js/internals/indexed-object.js +0 -28
  274. package/dist/melonjs.mjs/node_modules/core-js/internals/inspect-source.js +0 -27
  275. package/dist/melonjs.mjs/node_modules/core-js/internals/internal-state.js +0 -88
  276. package/dist/melonjs.mjs/node_modules/core-js/internals/is-callable.js +0 -22
  277. package/dist/melonjs.mjs/node_modules/core-js/internals/is-forced.js +0 -34
  278. package/dist/melonjs.mjs/node_modules/core-js/internals/is-null-or-undefined.js +0 -14
  279. package/dist/melonjs.mjs/node_modules/core-js/internals/is-object.js +0 -22
  280. package/dist/melonjs.mjs/node_modules/core-js/internals/is-symbol.js +0 -27
  281. package/dist/melonjs.mjs/node_modules/core-js/internals/length-of-array-like.js +0 -18
  282. package/dist/melonjs.mjs/node_modules/core-js/internals/make-built-in.js +0 -68
  283. package/dist/melonjs.mjs/node_modules/core-js/internals/math-trunc.js +0 -19
  284. package/dist/melonjs.mjs/node_modules/core-js/internals/object-define-property.js +0 -58
  285. package/dist/melonjs.mjs/node_modules/core-js/internals/object-get-own-property-descriptor.js +0 -41
  286. package/dist/melonjs.mjs/node_modules/core-js/internals/object-get-own-property-names.js +0 -23
  287. package/dist/melonjs.mjs/node_modules/core-js/internals/object-get-own-property-symbols.js +0 -12
  288. package/dist/melonjs.mjs/node_modules/core-js/internals/object-is-prototype-of.js +0 -14
  289. package/dist/melonjs.mjs/node_modules/core-js/internals/object-keys-internal.js +0 -35
  290. package/dist/melonjs.mjs/node_modules/core-js/internals/object-property-is-enumerable.js +0 -23
  291. package/dist/melonjs.mjs/node_modules/core-js/internals/ordinary-to-primitive.js +0 -28
  292. package/dist/melonjs.mjs/node_modules/core-js/internals/own-keys.js +0 -31
  293. package/dist/melonjs.mjs/node_modules/core-js/internals/require-object-coercible.js +0 -21
  294. package/dist/melonjs.mjs/node_modules/core-js/internals/shared-key.js +0 -21
  295. package/dist/melonjs.mjs/node_modules/core-js/internals/shared-store.js +0 -19
  296. package/dist/melonjs.mjs/node_modules/core-js/internals/shared.js +0 -24
  297. package/dist/melonjs.mjs/node_modules/core-js/internals/string-trim-end.js +0 -22
  298. package/dist/melonjs.mjs/node_modules/core-js/internals/string-trim-forced.js +0 -28
  299. package/dist/melonjs.mjs/node_modules/core-js/internals/string-trim-start.js +0 -22
  300. package/dist/melonjs.mjs/node_modules/core-js/internals/string-trim.js +0 -45
  301. package/dist/melonjs.mjs/node_modules/core-js/internals/symbol-constructor-detection.js +0 -26
  302. package/dist/melonjs.mjs/node_modules/core-js/internals/to-absolute-index.js +0 -23
  303. package/dist/melonjs.mjs/node_modules/core-js/internals/to-indexed-object.js +0 -19
  304. package/dist/melonjs.mjs/node_modules/core-js/internals/to-integer-or-infinity.js +0 -20
  305. package/dist/melonjs.mjs/node_modules/core-js/internals/to-length.js +0 -20
  306. package/dist/melonjs.mjs/node_modules/core-js/internals/to-object.js +0 -20
  307. package/dist/melonjs.mjs/node_modules/core-js/internals/to-primitive.js +0 -41
  308. package/dist/melonjs.mjs/node_modules/core-js/internals/to-property-key.js +0 -21
  309. package/dist/melonjs.mjs/node_modules/core-js/internals/to-string-tag-support.js +0 -19
  310. package/dist/melonjs.mjs/node_modules/core-js/internals/to-string.js +0 -19
  311. package/dist/melonjs.mjs/node_modules/core-js/internals/try-to-string.js +0 -18
  312. package/dist/melonjs.mjs/node_modules/core-js/internals/uid.js +0 -20
  313. package/dist/melonjs.mjs/node_modules/core-js/internals/use-symbol-as-uid.js +0 -18
  314. package/dist/melonjs.mjs/node_modules/core-js/internals/v8-prototype-define-bug.js +0 -24
  315. package/dist/melonjs.mjs/node_modules/core-js/internals/weak-map-basic-detection.js +0 -18
  316. package/dist/melonjs.mjs/node_modules/core-js/internals/well-known-symbol.js +0 -41
  317. package/dist/melonjs.mjs/node_modules/core-js/internals/whitespaces.js +0 -12
  318. package/dist/melonjs.mjs/node_modules/core-js/modules/es.global-this.js +0 -18
  319. package/dist/melonjs.mjs/node_modules/core-js/modules/es.string.trim-end.js +0 -22
  320. package/dist/melonjs.mjs/node_modules/core-js/modules/es.string.trim-left.js +0 -19
  321. package/dist/melonjs.mjs/node_modules/core-js/modules/es.string.trim-right.js +0 -19
  322. package/dist/melonjs.mjs/node_modules/core-js/modules/es.string.trim-start.js +0 -22
  323. package/dist/melonjs.mjs/node_modules/eventemitter3/index.mjs.js +0 -9
@@ -55,23 +55,17 @@ var leadingZeroRE = /^0+/;
55
55
  * @ignore
56
56
  */
57
57
  function addMapping(id, mapping) {
58
- var expanded_id = id.replace(vendorProductRE, (_, a, b) => {
59
- return (
60
- "000".slice(a.length - 1) + a + "-" +
61
- "000".slice(b.length - 1) + b + "-"
62
- );
63
- });
64
- var sparse_id = id.replace(vendorProductRE, (_, a, b) => {
65
- return (
66
- a.replace(leadingZeroRE, "") + "-" +
67
- b.replace(leadingZeroRE, "") + "-"
68
- );
69
- });
58
+ var expanded_id = id.replace(vendorProductRE, (_, a, b) =>
59
+ "000".slice(a.length - 1) + a + "-" +
60
+ "000".slice(b.length - 1) + b + "-"
61
+ );
62
+ var sparse_id = id.replace(vendorProductRE, (_, a, b) =>
63
+ a.replace(leadingZeroRE, "") + "-" +
64
+ b.replace(leadingZeroRE, "") + "-"
65
+ );
70
66
 
71
67
  // Normalize optional parameters
72
- mapping.analog = mapping.analog || mapping.buttons.map(() => {
73
- return -1;
74
- });
68
+ mapping.analog = mapping.analog || mapping.buttons.map(() => -1);
75
69
  mapping.normalize_fn = mapping.normalize_fn || function (value) { return value; };
76
70
 
77
71
  remap.set(expanded_id, mapping);
@@ -315,21 +315,7 @@ function dispatchEvent(normalizedEvents) {
315
315
  pointer.gameLocalY = pointer.gameY - parentBounds.y;
316
316
  }
317
317
 
318
- var gameX = pointer.gameX;
319
- var gameY = pointer.gameY;
320
-
321
- // apply inverse transformation for renderable
322
- if (typeof region.currentTransform !== "undefined") {
323
- if (!region.currentTransform.isIdentity()) {
324
- var invV = region.currentTransform.applyInverse(
325
- pool.pull("Vector2d", gameX, gameY)
326
- );
327
- gameX = invV.x;
328
- gameY = invV.y;
329
- pool.push(invV);
330
- }
331
- }
332
- eventInBounds = bounds.contains(gameX, gameY);
318
+ eventInBounds = bounds.contains(pointer.gameX, pointer.gameY);
333
319
 
334
320
  switch (pointer.type) {
335
321
  case POINTER_MOVE[0]:
@@ -0,0 +1,36 @@
1
+
2
+ /**
3
+ * display a deprecation warning in the console
4
+ * @param {string} deprecated - deprecated class,function or property name
5
+ * @param {string} replacement - the replacement class, function, or property name
6
+ * @param {string} version - the version since when the lass,function or property is deprecated
7
+ */
8
+ export function warning(deprecated, replacement, version) {
9
+ var msg = "melonJS: %s is deprecated since version %s, please use %s";
10
+ var stack = new Error().stack;
11
+
12
+ if (console.groupCollapsed) {
13
+ console.groupCollapsed(
14
+ "%c" + msg,
15
+ "font-weight:normal;color:yellow;",
16
+ deprecated,
17
+ version,
18
+ replacement
19
+ );
20
+ } else {
21
+ console.warn(
22
+ msg,
23
+ deprecated,
24
+ version,
25
+ replacement
26
+ );
27
+ }
28
+
29
+ if (typeof stack !== "undefined") {
30
+ console.warn(stack);
31
+ }
32
+
33
+ if (console.groupCollapsed) {
34
+ console.groupEnd();
35
+ }
36
+ }
@@ -2,47 +2,12 @@ import { TextureAtlas } from "./../video/texture/atlas.js";
2
2
  import Renderer from "./../video/renderer.js";
3
3
  import { Draggable, DropTarget } from "./../renderable/dragndrop.js";
4
4
  import UISpriteElement from "./../renderable/ui/uispriteelement.js";
5
+ import { warning } from "./console.js";
6
+
5
7
  /*
6
8
  * placeholder for all deprecated classes and corresponding alias for backward compatibility
7
9
  */
8
10
 
9
- /**
10
- * display a deprecation warning in the console
11
- * @ignore
12
- * @param {string} deprecated - deprecated class,function or property name
13
- * @param {string} replacement - the replacement class, function, or property name
14
- * @param {string} version - the version since when the lass,function or property is deprecated
15
- */
16
- export function warning(deprecated, replacement, version) {
17
- var msg = "melonJS: %s is deprecated since version %s, please use %s";
18
- var stack = new Error().stack;
19
-
20
- if (console.groupCollapsed) {
21
- console.groupCollapsed(
22
- "%c" + msg,
23
- "font-weight:normal;color:yellow;",
24
- deprecated,
25
- version,
26
- replacement
27
- );
28
- } else {
29
- console.warn(
30
- msg,
31
- deprecated,
32
- version,
33
- replacement
34
- );
35
- }
36
-
37
- if (typeof stack !== "undefined") {
38
- console.warn(stack);
39
- }
40
-
41
- if (console.groupCollapsed) {
42
- console.groupEnd();
43
- }
44
- }
45
-
46
11
  /**
47
12
  * Alias of {@link TextureAtlas}
48
13
  * @public
@@ -1,7 +1,7 @@
1
1
  import utils from "./../utils/utils.js";
2
2
  import * as event from "./../system/event.js";
3
3
  import state from "./../state/state.js";
4
- import loader from "./../loader/loader.js";
4
+ import { getTMX } from "./../loader/loader.js";
5
5
  import { game } from "../index.js";
6
6
  import TMXTileMap from "./tiled/TMXTileMap.js";
7
7
 
@@ -95,7 +95,7 @@ var level = {
95
95
  // just load the level with the XML stuff
96
96
  if (levels[levelId] == null) {
97
97
  //console.log("loading "+ levelId);
98
- levels[levelId] = new TMXTileMap(levelId, loader.getTMX(levelId));
98
+ levels[levelId] = new TMXTileMap(levelId, getTMX(levelId));
99
99
  // level index
100
100
  levelIdx.push(levelId);
101
101
  }
@@ -15,66 +15,45 @@ export default class TMXGroup {
15
15
 
16
16
  /**
17
17
  * group name
18
- * @public
19
18
  * @type {string}
20
- * @name name
21
- * @memberof TMXGroup
22
19
  */
23
20
  this.name = data.name;
24
21
 
25
22
  /**
26
23
  * group width
27
- * @public
28
24
  * @type {number}
29
- * @name width
30
- * @memberof TMXGroup
31
25
  */
32
26
  this.width = data.width || 0;
33
27
 
34
28
  /**
35
29
  * group height
36
- * @public
37
30
  * @type {number}
38
- * @name height
39
- * @memberof TMXGroup
40
31
  */
41
32
  this.height = data.height || 0;
42
33
 
43
34
  /**
44
35
  * tint color
45
- * @public
46
36
  * @type {string}
47
- * @name tintcolor
48
- * @memberof TMXGroup
49
37
  */
50
38
  this.tintcolor = data.tintcolor;
51
39
 
52
40
 
53
41
  /**
54
42
  * the group class
55
- * @public
56
43
  * @type {string}
57
- * @name class
58
- * @memberof TMXGroup
59
44
  */
60
45
  this.class = data.class;
61
46
 
62
47
  /**
63
48
  * group z order
64
- * @public
65
49
  * @type {number}
66
- * @name z
67
- * @memberof TMXGroup
68
50
  */
69
51
  this.z = z;
70
52
 
71
53
  /**
72
54
  * group objects list definition
73
55
  * @see TMXObject
74
- * @public
75
56
  * @type {object[]}
76
- * @name name
77
- * @memberof TMXGroup
78
57
  */
79
58
  this.objects = [];
80
59
 
@@ -10,34 +10,43 @@ import { game } from "../../index.js";
10
10
  * Create required arrays for the given layer object
11
11
  * @ignore
12
12
  */
13
- function initArray(layer) {
13
+ function initArray(rows, cols) {
14
14
  // initialize the array
15
- layer.layerData = new Array(layer.cols);
16
- for (var x = 0; x < layer.cols; x++) {
17
- layer.layerData[x] = new Array(layer.rows);
18
- for (var y = 0; y < layer.rows; y++) {
19
- layer.layerData[x][y] = null;
15
+ var array = new Array(cols);
16
+ for (var col = 0; col < cols; col++) {
17
+ array[col] = new Array(rows);
18
+ for (var row = 0; row < rows; row++) {
19
+ array[col][row] = null;
20
20
  }
21
21
  }
22
+ return array;
22
23
  }
23
24
 
24
25
  /**
25
26
  * Set a tiled layer Data
26
27
  * @ignore
27
28
  */
28
- function setLayerData(layer, data) {
29
+ function setLayerData(layer, bounds, data) {
29
30
  var idx = 0;
30
- // initialize the data array
31
- initArray(layer);
31
+ var width, height;
32
+
33
+ // layer provide rows and cols, chunk width and height
34
+ if (typeof bounds.rows === "undefined") {
35
+ width = bounds.width;
36
+ height = bounds.height;
37
+ } else {
38
+ width = bounds.cols;
39
+ height = bounds.rows;
40
+ }
32
41
  // set everything
33
- for (var y = 0; y < layer.rows; y++) {
34
- for (var x = 0; x < layer.cols; x++) {
42
+ for (var y = 0; y < height; y++) {
43
+ for (var x = 0; x < width; x++) {
35
44
  // get the value of the gid
36
45
  var gid = data[idx++];
37
46
  // fill the array
38
47
  if (gid !== 0) {
39
48
  // add a new tile to the layer
40
- layer.layerData[x][y] = layer.getTileById(gid, x, y);
49
+ layer.layerData[x + bounds.x][y + bounds.y] = layer.getTileById(gid, x + bounds.x, y + bounds.y);
41
50
  }
42
51
  }
43
52
  }
@@ -89,11 +98,23 @@ function preRenderLayer(layer, renderer) {
89
98
  // layer orientation
90
99
  this.orientation = orientation;
91
100
 
101
+ /**
102
+ * Horizontal layer offset in tiles
103
+ * @default 0
104
+ * @type {number}
105
+ */
106
+ this.x = 0;
107
+
108
+ /**
109
+ * Vertical layer offset in tiles
110
+ * @default 0
111
+ * @type {number}
112
+ */
113
+ this.y = 0;
114
+
92
115
  /**
93
116
  * The Layer corresponding Tilesets
94
- * @public
95
117
  * @type {TMXTilesetGroup}
96
- * @name TMXLayer#tilesets
97
118
  */
98
119
  this.tilesets = tilesets;
99
120
 
@@ -114,36 +135,27 @@ function preRenderLayer(layer, renderer) {
114
135
 
115
136
  /**
116
137
  * All animated tilesets in this layer
117
- * @ignore
118
138
  * @type {TMXTileset[]}
119
- * @name TMXLayer#animatedTilesets
120
139
  */
121
140
  this.animatedTilesets = [];
122
141
 
123
142
  /**
124
143
  * Layer contains tileset animations
125
- * @public
126
144
  * @type {boolean}
127
- * @name TMXLayer#isAnimated
128
145
  */
129
146
  this.isAnimated = false;
130
147
 
131
148
  /**
132
149
  * the order in which tiles on orthogonal tile layers are rendered.
133
150
  * (valid values are "left-down", "left-up", "right-down", "right-up")
134
- * @public
135
151
  * @type {string}
136
152
  * @default "right-down"
137
- * @name TMXLayer#renderorder
138
153
  */
139
154
  this.renderorder = data.renderorder || "right-down";
140
155
 
141
156
  /**
142
157
  * the layer class
143
- * @public
144
158
  * @type {string}
145
- * @name class
146
- * @name TMXLayer#class
147
159
  */
148
160
  this.class = data.class;
149
161
 
@@ -189,16 +201,37 @@ function preRenderLayer(layer, renderer) {
189
201
  this.setRenderer(map.getRenderer());
190
202
 
191
203
 
192
- // initialize and set the layer data
193
- setLayerData(this,
194
- TMXUtils.decode(
195
- data.data,
196
- data.encoding,
197
- data.compression
198
- )
199
- );
200
- }
204
+ // initialize the data array
205
+ this.layerData = initArray(this.rows, this.cols);
201
206
 
207
+ if (map.infinite === 0) {
208
+ // initialize and set the layer data
209
+ setLayerData(
210
+ this,
211
+ this,
212
+ TMXUtils.decode(
213
+ data.data,
214
+ data.encoding,
215
+ data.compression
216
+ )
217
+ );
218
+ } else if (map.infinite === 1) {
219
+ // infinite map, initialize per chunk
220
+ data.chunks.forEach((chunk) => {
221
+ // initialize and set the layer data
222
+ setLayerData(
223
+ this,
224
+ chunk,
225
+ TMXUtils.decode(
226
+ chunk.data,
227
+ data.encoding,
228
+ data.compression
229
+ )
230
+ );
231
+ });
232
+ }
233
+
234
+ }
202
235
 
203
236
  // called when the layer is added to the game world or a container
204
237
  onActivateEvent() {
@@ -223,10 +256,6 @@ function preRenderLayer(layer, renderer) {
223
256
  this.preRender = false;
224
257
  }
225
258
 
226
- // Resize the bounding rect
227
- this.getBounds().addBounds(this.getRenderer().getBounds(), true);
228
- this.getBounds().shift(this.pos);
229
-
230
259
  // if pre-rendering method is use, create an offline canvas/renderer
231
260
  if ((this.preRender === true) && (!this.canvasRenderer)) {
232
261
  this.canvasRenderer = new CanvasRenderer({
@@ -248,9 +277,6 @@ function preRenderLayer(layer, renderer) {
248
277
 
249
278
  /**
250
279
  * Set the TMX renderer for this layer object
251
- * @name setRenderer
252
- * @memberof TMXLayer
253
- * @public
254
280
  * @param {TMXRenderer} renderer
255
281
  * @example
256
282
  * // use the parent map default renderer
@@ -263,21 +289,14 @@ function preRenderLayer(layer, renderer) {
263
289
 
264
290
  /**
265
291
  * Return the layer current renderer object
266
- * @name getRenderer
267
- * @memberof TMXLayer
268
- * @public
269
292
  * @returns {TMXRenderer} renderer
270
293
  */
271
294
  getRenderer() {
272
295
  return this.renderer;
273
296
  }
274
297
 
275
-
276
298
  /**
277
299
  * Return the TileId of the Tile at the specified position
278
- * @name getTileId
279
- * @memberof TMXLayer
280
- * @public
281
300
  * @param {number} x - X coordinate (in world/pixels coordinates)
282
301
  * @param {number} y - Y coordinate (in world/pixels coordinates)
283
302
  * @returns {number} TileId or null if there is no Tile at the given position
@@ -289,9 +308,6 @@ function preRenderLayer(layer, renderer) {
289
308
 
290
309
  /**
291
310
  * Return the Tile object at the specified position
292
- * @name getTile
293
- * @memberof TMXLayer
294
- * @public
295
311
  * @param {number} x - X coordinate (in world/pixels coordinates)
296
312
  * @param {number} y - Y coordinate (in world/pixels coordinates)
297
313
  * @returns {Tile} corresponding tile or null if there is no defined tile at the coordinate or if outside of the layer bounds
@@ -314,9 +330,6 @@ function preRenderLayer(layer, renderer) {
314
330
 
315
331
  /**
316
332
  * assign the given Tile object to the specified position
317
- * @name getTile
318
- * @memberof TMXLayer
319
- * @public
320
333
  * @param {Tile} tile - the tile object to be assigned
321
334
  * @param {number} x - x coordinate (in world/pixels coordinates)
322
335
  * @param {number} y - y coordinate (in world/pixels coordinates)
@@ -329,9 +342,6 @@ function preRenderLayer(layer, renderer) {
329
342
 
330
343
  /**
331
344
  * return a new the Tile object corresponding to the given tile id
332
- * @name setTile
333
- * @memberof TMXLayer
334
- * @public
335
345
  * @param {number} tileId - tileId
336
346
  * @param {number} x - X coordinate (in world/pixels coordinates)
337
347
  * @param {number} y - Y coordinate (in world/pixels coordinates)
@@ -347,9 +357,6 @@ function preRenderLayer(layer, renderer) {
347
357
 
348
358
  /**
349
359
  * Return the Tile object at the specified tile coordinates
350
- * @name cellAt
351
- * @memberof TMXLayer
352
- * @public
353
360
  * @param {number} x - x position of the tile (in Tile unit)
354
361
  * @param {number} y - x position of the tile (in Tile unit)
355
362
  * @param {number} [boundsCheck=true] - check first if within the layer bounds
@@ -373,9 +380,6 @@ function preRenderLayer(layer, renderer) {
373
380
 
374
381
  /**
375
382
  * clear the tile at the specified position
376
- * @name clearTile
377
- * @memberof TMXLayer
378
- * @public
379
383
  * @param {number} x - X coordinate (in map coordinates: row/column)
380
384
  * @param {number} y - Y coordinate (in map coordinates: row/column)
381
385
  * @example
@@ -405,7 +409,6 @@ function preRenderLayer(layer, renderer) {
405
409
  }
406
410
  return result;
407
411
  }
408
-
409
412
  return false;
410
413
  }
411
414
 
@@ -15,185 +15,125 @@ export default class TMXObject {
15
15
 
16
16
  /**
17
17
  * point list in JSON format
18
- * @public
19
18
  * @type {object[]}
20
- * @name points
21
- * @memberof TMXObject
22
19
  */
23
20
  this.points = undefined;
24
21
 
25
22
  /**
26
23
  * object name
27
- * @public
28
24
  * @type {string}
29
- * @name name
30
- * @memberof TMXObject
31
25
  */
32
26
  this.name = settings.name;
33
27
 
34
28
  /**
35
29
  * object x position
36
- * @public
37
30
  * @type {number}
38
- * @name x
39
- * @memberof TMXObject
40
31
  */
41
32
  this.x = +settings.x;
42
33
 
43
34
  /**
44
35
  * object y position
45
- * @public
46
36
  * @type {number}
47
- * @name y
48
- * @memberof TMXObject
49
37
  */
50
38
  this.y = +settings.y;
51
39
 
52
40
  /**
53
41
  * object z order
54
- * @public
55
42
  * @type {number}
56
- * @name z
57
- * @memberof TMXObject
58
43
  */
59
44
  this.z = +z;
60
45
 
61
46
  /**
62
47
  * object width
63
- * @public
64
48
  * @type {number}
65
- * @name width
66
- * @memberof TMXObject
67
49
  */
68
50
  this.width = +settings.width || 0;
69
51
 
70
52
  /**
71
53
  * object height
72
- * @public
73
54
  * @type {number}
74
- * @name height
75
- * @memberof TMXObject
76
55
  */
77
56
  this.height = +settings.height || 0;
78
57
 
79
58
  /**
80
59
  * object gid value
81
60
  * when defined the object is a tiled object
82
- * @public
83
61
  * @type {number}
84
- * @name gid
85
- * @memberof TMXObject
86
62
  */
87
63
  this.gid = +settings.gid || null;
88
64
 
89
65
  /**
90
66
  * tint color
91
- * @public
92
67
  * @type {string}
93
- * @name tintcolor
94
- * @memberof TMXObject
95
68
  */
96
69
  this.tintcolor = settings.tintcolor;
97
70
 
98
71
  /**
99
72
  * object type
100
- * @public
101
73
  * @type {string}
102
74
  * @deprecated since Tiled 1.9
103
75
  * @see https://docs.mapeditor.org/en/stable/reference/tmx-changelog/#tiled-1-9
104
- * @name type
105
- * @memberof TMXObject
106
76
  */
107
77
  this.type = settings.type;
108
78
 
109
79
  /**
110
80
  * the object class
111
- * @public
112
81
  * @type {string}
113
- * @name class
114
- * @memberof TMXObject
115
82
  */
116
83
  this.class = typeof settings.class !== "undefined" ? settings.class : settings.type;
117
84
 
118
85
  /**
119
86
  * object text
120
- * @public
121
87
  * @type {object}
122
88
  * @see http://docs.mapeditor.org/en/stable/reference/tmx-map-format/#text
123
- * @name text
124
- * @memberof TMXObject
125
89
  */
126
90
  this.text = undefined;
127
91
 
128
92
  /**
129
93
  * The rotation of the object in radians clockwise (defaults to 0)
130
- * @public
131
94
  * @type {number}
132
- * @name rotation
133
- * @memberof TMXObject
134
95
  */
135
96
  this.rotation = degToRad(+settings.rotation || 0);
136
97
 
137
98
  /**
138
99
  * object unique identifier per level (Tiled 0.11.x+)
139
- * @public
140
100
  * @type {number}
141
- * @name id
142
- * @memberof TMXObject
143
101
  */
144
102
  this.id = +settings.id || undefined;
145
103
 
146
104
  /**
147
105
  * object orientation (orthogonal or isometric)
148
- * @public
149
106
  * @type {string}
150
- * @name orientation
151
- * @memberof TMXObject
152
107
  */
153
108
  this.orientation = map.orientation;
154
109
 
155
110
  /**
156
111
  * the collision shapes defined for this object
157
- * @public
158
112
  * @type {object[]}
159
- * @name shapes
160
- * @memberof TMXObject
161
113
  */
162
114
  this.shapes = undefined;
163
115
 
164
116
  /**
165
117
  * if true, the object is an Ellipse
166
- * @public
167
118
  * @type {boolean}
168
- * @name isEllipse
169
- * @memberof TMXObject
170
119
  */
171
120
  this.isEllipse = false;
172
121
 
173
122
  /**
174
123
  * if true, the object is a Point
175
- * @public
176
124
  * @type {boolean}
177
- * @name isPoint
178
- * @memberof TMXObject
179
125
  */
180
126
  this.isPoint = false;
181
127
 
182
128
  /**
183
129
  * if true, the object is a Polygon
184
- * @public
185
130
  * @type {boolean}
186
- * @name isPolygon
187
- * @memberof TMXObject
188
131
  */
189
132
  this.isPolygon = false;
190
133
 
191
134
  /**
192
135
  * if true, the object is a PolyLine
193
- * @public
194
136
  * @type {boolean}
195
- * @name isPolyLine
196
- * @memberof TMXObject
197
137
  */
198
138
  this.isPolyLine = false;
199
139
 
@@ -265,8 +205,6 @@ export default class TMXObject {
265
205
 
266
206
  /**
267
207
  * parses the TMX shape definition and returns a corresponding array of me.Shape object
268
- * @name parseTMXShapes
269
- * @memberof TMXObject
270
208
  * @private
271
209
  * @returns {Polygon[]|Line[]|Ellipse[]} an array of shape objects
272
210
  */