melonjs 14.1.2 → 14.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (381) hide show
  1. package/README.md +3 -4
  2. package/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +1 -1
  3. package/dist/melonjs.mjs/_virtual/arraymultimap.js +1 -1
  4. package/dist/melonjs.mjs/_virtual/earcut.js +7 -3
  5. package/dist/melonjs.mjs/_virtual/howler.js +1 -1
  6. package/dist/melonjs.mjs/_virtual/index.js +1 -1
  7. package/dist/melonjs.mjs/_virtual/index2.js +7 -3
  8. package/dist/melonjs.mjs/_virtual/make-built-in.js +10 -0
  9. package/dist/melonjs.mjs/_virtual/multimap.js +1 -1
  10. package/dist/melonjs.mjs/_virtual/object-define-property.js +10 -0
  11. package/dist/melonjs.mjs/_virtual/object-get-own-property-descriptor.js +10 -0
  12. package/dist/melonjs.mjs/_virtual/object-get-own-property-names.js +10 -0
  13. package/dist/melonjs.mjs/_virtual/object-get-own-property-symbols.js +10 -0
  14. package/dist/melonjs.mjs/_virtual/object-property-is-enumerable.js +10 -0
  15. package/dist/melonjs.mjs/_virtual/setmultimap.js +1 -1
  16. package/dist/melonjs.mjs/_virtual/shared.js +10 -0
  17. package/dist/melonjs.mjs/application/application.js +173 -22
  18. package/dist/melonjs.mjs/application/header.js +34 -0
  19. package/dist/melonjs.mjs/application/resize.js +119 -0
  20. package/dist/melonjs.mjs/application/settings.js +28 -0
  21. package/dist/melonjs.mjs/audio/audio.js +1 -1
  22. package/dist/melonjs.mjs/camera/camera2d.js +2 -2
  23. package/dist/melonjs.mjs/entity/entity.js +1 -1
  24. package/dist/melonjs.mjs/game.js +1 -1
  25. package/dist/melonjs.mjs/geometries/ellipse.js +1 -1
  26. package/dist/melonjs.mjs/geometries/line.js +1 -1
  27. package/dist/melonjs.mjs/geometries/path2d.js +3 -3
  28. package/dist/melonjs.mjs/geometries/point.js +1 -1
  29. package/dist/melonjs.mjs/geometries/poly.js +3 -3
  30. package/dist/melonjs.mjs/geometries/rectangle.js +1 -1
  31. package/dist/melonjs.mjs/geometries/roundrect.js +1 -1
  32. package/dist/melonjs.mjs/index.js +41 -61
  33. package/dist/melonjs.mjs/input/gamepad.js +1 -1
  34. package/dist/melonjs.mjs/input/input.js +1 -1
  35. package/dist/melonjs.mjs/input/keyboard.js +1 -1
  36. package/dist/melonjs.mjs/input/pointer.js +2 -2
  37. package/dist/melonjs.mjs/input/pointerevent.js +7 -8
  38. package/dist/melonjs.mjs/lang/deprecated.js +1 -1
  39. package/dist/melonjs.mjs/level/level.js +2 -2
  40. package/dist/melonjs.mjs/level/tiled/TMXGroup.js +1 -1
  41. package/dist/melonjs.mjs/level/tiled/TMXLayer.js +2 -2
  42. package/dist/melonjs.mjs/level/tiled/TMXObject.js +1 -1
  43. package/dist/melonjs.mjs/level/tiled/TMXTile.js +1 -1
  44. package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +2 -2
  45. package/dist/melonjs.mjs/level/tiled/TMXTileset.js +1 -1
  46. package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +1 -1
  47. package/dist/melonjs.mjs/level/tiled/TMXUtils.js +1 -1
  48. package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +1 -1
  49. package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +1 -1
  50. package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +1 -1
  51. package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +1 -1
  52. package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +1 -1
  53. package/dist/melonjs.mjs/loader/loader.js +1 -1
  54. package/dist/melonjs.mjs/loader/loadingscreen.js +2 -2
  55. package/dist/melonjs.mjs/loader/melonjs_logo.png.js +1 -1
  56. package/dist/melonjs.mjs/math/color.js +1 -1
  57. package/dist/melonjs.mjs/math/math.js +1 -1
  58. package/dist/melonjs.mjs/math/matrix2.js +1 -1
  59. package/dist/melonjs.mjs/math/matrix3.js +1 -1
  60. package/dist/melonjs.mjs/math/observable_vector2.js +1 -1
  61. package/dist/melonjs.mjs/math/observable_vector3.js +1 -1
  62. package/dist/melonjs.mjs/math/vector2.js +1 -1
  63. package/dist/melonjs.mjs/math/vector3.js +1 -1
  64. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/arraymultimap.js +3 -2
  65. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/index.js +1 -1
  66. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/multimap.js +3 -2
  67. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/src/setmultimap.js +3 -2
  68. package/dist/melonjs.mjs/node_modules/core-js/es/string/trim-end.js +13 -0
  69. package/dist/melonjs.mjs/node_modules/core-js/es/string/trim-start.js +13 -0
  70. package/dist/melonjs.mjs/node_modules/core-js/internals/a-callable.js +22 -0
  71. package/dist/melonjs.mjs/node_modules/core-js/internals/an-object.js +21 -0
  72. package/dist/melonjs.mjs/node_modules/core-js/internals/array-includes.js +45 -0
  73. package/dist/melonjs.mjs/node_modules/core-js/internals/classof-raw.js +19 -0
  74. package/dist/melonjs.mjs/node_modules/core-js/internals/classof.js +43 -0
  75. package/dist/melonjs.mjs/node_modules/core-js/internals/copy-constructor-properties.js +32 -0
  76. package/dist/melonjs.mjs/node_modules/core-js/internals/create-non-enumerable-property.js +24 -0
  77. package/dist/melonjs.mjs/node_modules/core-js/internals/create-property-descriptor.js +17 -0
  78. package/dist/melonjs.mjs/node_modules/core-js/internals/define-built-in.js +43 -0
  79. package/dist/melonjs.mjs/node_modules/core-js/internals/define-global-property.js +23 -0
  80. package/dist/melonjs.mjs/node_modules/core-js/internals/descriptors.js +18 -0
  81. package/dist/melonjs.mjs/node_modules/core-js/internals/document-all.js +18 -0
  82. package/dist/melonjs.mjs/node_modules/core-js/internals/document-create-element.js +22 -0
  83. package/dist/melonjs.mjs/node_modules/core-js/internals/engine-user-agent.js +14 -0
  84. package/dist/melonjs.mjs/node_modules/core-js/internals/engine-v8-version.js +39 -0
  85. package/dist/melonjs.mjs/node_modules/core-js/internals/entry-unbind.js +18 -0
  86. package/dist/melonjs.mjs/node_modules/core-js/internals/enum-bug-keys.js +19 -0
  87. package/dist/melonjs.mjs/node_modules/core-js/internals/export.js +72 -0
  88. package/dist/melonjs.mjs/node_modules/core-js/internals/fails.js +16 -0
  89. package/dist/melonjs.mjs/node_modules/core-js/internals/function-bind-native.js +19 -0
  90. package/dist/melonjs.mjs/node_modules/core-js/internals/function-call.js +18 -0
  91. package/dist/melonjs.mjs/node_modules/core-js/internals/function-name.js +29 -0
  92. package/dist/melonjs.mjs/node_modules/core-js/internals/function-uncurry-this.js +22 -0
  93. package/dist/melonjs.mjs/node_modules/core-js/internals/get-built-in.js +22 -0
  94. package/dist/melonjs.mjs/node_modules/core-js/internals/get-method.js +21 -0
  95. package/dist/melonjs.mjs/node_modules/core-js/internals/global.js +25 -0
  96. package/dist/melonjs.mjs/node_modules/core-js/internals/has-own-property.js +23 -0
  97. package/dist/melonjs.mjs/node_modules/core-js/internals/hidden-keys.js +10 -0
  98. package/dist/melonjs.mjs/node_modules/core-js/internals/ie8-dom-define.js +24 -0
  99. package/dist/melonjs.mjs/node_modules/core-js/internals/indexed-object.js +28 -0
  100. package/dist/melonjs.mjs/node_modules/core-js/internals/inspect-source.js +27 -0
  101. package/dist/melonjs.mjs/node_modules/core-js/internals/internal-state.js +88 -0
  102. package/dist/melonjs.mjs/node_modules/core-js/internals/is-callable.js +22 -0
  103. package/dist/melonjs.mjs/node_modules/core-js/internals/is-forced.js +34 -0
  104. package/dist/melonjs.mjs/node_modules/core-js/internals/is-null-or-undefined.js +14 -0
  105. package/dist/melonjs.mjs/node_modules/core-js/internals/is-object.js +22 -0
  106. package/dist/melonjs.mjs/node_modules/core-js/internals/is-symbol.js +27 -0
  107. package/dist/melonjs.mjs/node_modules/core-js/internals/length-of-array-like.js +18 -0
  108. package/dist/melonjs.mjs/node_modules/core-js/internals/make-built-in.js +68 -0
  109. package/dist/melonjs.mjs/node_modules/core-js/internals/math-trunc.js +19 -0
  110. package/dist/melonjs.mjs/node_modules/core-js/internals/object-define-property.js +58 -0
  111. package/dist/melonjs.mjs/node_modules/core-js/internals/object-get-own-property-descriptor.js +41 -0
  112. package/dist/melonjs.mjs/node_modules/core-js/internals/object-get-own-property-names.js +23 -0
  113. package/dist/melonjs.mjs/node_modules/core-js/internals/object-get-own-property-symbols.js +12 -0
  114. package/dist/melonjs.mjs/node_modules/core-js/internals/object-is-prototype-of.js +14 -0
  115. package/dist/melonjs.mjs/node_modules/core-js/internals/object-keys-internal.js +35 -0
  116. package/dist/melonjs.mjs/node_modules/core-js/internals/object-property-is-enumerable.js +23 -0
  117. package/dist/melonjs.mjs/node_modules/core-js/internals/ordinary-to-primitive.js +28 -0
  118. package/dist/melonjs.mjs/node_modules/core-js/internals/own-keys.js +31 -0
  119. package/dist/melonjs.mjs/node_modules/core-js/internals/require-object-coercible.js +21 -0
  120. package/dist/melonjs.mjs/node_modules/core-js/internals/shared-key.js +21 -0
  121. package/dist/melonjs.mjs/node_modules/core-js/internals/shared-store.js +19 -0
  122. package/dist/melonjs.mjs/node_modules/core-js/internals/shared.js +24 -0
  123. package/dist/melonjs.mjs/node_modules/core-js/internals/string-trim-end.js +22 -0
  124. package/dist/melonjs.mjs/node_modules/core-js/internals/string-trim-forced.js +28 -0
  125. package/dist/melonjs.mjs/node_modules/core-js/internals/string-trim-start.js +22 -0
  126. package/dist/melonjs.mjs/node_modules/core-js/internals/string-trim.js +45 -0
  127. package/dist/melonjs.mjs/node_modules/core-js/internals/symbol-constructor-detection.js +26 -0
  128. package/dist/melonjs.mjs/node_modules/core-js/internals/to-absolute-index.js +23 -0
  129. package/dist/melonjs.mjs/node_modules/core-js/internals/to-indexed-object.js +19 -0
  130. package/dist/melonjs.mjs/node_modules/core-js/internals/to-integer-or-infinity.js +20 -0
  131. package/dist/melonjs.mjs/node_modules/core-js/internals/to-length.js +20 -0
  132. package/dist/melonjs.mjs/node_modules/core-js/internals/to-object.js +20 -0
  133. package/dist/melonjs.mjs/node_modules/core-js/internals/to-primitive.js +41 -0
  134. package/dist/melonjs.mjs/node_modules/core-js/internals/to-property-key.js +21 -0
  135. package/dist/melonjs.mjs/node_modules/core-js/internals/to-string-tag-support.js +19 -0
  136. package/dist/melonjs.mjs/node_modules/core-js/internals/to-string.js +19 -0
  137. package/dist/melonjs.mjs/node_modules/core-js/internals/try-to-string.js +18 -0
  138. package/dist/melonjs.mjs/node_modules/core-js/internals/uid.js +20 -0
  139. package/dist/melonjs.mjs/node_modules/core-js/internals/use-symbol-as-uid.js +18 -0
  140. package/dist/melonjs.mjs/node_modules/core-js/internals/v8-prototype-define-bug.js +24 -0
  141. package/dist/melonjs.mjs/node_modules/core-js/internals/weak-map-basic-detection.js +18 -0
  142. package/dist/melonjs.mjs/node_modules/core-js/internals/well-known-symbol.js +41 -0
  143. package/dist/melonjs.mjs/node_modules/core-js/internals/whitespaces.js +12 -0
  144. package/dist/melonjs.mjs/node_modules/core-js/modules/es.global-this.js +18 -0
  145. package/dist/melonjs.mjs/node_modules/core-js/modules/es.string.trim-end.js +22 -0
  146. package/dist/melonjs.mjs/node_modules/core-js/modules/es.string.trim-left.js +19 -0
  147. package/dist/melonjs.mjs/node_modules/core-js/modules/es.string.trim-right.js +19 -0
  148. package/dist/melonjs.mjs/node_modules/core-js/modules/es.string.trim-start.js +22 -0
  149. package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +4 -5
  150. package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +3 -3
  151. package/dist/melonjs.mjs/node_modules/eventemitter3/index.mjs.js +9 -0
  152. package/dist/melonjs.mjs/node_modules/eventemitter3/index2.js +5 -2
  153. package/dist/melonjs.mjs/node_modules/howler/dist/howler.js +3 -2
  154. package/dist/melonjs.mjs/particles/emitter.js +1 -1
  155. package/dist/melonjs.mjs/particles/particle.js +1 -1
  156. package/dist/melonjs.mjs/particles/settings.js +1 -1
  157. package/dist/melonjs.mjs/physics/body.js +1 -1
  158. package/dist/melonjs.mjs/physics/bounds.js +1 -1
  159. package/dist/melonjs.mjs/physics/collision.js +3 -3
  160. package/dist/melonjs.mjs/physics/detector.js +174 -146
  161. package/dist/melonjs.mjs/physics/quadtree.js +1 -1
  162. package/dist/melonjs.mjs/physics/response.js +1 -1
  163. package/dist/melonjs.mjs/physics/sat.js +1 -1
  164. package/dist/melonjs.mjs/physics/world.js +10 -30
  165. package/dist/melonjs.mjs/plugin/plugin.js +4 -4
  166. package/dist/melonjs.mjs/polyfill/console.js +18 -0
  167. package/dist/melonjs.mjs/polyfill/performance.js +27 -0
  168. package/dist/melonjs.mjs/polyfill/requestAnimationFrame.js +46 -0
  169. package/dist/melonjs.mjs/polyfill/roundrect.js +242 -0
  170. package/dist/melonjs.mjs/renderable/collectable.js +1 -1
  171. package/dist/melonjs.mjs/renderable/colorlayer.js +1 -1
  172. package/dist/melonjs.mjs/renderable/container.js +3 -87
  173. package/dist/melonjs.mjs/renderable/dragndrop.js +1 -1
  174. package/dist/melonjs.mjs/renderable/imagelayer.js +2 -2
  175. package/dist/melonjs.mjs/renderable/light2d.js +1 -1
  176. package/dist/melonjs.mjs/renderable/nineslicesprite.js +1 -1
  177. package/dist/melonjs.mjs/renderable/re_container.js +1016 -0
  178. package/dist/melonjs.mjs/renderable/renderable.js +1 -1
  179. package/dist/melonjs.mjs/renderable/sprite.js +1 -1
  180. package/dist/melonjs.mjs/renderable/trigger.js +2 -2
  181. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +1 -1
  182. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +1 -1
  183. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +1 -1
  184. package/dist/melonjs.mjs/state/stage.js +2 -2
  185. package/dist/melonjs.mjs/state/state.js +2 -2
  186. package/dist/melonjs.mjs/system/device.js +9 -29
  187. package/dist/melonjs.mjs/system/dom.js +3 -2
  188. package/dist/melonjs.mjs/system/event.js +1 -1
  189. package/dist/melonjs.mjs/system/platform.js +1 -1
  190. package/dist/melonjs.mjs/system/pooling.js +1 -1
  191. package/dist/melonjs.mjs/system/save.js +1 -1
  192. package/dist/melonjs.mjs/system/timer.js +1 -1
  193. package/dist/melonjs.mjs/text/bitmaptext.js +1 -1
  194. package/dist/melonjs.mjs/text/bitmaptextdata.js +1 -1
  195. package/dist/melonjs.mjs/text/glyph.js +1 -1
  196. package/dist/melonjs.mjs/text/text.js +1 -1
  197. package/dist/melonjs.mjs/text/textmetrics.js +1 -1
  198. package/dist/melonjs.mjs/text/textstyle.js +1 -1
  199. package/dist/melonjs.mjs/tweens/easing.js +1 -1
  200. package/dist/melonjs.mjs/tweens/interpolation.js +1 -1
  201. package/dist/melonjs.mjs/tweens/tween.js +2 -2
  202. package/dist/melonjs.mjs/utils/agent.js +1 -1
  203. package/dist/melonjs.mjs/utils/array.js +1 -1
  204. package/dist/melonjs.mjs/utils/file.js +1 -1
  205. package/dist/melonjs.mjs/utils/function.js +1 -1
  206. package/dist/melonjs.mjs/utils/string.js +1 -1
  207. package/dist/melonjs.mjs/utils/utils.js +4 -29
  208. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +4 -1
  209. package/dist/melonjs.mjs/video/renderer.js +26 -6
  210. package/dist/melonjs.mjs/video/texture/atlas.js +1 -1
  211. package/dist/melonjs.mjs/video/texture/cache.js +1 -1
  212. package/dist/melonjs.mjs/video/texture/canvas_texture.js +21 -1
  213. package/dist/melonjs.mjs/video/utils/autodetect.js +27 -0
  214. package/dist/melonjs.mjs/video/utils/resize.js +116 -0
  215. package/dist/melonjs.mjs/video/video.js +20 -294
  216. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +1 -1
  217. package/dist/melonjs.mjs/video/webgl/glshader.js +2 -3
  218. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
  219. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
  220. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
  221. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
  222. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +1 -1
  223. package/dist/melonjs.mjs/video/webgl/utils/precision.js +20 -2
  224. package/dist/melonjs.mjs/video/webgl/utils/program.js +1 -1
  225. package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
  226. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +1 -1
  227. package/dist/melonjs.mjs/video/webgl/webgl_compositor.js +1 -1
  228. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +4 -1
  229. package/dist/melonjs.module.js +28551 -26959
  230. package/dist/types/application/application.d.ts +144 -0
  231. package/dist/types/application/header.d.ts +5 -0
  232. package/dist/types/application/resize.d.ts +5 -0
  233. package/dist/types/application/settings.d.ts +18 -0
  234. package/dist/types/audio/audio.d.ts +267 -0
  235. package/dist/types/camera/camera2d.d.ts +289 -0
  236. package/dist/types/entity/entity.d.ts +98 -0
  237. package/{src/game.js → dist/types/game.d.ts} +3 -14
  238. package/dist/types/geometries/ellipse.d.ts +154 -0
  239. package/dist/types/geometries/line.d.ts +11 -0
  240. package/dist/types/geometries/path2d.d.ts +121 -0
  241. package/dist/types/geometries/point.d.ts +53 -0
  242. package/dist/types/geometries/poly.d.ts +222 -0
  243. package/dist/types/geometries/rectangle.d.ts +176 -0
  244. package/dist/types/geometries/roundrect.d.ts +52 -0
  245. package/dist/types/index.d.ts +3 -2
  246. package/dist/types/input/gamepad.d.ts +95 -0
  247. package/dist/types/input/input.d.ts +15 -0
  248. package/dist/types/input/keyboard.d.ts +205 -0
  249. package/dist/types/input/pointer.d.ts +270 -0
  250. package/dist/types/input/pointerevent.d.ts +181 -0
  251. package/dist/types/lang/deprecated.d.ts +53 -0
  252. package/dist/types/level/level.d.ts +134 -0
  253. package/dist/types/level/tiled/TMXGroup.d.ts +82 -0
  254. package/dist/types/level/tiled/TMXLayer.d.ts +180 -0
  255. package/dist/types/level/tiled/TMXObject.d.ts +195 -0
  256. package/dist/types/level/tiled/TMXTile.d.ts +78 -0
  257. package/dist/types/level/tiled/TMXTileMap.d.ts +180 -0
  258. package/dist/types/level/tiled/TMXTileset.d.ts +94 -0
  259. package/dist/types/level/tiled/TMXTilesetGroup.d.ts +32 -0
  260. package/dist/types/level/tiled/TMXUtils.d.ts +47 -0
  261. package/dist/types/level/tiled/renderer/TMXHexagonalRenderer.d.ts +87 -0
  262. package/dist/types/level/tiled/renderer/TMXIsometricRenderer.d.ts +55 -0
  263. package/dist/types/level/tiled/renderer/TMXOrthogonalRenderer.d.ts +43 -0
  264. package/dist/types/level/tiled/renderer/TMXRenderer.d.ts +75 -0
  265. package/dist/types/level/tiled/renderer/TMXStaggeredRenderer.d.ts +8 -0
  266. package/dist/types/loader/loader.d.ts +181 -0
  267. package/dist/types/loader/loadingscreen.d.ts +18 -0
  268. package/dist/types/math/color.d.ts +170 -0
  269. package/dist/types/math/math.d.ts +165 -0
  270. package/dist/types/math/matrix2.d.ts +209 -0
  271. package/dist/types/math/matrix3.d.ts +236 -0
  272. package/dist/types/math/observable_vector2.d.ts +278 -0
  273. package/dist/types/math/observable_vector3.d.ts +277 -0
  274. package/dist/types/math/vector2.d.ts +327 -0
  275. package/dist/types/math/vector3.d.ts +332 -0
  276. package/dist/types/particles/emitter.d.ts +188 -0
  277. package/dist/types/particles/particle.d.ts +32 -0
  278. package/dist/types/particles/settings.d.ts +32 -0
  279. package/dist/types/physics/body.d.ts +330 -0
  280. package/dist/types/physics/bounds.d.ts +250 -0
  281. package/dist/types/physics/collision.d.ts +44 -0
  282. package/dist/types/physics/detector.d.ts +64 -0
  283. package/dist/types/physics/quadtree.d.ts +79 -0
  284. package/dist/types/physics/response.d.ts +37 -0
  285. package/dist/types/physics/sat.d.ts +48 -0
  286. package/dist/types/physics/world.d.ts +83 -0
  287. package/dist/types/plugin/plugin.d.ts +10 -0
  288. package/dist/types/polyfill/console.d.ts +0 -0
  289. package/dist/types/polyfill/index.d.ts +1 -0
  290. package/dist/types/polyfill/performance.d.ts +0 -0
  291. package/dist/types/polyfill/requestAnimationFrame.d.ts +1 -0
  292. package/dist/types/polyfill/roundrect.d.ts +0 -0
  293. package/dist/types/renderable/collectable.d.ts +19 -0
  294. package/dist/types/renderable/colorlayer.d.ts +28 -0
  295. package/dist/types/renderable/container.d.ts +302 -0
  296. package/dist/types/renderable/dragndrop.d.ts +118 -0
  297. package/dist/types/renderable/imagelayer.d.ts +106 -0
  298. package/dist/types/renderable/light2d.d.ts +58 -0
  299. package/dist/types/renderable/nineslicesprite.d.ts +59 -0
  300. package/dist/types/renderable/renderable.d.ts +402 -0
  301. package/dist/types/renderable/sprite.d.ts +268 -0
  302. package/dist/types/renderable/trigger.d.ts +61 -0
  303. package/dist/types/renderable/ui/uibaseelement.d.ts +95 -0
  304. package/dist/types/renderable/ui/uispriteelement.d.ts +127 -0
  305. package/dist/types/renderable/ui/uitextbutton.d.ts +54 -0
  306. package/dist/types/state/stage.d.ts +116 -0
  307. package/dist/types/state/state.d.ts +170 -0
  308. package/dist/types/system/device.d.ts +579 -0
  309. package/dist/types/system/dom.d.ts +1 -0
  310. package/dist/types/system/event.d.ts +473 -0
  311. package/dist/types/system/platform.d.ts +31 -0
  312. package/dist/types/system/pooling.d.ts +101 -0
  313. package/dist/types/system/save.d.ts +25 -0
  314. package/dist/types/system/timer.d.ts +126 -0
  315. package/dist/types/text/bitmaptext.d.ts +151 -0
  316. package/dist/types/text/bitmaptextdata.d.ts +35 -0
  317. package/dist/types/text/glyph.d.ts +28 -0
  318. package/dist/types/text/text.d.ts +173 -0
  319. package/dist/types/text/textmetrics.d.ts +47 -0
  320. package/dist/types/text/textstyle.d.ts +5 -0
  321. package/dist/types/tweens/easing.d.ts +46 -0
  322. package/dist/types/tweens/interpolation.d.ts +18 -0
  323. package/dist/types/tweens/tween.d.ts +195 -0
  324. package/dist/types/utils/agent.d.ts +21 -0
  325. package/dist/types/utils/array.d.ts +39 -0
  326. package/dist/types/utils/file.d.ts +18 -0
  327. package/dist/types/utils/function.d.ts +32 -0
  328. package/dist/types/utils/string.d.ts +50 -0
  329. package/dist/types/utils/utils.d.ts +17 -0
  330. package/dist/types/video/canvas/canvas_renderer.d.ts +380 -0
  331. package/dist/types/video/renderer.d.ts +222 -0
  332. package/dist/types/video/texture/atlas.d.ts +201 -0
  333. package/dist/types/video/texture/cache.d.ts +45 -0
  334. package/dist/types/video/texture/canvas_texture.d.ts +78 -0
  335. package/dist/types/video/utils/autodetect.d.ts +7 -0
  336. package/dist/types/video/utils/resize.d.ts +4 -0
  337. package/dist/types/video/video.d.ts +92 -0
  338. package/dist/types/video/webgl/buffer/vertex.d.ts +56 -0
  339. package/dist/types/video/webgl/glshader.d.ts +93 -0
  340. package/dist/types/video/webgl/utils/attributes.d.ts +4 -0
  341. package/dist/types/video/webgl/utils/precision.d.ts +13 -0
  342. package/dist/types/video/webgl/utils/program.d.ts +5 -0
  343. package/dist/types/video/webgl/utils/string.d.ts +5 -0
  344. package/dist/types/video/webgl/utils/uniforms.d.ts +4 -0
  345. package/dist/types/video/webgl/webgl_compositor.d.ts +174 -0
  346. package/dist/types/video/webgl/webgl_renderer.d.ts +429 -0
  347. package/package.json +14 -14
  348. package/src/application/application.js +171 -20
  349. package/src/application/header.js +25 -0
  350. package/src/application/resize.js +110 -0
  351. package/src/application/settings.js +19 -0
  352. package/src/camera/camera2d.js +1 -1
  353. package/src/index.js +34 -23
  354. package/src/input/pointer.js +1 -1
  355. package/src/input/pointerevent.js +6 -7
  356. package/src/level/level.js +1 -1
  357. package/src/level/tiled/TMXLayer.js +1 -1
  358. package/src/level/tiled/TMXTileMap.js +2 -2
  359. package/src/loader/loadingscreen.js +1 -1
  360. package/src/physics/collision.js +2 -2
  361. package/src/physics/detector.js +172 -145
  362. package/src/physics/world.js +10 -30
  363. package/src/plugin/plugin.js +1 -1
  364. package/src/renderable/container.js +7 -91
  365. package/src/renderable/imagelayer.js +1 -1
  366. package/src/renderable/trigger.js +1 -1
  367. package/src/renderable/ui/uibaseelement.js +1 -1
  368. package/src/state/stage.js +1 -1
  369. package/src/state/state.js +1 -1
  370. package/src/system/device.js +7 -27
  371. package/src/system/dom.js +2 -1
  372. package/src/tweens/tween.js +1 -1
  373. package/src/utils/utils.js +3 -28
  374. package/src/video/canvas/canvas_renderer.js +3 -0
  375. package/src/video/renderer.js +27 -7
  376. package/src/video/texture/canvas_texture.js +20 -0
  377. package/src/video/utils/autodetect.js +18 -0
  378. package/src/video/video.js +17 -291
  379. package/src/video/webgl/glshader.js +3 -4
  380. package/src/video/webgl/utils/precision.js +18 -0
  381. package/src/video/webgl/webgl_renderer.js +3 -0
@@ -0,0 +1,205 @@
1
+ /**
2
+ * enable keyboard event
3
+ * @ignore
4
+ */
5
+ export function initKeyboardEvent(): void;
6
+ /**
7
+ * return the key press status of the specified action
8
+ * @name isKeyPressed
9
+ * @memberof input
10
+ * @public
11
+ * @param {string} action - user defined corresponding action
12
+ * @returns {boolean} true if pressed
13
+ * @example
14
+ * if (me.input.isKeyPressed('left')) {
15
+ * //do something
16
+ * }
17
+ * else if (me.input.isKeyPressed('right')) {
18
+ * //do something else...
19
+ * }
20
+ */
21
+ export function isKeyPressed(action: string): boolean;
22
+ /**
23
+ * return the key status of the specified action
24
+ * @name keyStatus
25
+ * @memberof input
26
+ * @public
27
+ * @param {string} action - user defined corresponding action
28
+ * @returns {boolean} down (true) or up(false)
29
+ */
30
+ export function keyStatus(action: string): boolean;
31
+ /**
32
+ * trigger the specified key (simulated) event <br>
33
+ * @name triggerKeyEvent
34
+ * @memberof input
35
+ * @public
36
+ * @param {number} keycode - (See {@link input.KEY})
37
+ * @param {boolean} [status=false] - true to trigger a key down event, or false for key up event
38
+ * @param {number} [mouseButton] - the mouse button to trigger
39
+ * @example
40
+ * // trigger a key press
41
+ * me.input.triggerKeyEvent(me.input.KEY.LEFT, true);
42
+ */
43
+ export function triggerKeyEvent(keycode: number, status?: boolean | undefined, mouseButton?: number | undefined): void;
44
+ /**
45
+ * associate a user defined action to a keycode
46
+ * @name bindKey
47
+ * @memberof input
48
+ * @public
49
+ * @param {number} keycode - (See {@link input.KEY})
50
+ * @param {string} action - user defined corresponding action
51
+ * @param {boolean} [lock=false] - cancel the keypress event once read
52
+ * @param {boolean} [preventDefault=input.preventDefault] - prevent default browser action
53
+ * @example
54
+ * // enable the keyboard
55
+ * me.input.bindKey(me.input.KEY.LEFT, "left");
56
+ * me.input.bindKey(me.input.KEY.RIGHT, "right");
57
+ * me.input.bindKey(me.input.KEY.X, "jump", true);
58
+ * me.input.bindKey(me.input.KEY.F1, "options", true, true);
59
+ */
60
+ export function bindKey(keycode: number, action: string, lock?: boolean | undefined, preventDefault?: boolean | undefined): void;
61
+ /**
62
+ * return the action associated with the given keycode
63
+ * @name getBindingKey
64
+ * @memberof input
65
+ * @public
66
+ * @param {number} keycode - (See {@link input.KEY})
67
+ * @returns {string} user defined associated action
68
+ */
69
+ export function getBindingKey(keycode: number): string;
70
+ /**
71
+ * unlock a key manually
72
+ * @name unlockKey
73
+ * @memberof input
74
+ * @public
75
+ * @param {string} action - user defined corresponding action
76
+ * @example
77
+ * // Unlock jump when touching the ground
78
+ * if (!this.falling && !this.jumping) {
79
+ * me.input.unlockKey("jump");
80
+ * }
81
+ */
82
+ export function unlockKey(action: string): void;
83
+ /**
84
+ * unbind the defined keycode
85
+ * @name unbindKey
86
+ * @memberof input
87
+ * @public
88
+ * @param {number} keycode - (See {@link input.KEY})
89
+ * @example
90
+ * me.input.unbindKey(me.input.KEY.LEFT);
91
+ */
92
+ export function unbindKey(keycode: number): void;
93
+ /**
94
+ * the default target element for keyboard events (usually the window element in which the game is running)
95
+ * @public
96
+ * @type {EventTarget}
97
+ * @name keyBoardEventTarget
98
+ * @memberof input
99
+ */
100
+ export const keyBoardEventTarget: EventTarget;
101
+ /**
102
+ * *
103
+ */
104
+ export type KEY = number;
105
+ export namespace KEY {
106
+ const BACKSPACE: number;
107
+ const TAB: number;
108
+ const ENTER: number;
109
+ const SHIFT: number;
110
+ const CTRL: number;
111
+ const ALT: number;
112
+ const PAUSE: number;
113
+ const CAPS_LOCK: number;
114
+ const ESC: number;
115
+ const SPACE: number;
116
+ const PAGE_UP: number;
117
+ const PAGE_DOWN: number;
118
+ const END: number;
119
+ const HOME: number;
120
+ const LEFT: number;
121
+ const UP: number;
122
+ const RIGHT: number;
123
+ const DOWN: number;
124
+ const PRINT_SCREEN: number;
125
+ const INSERT: number;
126
+ const DELETE: number;
127
+ const NUM0: number;
128
+ const NUM1: number;
129
+ const NUM2: number;
130
+ const NUM3: number;
131
+ const NUM4: number;
132
+ const NUM5: number;
133
+ const NUM6: number;
134
+ const NUM7: number;
135
+ const NUM8: number;
136
+ const NUM9: number;
137
+ const A: number;
138
+ const B: number;
139
+ const C: number;
140
+ const D: number;
141
+ const E: number;
142
+ const F: number;
143
+ const G: number;
144
+ const H: number;
145
+ const I: number;
146
+ const J: number;
147
+ const K: number;
148
+ const L: number;
149
+ const M: number;
150
+ const N: number;
151
+ const O: number;
152
+ const P: number;
153
+ const Q: number;
154
+ const R: number;
155
+ const S: number;
156
+ const T: number;
157
+ const U: number;
158
+ const V: number;
159
+ const W: number;
160
+ const X: number;
161
+ const Y: number;
162
+ const Z: number;
163
+ const WINDOW_KEY: number;
164
+ const NUMPAD0: number;
165
+ const NUMPAD1: number;
166
+ const NUMPAD2: number;
167
+ const NUMPAD3: number;
168
+ const NUMPAD4: number;
169
+ const NUMPAD5: number;
170
+ const NUMPAD6: number;
171
+ const NUMPAD7: number;
172
+ const NUMPAD8: number;
173
+ const NUMPAD9: number;
174
+ const MULTIPLY: number;
175
+ const ADD: number;
176
+ const SUBSTRACT: number;
177
+ const DECIMAL: number;
178
+ const DIVIDE: number;
179
+ const F1: number;
180
+ const F2: number;
181
+ const F3: number;
182
+ const F4: number;
183
+ const F5: number;
184
+ const F6: number;
185
+ const F7: number;
186
+ const F8: number;
187
+ const F9: number;
188
+ const F10: number;
189
+ const F11: number;
190
+ const F12: number;
191
+ const TILDE: number;
192
+ const NUM_LOCK: number;
193
+ const SCROLL_LOCK: number;
194
+ const SEMICOLON: number;
195
+ const PLUS: number;
196
+ const COMMA: number;
197
+ const MINUS: number;
198
+ const PERIOD: number;
199
+ const FORWAND_SLASH: number;
200
+ const GRAVE_ACCENT: number;
201
+ const OPEN_BRACKET: number;
202
+ const BACK_SLASH: number;
203
+ const CLOSE_BRACKET: number;
204
+ const SINGLE_QUOTE: number;
205
+ }
@@ -0,0 +1,270 @@
1
+ export default Pointer;
2
+ /**
3
+ * @classdesc
4
+ * a pointer object, representing a single finger on a touch enabled device.
5
+ * @class Pointer
6
+ * @augments Bounds
7
+ */
8
+ declare class Pointer extends Bounds {
9
+ /**
10
+ * @ignore
11
+ */
12
+ constructor(x?: number, y?: number, w?: number, h?: number);
13
+ /**
14
+ * constant for left button
15
+ * @public
16
+ * @type {number}
17
+ * @name LEFT
18
+ * @memberof Pointer
19
+ */
20
+ public LEFT: number;
21
+ /**
22
+ * constant for middle button
23
+ * @public
24
+ * @type {number}
25
+ * @name MIDDLE
26
+ * @memberof Pointer
27
+ */
28
+ public MIDDLE: number;
29
+ /**
30
+ * constant for right button
31
+ * @public
32
+ * @type {number}
33
+ * @name RIGHT
34
+ * @memberof Pointer
35
+ */
36
+ public RIGHT: number;
37
+ /**
38
+ * the originating Event Object
39
+ * @public
40
+ * @type {PointerEvent|TouchEvent|MouseEvent}
41
+ * @name event
42
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent
43
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent
44
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent
45
+ * @memberof Pointer
46
+ */
47
+ public event: PointerEvent | TouchEvent | MouseEvent;
48
+ /**
49
+ * a string containing the event's type.
50
+ * @public
51
+ * @type {string}
52
+ * @name type
53
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Event/type
54
+ * @memberof Pointer
55
+ */
56
+ public type: string;
57
+ /**
58
+ * the button property indicates which button was pressed on the mouse to trigger the event.
59
+ * @public
60
+ * @type {number}
61
+ * @name button
62
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button
63
+ * @memberof Pointer
64
+ */
65
+ public button: number;
66
+ /**
67
+ * indicates whether or not the pointer device that created the event is the primary pointer.
68
+ * @public
69
+ * @type {boolean}
70
+ * @name isPrimary
71
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/isPrimary
72
+ * @memberof Pointer
73
+ */
74
+ public isPrimary: boolean;
75
+ /**
76
+ * the horizontal coordinate at which the event occurred, relative to the left edge of the entire document.
77
+ * @public
78
+ * @type {number}
79
+ * @name pageX
80
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/pageX
81
+ * @memberof Pointer
82
+ */
83
+ public pageX: number;
84
+ /**
85
+ * the vertical coordinate at which the event occurred, relative to the left edge of the entire document.
86
+ * @public
87
+ * @type {number}
88
+ * @name pageY
89
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/pageY
90
+ * @memberof Pointer
91
+ */
92
+ public pageY: number;
93
+ /**
94
+ * the horizontal coordinate within the application's client area at which the event occurred
95
+ * @public
96
+ * @type {number}
97
+ * @name clientX
98
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/clientX
99
+ * @memberof Pointer
100
+ */
101
+ public clientX: number;
102
+ /**
103
+ * the vertical coordinate within the application's client area at which the event occurred
104
+ * @public
105
+ * @type {number}
106
+ * @name clientY
107
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/clientY
108
+ * @memberof Pointer
109
+ */
110
+ public clientY: number;
111
+ /**
112
+ * the difference in the X coordinate of the pointer since the previous move event
113
+ * @public
114
+ * @type {number}
115
+ * @name movementX
116
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/movementX
117
+ * @memberof Pointer
118
+ */
119
+ public movementX: number;
120
+ /**
121
+ * the difference in the Y coordinate of the pointer since the previous move event
122
+ * @public
123
+ * @type {number}
124
+ * @name movementY
125
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/movementY
126
+ * @memberof Pointer
127
+ */
128
+ public movementY: number;
129
+ /**
130
+ * an unsigned long representing the unit of the delta values scroll amount
131
+ * @public
132
+ * @type {number}
133
+ * @name deltaMode
134
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaMode
135
+ * @memberof Pointer
136
+ */
137
+ public deltaMode: number;
138
+ /**
139
+ * a double representing the horizontal scroll amount in the Wheel Event deltaMode unit.
140
+ * @public
141
+ * @type {number}
142
+ * @name deltaX
143
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaX
144
+ * @memberof Pointer
145
+ */
146
+ public deltaX: number;
147
+ /**
148
+ * a double representing the vertical scroll amount in the Wheel Event deltaMode unit.
149
+ * @public
150
+ * @type {number}
151
+ * @name deltaY
152
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaY
153
+ * @memberof Pointer
154
+ */
155
+ public deltaY: number;
156
+ /**
157
+ * a double representing the scroll amount in the z-axis, in the Wheel Event deltaMode unit.
158
+ * @public
159
+ * @type {number}
160
+ * @name deltaZ
161
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaZ
162
+ * @memberof Pointer
163
+ */
164
+ public deltaZ: number;
165
+ /**
166
+ * Event normalized X coordinate within the game canvas itself<br>
167
+ * <img src="images/event_coord.png"/>
168
+ * @public
169
+ * @type {number}
170
+ * @name gameX
171
+ * @memberof Pointer
172
+ */
173
+ public gameX: number;
174
+ /**
175
+ * Event normalized Y coordinate within the game canvas itself<br>
176
+ * <img src="images/event_coord.png"/>
177
+ * @public
178
+ * @type {number}
179
+ * @name gameY
180
+ * @memberof Pointer
181
+ */
182
+ public gameY: number;
183
+ /**
184
+ * Event X coordinate relative to the viewport
185
+ * @public
186
+ * @type {number}
187
+ * @name gameScreenX
188
+ * @memberof Pointer
189
+ */
190
+ public gameScreenX: number;
191
+ /**
192
+ * Event Y coordinate relative to the viewport
193
+ * @public
194
+ * @type {number}
195
+ * @name gameScreenY
196
+ * @memberof Pointer
197
+ */
198
+ public gameScreenY: number;
199
+ /**
200
+ * Event X coordinate relative to the map
201
+ * @public
202
+ * @type {number}
203
+ * @name gameWorldX
204
+ * @memberof Pointer
205
+ */
206
+ public gameWorldX: number;
207
+ /**
208
+ * Event Y coordinate relative to the map
209
+ * @public
210
+ * @type {number}
211
+ * @name gameWorldY
212
+ * @memberof Pointer
213
+ */
214
+ public gameWorldY: number;
215
+ /**
216
+ * Event X coordinate relative to the holding container
217
+ * @public
218
+ * @type {number}
219
+ * @name gameLocalX
220
+ * @memberof Pointer
221
+ */
222
+ public gameLocalX: number;
223
+ /**
224
+ * Event Y coordinate relative to the holding container
225
+ * @public
226
+ * @type {number}
227
+ * @name gameLocalY
228
+ * @memberof Pointer
229
+ */
230
+ public gameLocalY: number;
231
+ /**
232
+ * The unique identifier of the contact for a touch, mouse or pen
233
+ * @public
234
+ * @type {number}
235
+ * @name pointerId
236
+ * @memberof Pointer
237
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/pointerId
238
+ */
239
+ public pointerId: number;
240
+ /**
241
+ * true if not originally a pointer event
242
+ * @public
243
+ * @type {boolean}
244
+ * @name isNormalized
245
+ * @memberof Pointer
246
+ */
247
+ public isNormalized: boolean;
248
+ /**
249
+ * true if the pointer is currently locked
250
+ * @public
251
+ * @type {boolean}
252
+ * @name locked
253
+ * @memberof Pointer
254
+ */
255
+ public locked: boolean;
256
+ bind: number[];
257
+ /**
258
+ * initialize the Pointer object using the given Event Object
259
+ * @name Pointer#set
260
+ * @private
261
+ * @param {Event} event - the original Event object
262
+ * @param {number} [pageX=0] - the horizontal coordinate at which the event occurred, relative to the left edge of the entire document
263
+ * @param {number} [pageY=0] - the vertical coordinate at which the event occurred, relative to the left edge of the entire document
264
+ * @param {number} [clientX=0] - the horizontal coordinate within the application's client area at which the event occurred
265
+ * @param {number} [clientY=0] - the vertical coordinate within the application's client area at which the event occurred
266
+ * @param {number} [pointerId=1] - the Pointer, Touch or Mouse event Id (1)
267
+ */
268
+ private setEvent;
269
+ }
270
+ import Bounds from "./../physics/bounds.js";
@@ -0,0 +1,181 @@
1
+ /**
2
+ * Translate the specified x and y values from the global (absolute)
3
+ * coordinate to local (viewport) relative coordinate.
4
+ * @name globalToLocal
5
+ * @memberof input
6
+ * @public
7
+ * @param {number} x - the global x coordinate to be translated.
8
+ * @param {number} y - the global y coordinate to be translated.
9
+ * @param {Vector2d} [v] - an optional vector object where to set the translated coordinates
10
+ * @returns {Vector2d} A vector object with the corresponding translated coordinates
11
+ * @example
12
+ * onMouseEvent : function (pointer) {
13
+ * // convert the given into local (viewport) relative coordinates
14
+ * var pos = me.input.globalToLocal(pointer.clientX, pointer.clientY);
15
+ * // do something with pos !
16
+ * };
17
+ */
18
+ export function globalToLocal(x: number, y: number, v?: any): Vector2d;
19
+ /**
20
+ * enable/disable all gestures on the given element.<br>
21
+ * by default melonJS will disable browser handling of all panning and zooming gestures.
22
+ * @name setTouchAction
23
+ * @memberof input
24
+ * @see https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action
25
+ * @public
26
+ * @param {HTMLCanvasElement} element
27
+ * @param {string} [value="none"]
28
+ */
29
+ export function setTouchAction(element: HTMLCanvasElement, value?: string | undefined): void;
30
+ /**
31
+ * Associate a pointer event to a keycode<br>
32
+ * Left button – 0
33
+ * Middle button – 1
34
+ * Right button – 2
35
+ * @name bindPointer
36
+ * @memberof input
37
+ * @public
38
+ * @param {number} [button=input.pointer.LEFT] - (accordingly to W3C values : 0,1,2 for left, middle and right buttons)
39
+ * @param {input.KEY} keyCode
40
+ * @example
41
+ * // enable the keyboard
42
+ * me.input.bindKey(me.input.KEY.X, "shoot");
43
+ * // map the left button click on the X key (default if the button is not specified)
44
+ * me.input.bindPointer(me.input.KEY.X);
45
+ * // map the right button click on the X key
46
+ * me.input.bindPointer(me.input.pointer.RIGHT, me.input.KEY.X);
47
+ */
48
+ export function bindPointer(...args: any[]): void;
49
+ /**
50
+ * unbind the defined keycode
51
+ * @name unbindPointer
52
+ * @memberof input
53
+ * @public
54
+ * @param {number} [button=input.pointer.LEFT] - (accordingly to W3C values : 0,1,2 for left, middle and right buttons)
55
+ * @example
56
+ * me.input.unbindPointer(me.input.pointer.LEFT);
57
+ */
58
+ export function unbindPointer(button?: number | undefined): void;
59
+ /**
60
+ * allows registration of event listeners on the object target. <br>
61
+ * melonJS will pass a me.Pointer object to the defined callback.
62
+ * @see Pointer
63
+ * @see {@link http://www.w3.org/TR/pointerevents/#list-of-pointer-events|W3C Pointer Event list}
64
+ * @name registerPointerEvent
65
+ * @memberof input
66
+ * @public
67
+ * @param {string} eventType - The event type for which the object is registering <br>
68
+ * melonJS currently supports: <br>
69
+ * <ul>
70
+ * <li><code>"pointermove"</code></li>
71
+ * <li><code>"pointerdown"</code></li>
72
+ * <li><code>"pointerup"</code></li>
73
+ * <li><code>"pointerenter"</code></li>
74
+ * <li><code>"pointerover"</code></li>
75
+ * <li><code>"pointerleave"</code></li>
76
+ * <li><code>"pointercancel"</code></li>
77
+ * <li><code>"wheel"</code></li>
78
+ * </ul>
79
+ * @param {Rect|Polygon|Line|Ellipse} region - a shape representing the region to register on
80
+ * @param {Function} callback - methods to be called when the event occurs.
81
+ * Returning `false` from the defined callback will prevent the event to be propagated to other objects
82
+ * @example
83
+ * // onActivate function
84
+ * onActivateEvent: function () {
85
+ * // register on the 'pointerdown' event
86
+ * me.input.registerPointerEvent('pointerdown', this, this.pointerDown.bind(this));
87
+ * },
88
+ *
89
+ * // pointerDown event callback
90
+ * pointerDown: function (pointer) {
91
+ * // do something
92
+ * ....
93
+ * // don"t propagate the event to other objects
94
+ * return false;
95
+ * },
96
+ */
97
+ export function registerPointerEvent(eventType: string, region: Rect | Polygon | Line | Ellipse, callback: Function): void;
98
+ /**
99
+ * allows the removal of event listeners from the object target.
100
+ * @see {@link http://www.w3.org/TR/pointerevents/#list-of-pointer-events|W3C Pointer Event list}
101
+ * @name releasePointerEvent
102
+ * @memberof input
103
+ * @public
104
+ * @param {string} eventType - The event type for which the object was registered. See {@link input.registerPointerEvent}
105
+ * @param {Rect|Polygon|Line|Ellipse} region - the registered region to release for this event
106
+ * @param {Function} [callback="all"] - if specified unregister the event only for the specific callback
107
+ * @example
108
+ * // release the registered region on the 'pointerdown' event
109
+ * me.input.releasePointerEvent('pointerdown', this);
110
+ */
111
+ export function releasePointerEvent(eventType: string, region: Rect | Polygon | Line | Ellipse, callback?: Function | undefined): void;
112
+ /**
113
+ * allows the removal of all registered event listeners from the object target.
114
+ * @name releaseAllPointerEvents
115
+ * @memberof input
116
+ * @public
117
+ * @param {Rect|Polygon|Line|Ellipse} region - the registered region to release event from
118
+ * @example
119
+ * // release all registered event on the
120
+ * me.input.releaseAllPointerEvents(this);
121
+ */
122
+ export function releaseAllPointerEvents(region: Rect | Polygon | Line | Ellipse): void;
123
+ /**
124
+ * request for the pointer to be locked on the parent DOM element.
125
+ * (Must be called in a click event or an event that requires user interaction)
126
+ * @name requestPointerLock
127
+ * @memberof input
128
+ * @public
129
+ * @returns {boolean} return true if the request was successfully submitted
130
+ * @example
131
+ * // register on the pointer lock change event
132
+ * event.on(event.POINTERLOCKCHANGE, (locked)=> {
133
+ * console.log("pointer lock: " + locked);
134
+ * });
135
+ * // request for pointer lock
136
+ * me.input.requestPointerLock();
137
+ */
138
+ export function requestPointerLock(): boolean;
139
+ /**
140
+ * Initiates an exit from pointer lock state
141
+ * @name exitPointerLock
142
+ * @memberof input
143
+ * @public
144
+ * @returns {boolean} return true if the request was successfully submitted
145
+ */
146
+ export function exitPointerLock(): boolean;
147
+ /**
148
+ * the default target element for pointer events (usually the canvas element in which the game is rendered)
149
+ * @public
150
+ * @type {EventTarget}
151
+ * @name pointerEventTarget
152
+ * @memberof input
153
+ */
154
+ export const pointerEventTarget: EventTarget;
155
+ /**
156
+ * Pointer information (current position and size)
157
+ * @public
158
+ * @type {Rect}
159
+ * @name pointer
160
+ * @memberof input
161
+ */
162
+ export const pointer: Rect;
163
+ /**
164
+ * indicates if the pointer is currently locked
165
+ * @public
166
+ * @type {boolean}
167
+ * @name locked
168
+ * @memberof input
169
+ */
170
+ export const locked: boolean;
171
+ /**
172
+ * time interval for event throttling in milliseconds<br>
173
+ * default value : "1000/me.timer.maxfps" ms<br>
174
+ * set to 0 ms to disable the feature
175
+ * @public
176
+ * @type {number}
177
+ * @name throttlingInterval
178
+ * @memberof input
179
+ */
180
+ export const throttlingInterval: number;
181
+ import Rect from "./../geometries/rectangle.js";
@@ -0,0 +1,53 @@
1
+ /**
2
+ * display a deprecation warning in the console
3
+ * @ignore
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: string, replacement: string, version: string): void;
9
+ /**
10
+ * @classdesc
11
+ * Used to make a game entity draggable
12
+ * @augments Entity
13
+ * @deprecated since 10.5.0
14
+ * @see Draggable
15
+ */
16
+ export class DraggableEntity {
17
+ /**
18
+ * @param {number} x - the x coordinates of the draggable object
19
+ * @param {number} y - the y coordinates of the draggable object
20
+ * @param {object} settings - Entity properties (see {@link Entity})
21
+ */
22
+ constructor(x: number, y: number, settings: object);
23
+ }
24
+ /**
25
+ * @classdesc
26
+ * Used to make a game entity a droptarget
27
+ * @augments Entity
28
+ * @deprecated since 10.5.0
29
+ * @see DropTarget
30
+ */
31
+ export class DroptargetEntity {
32
+ /**
33
+ * @param {number} x - the x coordinates of the draggable object
34
+ * @param {number} y - the y coordinates of the draggable object
35
+ * @param {object} settings - Entity properties (see {@link Entity})
36
+ */
37
+ constructor(x: number, y: number, settings: object);
38
+ }
39
+ /**
40
+ * @classdesc
41
+ * A very basic object to manage GUI elements
42
+ * @augments Sprite
43
+ * @deprecated since 14.0.0
44
+ * @see UISpriteElement
45
+ */
46
+ export class GUI_Object {
47
+ /**
48
+ * @param {number} x - the x coordinate of the GUI Object
49
+ * @param {number} y - the y coordinate of the GUI Object
50
+ * @param {object} settings - See {@link Sprite}
51
+ */
52
+ constructor(x: number, y: number, settings: object);
53
+ }