melonjs 15.3.0 → 15.4.1

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 (287) 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/application/application.js +53 -5
  6. package/dist/melonjs.mjs/application/header.js +2 -2
  7. package/dist/melonjs.mjs/application/resize.js +4 -8
  8. package/dist/melonjs.mjs/application/settings.js +5 -5
  9. package/dist/melonjs.mjs/audio/audio.js +4 -6
  10. package/dist/melonjs.mjs/camera/camera2d.js +12 -14
  11. package/dist/melonjs.mjs/const.js +1 -1
  12. package/dist/melonjs.mjs/entity/entity.js +3 -4
  13. package/dist/melonjs.mjs/geometries/ellipse.js +26 -59
  14. package/dist/melonjs.mjs/geometries/line.js +18 -25
  15. package/dist/melonjs.mjs/geometries/path2d.js +16 -13
  16. package/dist/melonjs.mjs/geometries/point.js +8 -16
  17. package/dist/melonjs.mjs/geometries/poly.js +40 -97
  18. package/dist/melonjs.mjs/geometries/rectangle.js +37 -91
  19. package/dist/melonjs.mjs/geometries/roundrect.js +26 -35
  20. package/dist/melonjs.mjs/index.js +6 -6
  21. package/dist/melonjs.mjs/input/gamepad.js +1 -1
  22. package/dist/melonjs.mjs/input/input.js +1 -1
  23. package/dist/melonjs.mjs/input/keyboard.js +3 -3
  24. package/dist/melonjs.mjs/input/pointer.js +4 -4
  25. package/dist/melonjs.mjs/input/pointerevent.js +6 -7
  26. package/dist/melonjs.mjs/lang/console.js +1 -1
  27. package/dist/melonjs.mjs/lang/deprecated.js +2 -2
  28. package/dist/melonjs.mjs/level/level.js +1 -1
  29. package/dist/melonjs.mjs/level/tiled/TMXGroup.js +1 -1
  30. package/dist/melonjs.mjs/level/tiled/TMXLayer.js +16 -33
  31. package/dist/melonjs.mjs/level/tiled/TMXObject.js +3 -4
  32. package/dist/melonjs.mjs/level/tiled/TMXTile.js +4 -4
  33. package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +3 -3
  34. package/dist/melonjs.mjs/level/tiled/TMXTileset.js +4 -7
  35. package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +2 -2
  36. package/dist/melonjs.mjs/level/tiled/TMXUtils.js +26 -29
  37. package/dist/melonjs.mjs/level/tiled/constants.js +1 -1
  38. package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +3 -3
  39. package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +2 -2
  40. package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +2 -2
  41. package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +2 -2
  42. package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +2 -2
  43. package/dist/melonjs.mjs/level/tiled/renderer/autodetect.js +1 -1
  44. package/dist/melonjs.mjs/loader/cache.js +1 -1
  45. package/dist/melonjs.mjs/loader/loader.js +1 -1
  46. package/dist/melonjs.mjs/loader/loadingscreen.js +1 -1
  47. package/dist/melonjs.mjs/loader/melonjs_logo.png.js +1 -1
  48. package/dist/melonjs.mjs/loader/parser.js +4 -5
  49. package/dist/melonjs.mjs/loader/settings.js +1 -1
  50. package/dist/melonjs.mjs/math/color.js +2 -2
  51. package/dist/melonjs.mjs/math/math.js +1 -1
  52. package/dist/melonjs.mjs/math/matrix2.js +5 -59
  53. package/dist/melonjs.mjs/math/matrix3.js +82 -141
  54. package/dist/melonjs.mjs/math/observable_vector2.js +7 -7
  55. package/dist/melonjs.mjs/math/observable_vector3.js +5 -5
  56. package/dist/melonjs.mjs/math/vector2.js +7 -91
  57. package/dist/melonjs.mjs/math/vector3.js +6 -90
  58. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/arraymultimap.js +1 -1
  59. package/dist/melonjs.mjs/node_modules/@teppeis/multimaps/dist/esm/multimap.js +1 -1
  60. package/dist/melonjs.mjs/node_modules/earcut/src/earcut.js +1 -1
  61. package/dist/melonjs.mjs/node_modules/eventemitter3/index.js +1 -1
  62. package/dist/melonjs.mjs/node_modules/eventemitter3/index2.js +1 -1
  63. package/dist/melonjs.mjs/node_modules/howler/dist/howler.js +1 -1
  64. package/dist/melonjs.mjs/particles/emitter.js +2 -2
  65. package/dist/melonjs.mjs/particles/particle.js +2 -2
  66. package/dist/melonjs.mjs/particles/settings.js +1 -1
  67. package/dist/melonjs.mjs/physics/body.js +22 -20
  68. package/dist/melonjs.mjs/physics/bounds.js +27 -33
  69. package/dist/melonjs.mjs/physics/collision.js +5 -5
  70. package/dist/melonjs.mjs/physics/detector.js +10 -10
  71. package/dist/melonjs.mjs/physics/quadtree.js +5 -5
  72. package/dist/melonjs.mjs/physics/response.js +1 -1
  73. package/dist/melonjs.mjs/physics/sat.js +3 -4
  74. package/dist/melonjs.mjs/physics/world.js +6 -9
  75. package/dist/melonjs.mjs/plugin/plugin.js +3 -3
  76. package/dist/melonjs.mjs/renderable/collectable.js +2 -2
  77. package/dist/melonjs.mjs/renderable/colorlayer.js +4 -4
  78. package/dist/melonjs.mjs/renderable/container.js +25 -25
  79. package/dist/melonjs.mjs/renderable/draggable.js +1 -1
  80. package/dist/melonjs.mjs/renderable/dragndrop.js +1 -1
  81. package/dist/melonjs.mjs/renderable/imagelayer.js +4 -4
  82. package/dist/melonjs.mjs/renderable/light2d.js +3 -3
  83. package/dist/melonjs.mjs/renderable/nineslicesprite.js +2 -2
  84. package/dist/melonjs.mjs/renderable/renderable.js +26 -26
  85. package/dist/melonjs.mjs/renderable/sprite.js +3 -3
  86. package/dist/melonjs.mjs/renderable/text/bitmaptext.js +421 -0
  87. package/dist/melonjs.mjs/renderable/text/bitmaptextdata.js +195 -0
  88. package/dist/melonjs.mjs/renderable/text/glyph.js +65 -0
  89. package/dist/melonjs.mjs/renderable/text/text.js +422 -0
  90. package/dist/melonjs.mjs/renderable/text/textmetrics.js +175 -0
  91. package/dist/melonjs.mjs/renderable/text/textstyle.js +21 -0
  92. package/dist/melonjs.mjs/renderable/trigger.js +10 -10
  93. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +7 -7
  94. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +7 -7
  95. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +3 -3
  96. package/dist/melonjs.mjs/state/stage.js +2 -2
  97. package/dist/melonjs.mjs/state/state.js +1 -38
  98. package/dist/melonjs.mjs/system/device.js +49 -10
  99. package/dist/melonjs.mjs/system/dom.js +1 -1
  100. package/dist/melonjs.mjs/system/event.js +24 -2
  101. package/dist/melonjs.mjs/system/platform.js +18 -18
  102. package/dist/melonjs.mjs/system/pooling.js +10 -10
  103. package/dist/melonjs.mjs/system/save.js +1 -1
  104. package/dist/melonjs.mjs/system/timer.js +1 -1
  105. package/dist/melonjs.mjs/text/bitmaptext.js +1 -1
  106. package/dist/melonjs.mjs/text/bitmaptextdata.js +3 -6
  107. package/dist/melonjs.mjs/text/glyph.js +1 -1
  108. package/dist/melonjs.mjs/text/text.js +1 -1
  109. package/dist/melonjs.mjs/text/textmetrics.js +1 -1
  110. package/dist/melonjs.mjs/text/textstyle.js +1 -1
  111. package/dist/melonjs.mjs/tweens/easing.js +1 -1
  112. package/dist/melonjs.mjs/tweens/interpolation.js +1 -1
  113. package/dist/melonjs.mjs/tweens/tween.js +2 -2
  114. package/dist/melonjs.mjs/utils/agent.js +1 -1
  115. package/dist/melonjs.mjs/utils/array.js +1 -1
  116. package/dist/melonjs.mjs/utils/file.js +1 -1
  117. package/dist/melonjs.mjs/utils/function.js +2 -3
  118. package/dist/melonjs.mjs/utils/string.js +1 -1
  119. package/dist/melonjs.mjs/utils/utils.js +1 -1
  120. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +3 -7
  121. package/dist/melonjs.mjs/video/renderer.js +16 -16
  122. package/dist/melonjs.mjs/video/texture/atlas.js +13 -13
  123. package/dist/melonjs.mjs/video/texture/cache.js +1 -1
  124. package/dist/melonjs.mjs/video/texture/canvas_texture.js +15 -15
  125. package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
  126. package/dist/melonjs.mjs/video/video.js +4 -4
  127. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +3 -3
  128. package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +13 -14
  129. package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +5 -5
  130. package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +2 -3
  131. package/dist/melonjs.mjs/video/webgl/glshader.js +2 -2
  132. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
  133. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
  134. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
  135. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
  136. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +1 -1
  137. package/dist/melonjs.mjs/video/webgl/utils/precision.js +4 -4
  138. package/dist/melonjs.mjs/video/webgl/utils/program.js +1 -1
  139. package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
  140. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +1 -1
  141. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +50 -52
  142. package/dist/melonjs.module.js +1137 -1576
  143. package/dist/types/application/application.d.ts +28 -4
  144. package/dist/types/application/header.d.ts +2 -2
  145. package/dist/types/application/settings.d.ts +23 -23
  146. package/dist/types/audio/audio.d.ts +3 -5
  147. package/dist/types/camera/camera2d.d.ts +13 -16
  148. package/dist/types/entity/entity.d.ts +0 -1
  149. package/dist/types/geometries/ellipse.d.ts +18 -50
  150. package/dist/types/geometries/path2d.d.ts +1 -1
  151. package/dist/types/geometries/point.d.ts +5 -13
  152. package/dist/types/geometries/poly.d.ts +26 -75
  153. package/dist/types/geometries/rectangle.d.ts +12 -58
  154. package/dist/types/geometries/roundrect.d.ts +2 -11
  155. package/dist/types/index.d.ts +3 -3
  156. package/dist/types/input/gamepad.d.ts +31 -31
  157. package/dist/types/input/keyboard.d.ts +105 -105
  158. package/dist/types/input/pointer.d.ts +21 -21
  159. package/dist/types/input/pointerevent.d.ts +6 -6
  160. package/dist/types/level/tiled/TMXLayer.d.ts +1 -1
  161. package/dist/types/math/matrix2.d.ts +9 -63
  162. package/dist/types/math/matrix3.d.ts +9 -68
  163. package/dist/types/math/observable_vector2.d.ts +2 -2
  164. package/dist/types/math/observable_vector3.d.ts +2 -2
  165. package/dist/types/math/vector2.d.ts +8 -92
  166. package/dist/types/math/vector3.d.ts +8 -92
  167. package/dist/types/particles/settings.d.ts +29 -29
  168. package/dist/types/physics/body.d.ts +10 -8
  169. package/dist/types/physics/bounds.d.ts +24 -30
  170. package/dist/types/physics/collision.d.ts +12 -12
  171. package/dist/types/physics/detector.d.ts +1 -1
  172. package/dist/types/physics/world.d.ts +4 -7
  173. package/dist/types/renderable/container.d.ts +19 -19
  174. package/dist/types/renderable/imagelayer.d.ts +6 -6
  175. package/dist/types/renderable/light2d.d.ts +7 -7
  176. package/dist/types/renderable/renderable.d.ts +9 -16
  177. package/dist/types/renderable/text/bitmaptext.d.ts +151 -0
  178. package/dist/types/renderable/text/bitmaptextdata.d.ts +35 -0
  179. package/dist/types/renderable/text/glyph.d.ts +28 -0
  180. package/dist/types/renderable/text/text.d.ts +159 -0
  181. package/dist/types/renderable/text/textmetrics.d.ts +47 -0
  182. package/dist/types/renderable/text/textstyle.d.ts +5 -0
  183. package/dist/types/renderable/ui/uibaseelement.d.ts +0 -1
  184. package/dist/types/renderable/ui/uispriteelement.d.ts +0 -1
  185. package/dist/types/renderable/ui/uitextbutton.d.ts +2 -7
  186. package/dist/types/state/state.d.ts +11 -11
  187. package/dist/types/system/device.d.ts +15 -9
  188. package/dist/types/system/event.d.ts +20 -0
  189. package/dist/types/system/platform.d.ts +17 -17
  190. package/dist/types/utils/function.d.ts +1 -2
  191. package/dist/types/video/renderer.d.ts +13 -13
  192. package/dist/types/video/texture/canvas_texture.d.ts +14 -14
  193. package/dist/types/video/video.d.ts +2 -2
  194. package/dist/types/video/webgl/buffer/vertex.d.ts +2 -2
  195. package/dist/types/video/webgl/compositors/compositor.d.ts +24 -13
  196. package/dist/types/video/webgl/compositors/primitive_compositor.d.ts +0 -1
  197. package/dist/types/video/webgl/compositors/quad_compositor.d.ts +0 -1
  198. package/dist/types/video/webgl/utils/precision.d.ts +1 -1
  199. package/dist/types/video/webgl/webgl_renderer.d.ts +47 -50
  200. package/package.json +15 -15
  201. package/src/application/application.js +51 -3
  202. package/src/application/header.js +1 -1
  203. package/src/application/resize.js +3 -7
  204. package/src/application/settings.js +4 -4
  205. package/src/audio/audio.js +3 -5
  206. package/src/camera/camera2d.js +11 -13
  207. package/src/entity/entity.js +2 -3
  208. package/src/geometries/ellipse.js +25 -58
  209. package/src/geometries/line.js +17 -24
  210. package/src/geometries/path2d.js +15 -12
  211. package/src/geometries/point.js +7 -15
  212. package/src/geometries/poly.js +39 -96
  213. package/src/geometries/rectangle.js +36 -90
  214. package/src/geometries/roundrect.js +25 -34
  215. package/src/index.js +4 -4
  216. package/src/input/keyboard.js +2 -2
  217. package/src/input/pointer.js +3 -3
  218. package/src/input/pointerevent.js +5 -6
  219. package/src/lang/deprecated.js +1 -1
  220. package/src/level/tiled/TMXLayer.js +15 -32
  221. package/src/level/tiled/TMXObject.js +2 -3
  222. package/src/level/tiled/TMXTile.js +3 -3
  223. package/src/level/tiled/TMXTileMap.js +2 -2
  224. package/src/level/tiled/TMXTileset.js +3 -6
  225. package/src/level/tiled/TMXTilesetGroup.js +1 -1
  226. package/src/level/tiled/TMXUtils.js +25 -28
  227. package/src/level/tiled/renderer/TMXHexagonalRenderer.js +2 -2
  228. package/src/level/tiled/renderer/TMXIsometricRenderer.js +1 -1
  229. package/src/level/tiled/renderer/TMXOrthogonalRenderer.js +1 -1
  230. package/src/level/tiled/renderer/TMXRenderer.js +1 -1
  231. package/src/level/tiled/renderer/TMXStaggeredRenderer.js +1 -1
  232. package/src/loader/parser.js +3 -4
  233. package/src/math/color.js +1 -1
  234. package/src/math/matrix2.js +4 -58
  235. package/src/math/matrix3.js +81 -140
  236. package/src/math/observable_vector2.js +6 -6
  237. package/src/math/observable_vector3.js +4 -4
  238. package/src/math/vector2.js +6 -90
  239. package/src/math/vector3.js +5 -89
  240. package/src/particles/emitter.js +1 -1
  241. package/src/particles/particle.js +1 -1
  242. package/src/physics/body.js +21 -19
  243. package/src/physics/bounds.js +26 -32
  244. package/src/physics/collision.js +4 -4
  245. package/src/physics/detector.js +9 -9
  246. package/src/physics/quadtree.js +4 -4
  247. package/src/physics/sat.js +2 -3
  248. package/src/physics/world.js +5 -8
  249. package/src/polyfill/roundrect.js +163 -163
  250. package/src/renderable/collectable.js +1 -1
  251. package/src/renderable/colorlayer.js +3 -3
  252. package/src/renderable/container.js +24 -24
  253. package/src/renderable/imagelayer.js +3 -3
  254. package/src/renderable/light2d.js +2 -2
  255. package/src/renderable/nineslicesprite.js +1 -1
  256. package/src/renderable/renderable.js +25 -25
  257. package/src/renderable/sprite.js +2 -2
  258. package/src/{text → renderable/text}/bitmaptext.js +8 -8
  259. package/src/{text → renderable/text}/bitmaptextdata.js +4 -7
  260. package/src/{text → renderable/text}/glyph.js +1 -1
  261. package/src/{text → renderable/text}/text.js +16 -17
  262. package/src/{text → renderable/text}/textmetrics.js +2 -2
  263. package/src/renderable/trigger.js +9 -9
  264. package/src/renderable/ui/uibaseelement.js +6 -6
  265. package/src/renderable/ui/uispriteelement.js +6 -6
  266. package/src/renderable/ui/uitextbutton.js +2 -2
  267. package/src/state/stage.js +1 -1
  268. package/src/state/state.js +0 -49
  269. package/src/system/device.js +48 -9
  270. package/src/system/event.js +22 -0
  271. package/src/system/platform.js +18 -18
  272. package/src/system/pooling.js +9 -9
  273. package/src/tweens/tween.js +1 -1
  274. package/src/utils/function.js +1 -2
  275. package/src/video/canvas/canvas_renderer.js +2 -6
  276. package/src/video/renderer.js +15 -15
  277. package/src/video/texture/atlas.js +12 -12
  278. package/src/video/texture/canvas_texture.js +14 -14
  279. package/src/video/video.js +3 -3
  280. package/src/video/webgl/buffer/vertex.js +2 -2
  281. package/src/video/webgl/compositors/compositor.js +12 -13
  282. package/src/video/webgl/compositors/primitive_compositor.js +4 -4
  283. package/src/video/webgl/compositors/quad_compositor.js +1 -2
  284. package/src/video/webgl/glshader.js +1 -1
  285. package/src/video/webgl/utils/precision.js +3 -3
  286. package/src/video/webgl/webgl_renderer.js +49 -51
  287. /package/src/{text → renderable/text}/textstyle.js +0 -0
@@ -7,7 +7,7 @@ import {clamp} from "./math.js";
7
7
  * A Vector2d object that provide notification by executing the given callback when the vector is changed.
8
8
  * @augments Vector2d
9
9
  */
10
- export default class ObservableVector2d extends Vector2d {
10
+ export default class ObservableVector2d extends Vector2d {
11
11
  /**
12
12
  * @param {number} x - x value of the vector
13
13
  * @param {number} y - y value of the vector
@@ -87,10 +87,10 @@ import {clamp} from "./math.js";
87
87
  this._x = ret.x;
88
88
  this._y = ret.y;
89
89
  } else {
90
- this._x = x;
91
- this._y = y;
92
- }
93
- return this;
90
+ this._x = x;
91
+ this._y = y;
92
+ }
93
+ return this;
94
94
  }
95
95
 
96
96
  /**
@@ -402,7 +402,7 @@ import {clamp} from "./math.js";
402
402
  * @param {number} step - the maximum step per iteration (Negative values will push the vector away from the target)
403
403
  * @returns {ObservableVector2d} Reference to this object for method chaining
404
404
  */
405
- moveTowards(target, step) {
405
+ moveTowards(target, step) {
406
406
  let angle = Math.atan2(target.y - this._y, target.x - this._x);
407
407
 
408
408
  let distance = this.distance(target);
@@ -7,7 +7,7 @@ import pool from "./../system/pooling.js";
7
7
  * A Vector3d object that provide notification by executing the given callback when the vector is changed.
8
8
  * @augments Vector3d
9
9
  */
10
- export default class ObservableVector3d extends Vector3d {
10
+ export default class ObservableVector3d extends Vector3d {
11
11
  /**
12
12
  * @param {number} x - x value of the vector
13
13
  * @param {number} y - y value of the vector
@@ -113,9 +113,9 @@ import pool from "./../system/pooling.js";
113
113
  this._y = ret.y;
114
114
  this._z = ret.z;
115
115
  } else {
116
- this._x = x;
117
- this._y = y;
118
- this._z = z || 0;
116
+ this._x = x;
117
+ this._y = y;
118
+ this._z = z || 0;
119
119
  }
120
120
  return this;
121
121
  }
@@ -5,7 +5,7 @@ import pool from "./../system/pooling.js";
5
5
  * @classdesc
6
6
  * a generic 2D Vector Object
7
7
  */
8
- export default class Vector2d {
8
+ export default class Vector2d {
9
9
  /**
10
10
  * @param {number} [x=0] - x value of the vector
11
11
  * @param {number} [y=0] - y value of the vector
@@ -35,8 +35,6 @@ import pool from "./../system/pooling.js";
35
35
 
36
36
  /**
37
37
  * set the Vector x and y properties to the given values<br>
38
- * @name set
39
- * @memberof Vector2d
40
38
  * @param {number} x
41
39
  * @param {number} y
42
40
  * @returns {Vector2d} Reference to this object for method chaining
@@ -71,8 +69,6 @@ import pool from "./../system/pooling.js";
71
69
 
72
70
  /**
73
71
  * set the Vector x and y properties to 0
74
- * @name setZero
75
- * @memberof Vector2d
76
72
  * @returns {Vector2d} Reference to this object for method chaining
77
73
  */
78
74
  setZero() {
@@ -81,8 +77,6 @@ import pool from "./../system/pooling.js";
81
77
 
82
78
  /**
83
79
  * set the Vector x and y properties using the passed vector
84
- * @name setV
85
- * @memberof Vector2d
86
80
  * @param {Vector2d} v
87
81
  * @returns {Vector2d} Reference to this object for method chaining
88
82
  */
@@ -92,8 +86,6 @@ import pool from "./../system/pooling.js";
92
86
 
93
87
  /**
94
88
  * Add the passed vector to this vector
95
- * @name add
96
- * @memberof Vector2d
97
89
  * @param {Vector2d} v
98
90
  * @returns {Vector2d} Reference to this object for method chaining
99
91
  */
@@ -103,8 +95,6 @@ import pool from "./../system/pooling.js";
103
95
 
104
96
  /**
105
97
  * Substract the passed vector to this vector
106
- * @name sub
107
- * @memberof Vector2d
108
98
  * @param {Vector2d} v
109
99
  * @returns {Vector2d} Reference to this object for method chaining
110
100
  */
@@ -114,8 +104,6 @@ import pool from "./../system/pooling.js";
114
104
 
115
105
  /**
116
106
  * Multiply this vector values by the given scalar
117
- * @name scale
118
- * @memberof Vector2d
119
107
  * @param {number} x
120
108
  * @param {number} [y=x]
121
109
  * @returns {Vector2d} Reference to this object for method chaining
@@ -126,8 +114,6 @@ import pool from "./../system/pooling.js";
126
114
 
127
115
  /**
128
116
  * Convert this vector into isometric coordinate space
129
- * @name toIso
130
- * @memberof Vector2d
131
117
  * @returns {Vector2d} Reference to this object for method chaining
132
118
  */
133
119
  toIso() {
@@ -136,8 +122,6 @@ import pool from "./../system/pooling.js";
136
122
 
137
123
  /**
138
124
  * Convert this vector into 2d coordinate space
139
- * @name to2d
140
- * @memberof Vector2d
141
125
  * @returns {Vector2d} Reference to this object for method chaining
142
126
  */
143
127
  to2d() {
@@ -146,8 +130,6 @@ import pool from "./../system/pooling.js";
146
130
 
147
131
  /**
148
132
  * Multiply this vector values by the passed vector
149
- * @name scaleV
150
- * @memberof Vector2d
151
133
  * @param {Vector2d} v
152
134
  * @returns {Vector2d} Reference to this object for method chaining
153
135
  */
@@ -157,8 +139,6 @@ import pool from "./../system/pooling.js";
157
139
 
158
140
  /**
159
141
  * Divide this vector values by the passed value
160
- * @name div
161
- * @memberof Vector2d
162
142
  * @param {number} n - the value to divide the vector by
163
143
  * @returns {Vector2d} Reference to this object for method chaining
164
144
  */
@@ -168,8 +148,6 @@ import pool from "./../system/pooling.js";
168
148
 
169
149
  /**
170
150
  * Update this vector values to absolute values
171
- * @name abs
172
- * @memberof Vector2d
173
151
  * @returns {Vector2d} Reference to this object for method chaining
174
152
  */
175
153
  abs() {
@@ -178,8 +156,6 @@ import pool from "./../system/pooling.js";
178
156
 
179
157
  /**
180
158
  * Clamp the vector value within the specified value range
181
- * @name clamp
182
- * @memberof Vector2d
183
159
  * @param {number} low
184
160
  * @param {number} high
185
161
  * @returns {Vector2d} new me.Vector2d
@@ -190,8 +166,6 @@ import pool from "./../system/pooling.js";
190
166
 
191
167
  /**
192
168
  * Clamp this vector value within the specified value range
193
- * @name clampSelf
194
- * @memberof Vector2d
195
169
  * @param {number} low
196
170
  * @param {number} high
197
171
  * @returns {Vector2d} Reference to this object for method chaining
@@ -202,8 +176,6 @@ import pool from "./../system/pooling.js";
202
176
 
203
177
  /**
204
178
  * Update this vector with the minimum value between this and the passed vector
205
- * @name minV
206
- * @memberof Vector2d
207
179
  * @param {Vector2d} v
208
180
  * @returns {Vector2d} Reference to this object for method chaining
209
181
  */
@@ -213,8 +185,6 @@ import pool from "./../system/pooling.js";
213
185
 
214
186
  /**
215
187
  * Update this vector with the maximum value between this and the passed vector
216
- * @name maxV
217
- * @memberof Vector2d
218
188
  * @param {Vector2d} v
219
189
  * @returns {Vector2d} Reference to this object for method chaining
220
190
  */
@@ -224,8 +194,6 @@ import pool from "./../system/pooling.js";
224
194
 
225
195
  /**
226
196
  * Floor the vector values
227
- * @name floor
228
- * @memberof Vector2d
229
197
  * @returns {Vector2d} new me.Vector2d
230
198
  */
231
199
  floor() {
@@ -234,8 +202,6 @@ import pool from "./../system/pooling.js";
234
202
 
235
203
  /**
236
204
  * Floor this vector values
237
- * @name floorSelf
238
- * @memberof Vector2d
239
205
  * @returns {Vector2d} Reference to this object for method chaining
240
206
  */
241
207
  floorSelf() {
@@ -244,8 +210,6 @@ import pool from "./../system/pooling.js";
244
210
 
245
211
  /**
246
212
  * Ceil the vector values
247
- * @name ceil
248
- * @memberof Vector2d
249
213
  * @returns {Vector2d} new me.Vector2d
250
214
  */
251
215
  ceil() {
@@ -254,8 +218,6 @@ import pool from "./../system/pooling.js";
254
218
 
255
219
  /**
256
220
  * Ceil this vector values
257
- * @name ceilSelf
258
- * @memberof Vector2d
259
221
  * @returns {Vector2d} Reference to this object for method chaining
260
222
  */
261
223
  ceilSelf() {
@@ -264,8 +226,6 @@ import pool from "./../system/pooling.js";
264
226
 
265
227
  /**
266
228
  * Negate the vector values
267
- * @name negate
268
- * @memberof Vector2d
269
229
  * @returns {Vector2d} new me.Vector2d
270
230
  */
271
231
  negate() {
@@ -274,8 +234,6 @@ import pool from "./../system/pooling.js";
274
234
 
275
235
  /**
276
236
  * Negate this vector values
277
- * @name negateSelf
278
- * @memberof Vector2d
279
237
  * @returns {Vector2d} Reference to this object for method chaining
280
238
  */
281
239
  negateSelf() {
@@ -284,8 +242,6 @@ import pool from "./../system/pooling.js";
284
242
 
285
243
  /**
286
244
  * Copy the x,y values of the passed vector to this one
287
- * @name copy
288
- * @memberof Vector2d
289
245
  * @param {Vector2d} v
290
246
  * @returns {Vector2d} Reference to this object for method chaining
291
247
  */
@@ -294,19 +250,9 @@ import pool from "./../system/pooling.js";
294
250
  }
295
251
 
296
252
  /**
297
- * return true if the two vectors are the same
298
- * @name equals
299
- * @memberof Vector2d
300
- * @method
301
- * @param {Vector2d} v
302
- * @returns {boolean}
303
- */
304
- /**
305
- * return true if this vector is equal to the given values
306
- * @name equals
307
- * @memberof Vector2d
308
- * @param {number} x
309
- * @param {number} y
253
+ * return true if this vector is equal to the given values or vector
254
+ * @param {number|Vector2d|ObservableVector2d} x
255
+ * @param {number} [y]
310
256
  * @returns {boolean}
311
257
  */
312
258
  equals() {
@@ -325,8 +271,6 @@ import pool from "./../system/pooling.js";
325
271
 
326
272
  /**
327
273
  * normalize this vector (scale the vector so that its magnitude is 1)
328
- * @name normalize
329
- * @memberof Vector2d
330
274
  * @returns {Vector2d} Reference to this object for method chaining
331
275
  */
332
276
  normalize() {
@@ -336,8 +280,6 @@ import pool from "./../system/pooling.js";
336
280
  /**
337
281
  * change this vector to be perpendicular to what it was before.<br>
338
282
  * (Effectively rotates it 90 degrees in a clockwise direction)
339
- * @name perp
340
- * @memberof Vector2d
341
283
  * @returns {Vector2d} Reference to this object for method chaining
342
284
  */
343
285
  perp() {
@@ -346,8 +288,6 @@ import pool from "./../system/pooling.js";
346
288
 
347
289
  /**
348
290
  * Rotate this vector (counter-clockwise) by the specified angle (in radians).
349
- * @name rotate
350
- * @memberof Vector2d
351
291
  * @param {number} angle - The angle to rotate (in radians)
352
292
  * @param {Vector2d|ObservableVector2d} [v] - an optional point to rotate around
353
293
  * @returns {Vector2d} Reference to this object for method chaining
@@ -372,8 +312,6 @@ import pool from "./../system/pooling.js";
372
312
 
373
313
  /**
374
314
  * return the dot product of this vector and the passed one
375
- * @name dot
376
- * @memberof Vector2d
377
315
  * @param {Vector2d} v
378
316
  * @returns {number} The dot product.
379
317
  */
@@ -383,8 +321,6 @@ import pool from "./../system/pooling.js";
383
321
 
384
322
  /**
385
323
  * return the cross product of this vector and the passed one
386
- * @name cross
387
- * @memberof Vector2d
388
324
  * @param {Vector2d} v
389
325
  * @returns {number} The cross product.
390
326
  */
@@ -392,10 +328,8 @@ import pool from "./../system/pooling.js";
392
328
  return this.x * v.y - this.y * v.x;
393
329
  }
394
330
 
395
- /**
331
+ /**
396
332
  * return the square length of this vector
397
- * @name length2
398
- * @memberof Vector2d
399
333
  * @returns {number} The length^2 of this vector.
400
334
  */
401
335
  length2() {
@@ -404,8 +338,6 @@ import pool from "./../system/pooling.js";
404
338
 
405
339
  /**
406
340
  * return the length (magnitude) of this vector
407
- * @name length
408
- * @memberof Vector2d
409
341
  * @returns {number} the length of this vector
410
342
  */
411
343
  length() {
@@ -414,8 +346,6 @@ import pool from "./../system/pooling.js";
414
346
 
415
347
  /**
416
348
  * Linearly interpolate between this vector and the given one.
417
- * @name lerp
418
- * @memberof Vector2d
419
349
  * @param {Vector2d} v
420
350
  * @param {number} alpha - distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).
421
351
  * @returns {Vector2d} Reference to this object for method chaining
@@ -428,13 +358,11 @@ import pool from "./../system/pooling.js";
428
358
 
429
359
  /**
430
360
  * interpolate the position of this vector towards the given one by the given maximum step.
431
- * @name moveTowards
432
- * @memberof Vector2d
433
361
  * @param {Vector2d} target
434
362
  * @param {number} step - the maximum step per iteration (Negative values will push the vector away from the target)
435
363
  * @returns {Vector2d} Reference to this object for method chaining
436
364
  */
437
- moveTowards(target, step) {
365
+ moveTowards(target, step) {
438
366
  let angle = Math.atan2(target.y - this.y, target.x - this.x);
439
367
 
440
368
  let distance = this.distance(target);
@@ -451,8 +379,6 @@ import pool from "./../system/pooling.js";
451
379
 
452
380
  /**
453
381
  * return the distance between this vector and the passed one
454
- * @name distance
455
- * @memberof Vector2d
456
382
  * @param {Vector2d} v
457
383
  * @returns {number}
458
384
  */
@@ -463,8 +389,6 @@ import pool from "./../system/pooling.js";
463
389
 
464
390
  /**
465
391
  * return the angle between this vector and the passed one
466
- * @name angle
467
- * @memberof Vector2d
468
392
  * @param {Vector2d} v
469
393
  * @returns {number} angle in radians
470
394
  */
@@ -474,8 +398,6 @@ import pool from "./../system/pooling.js";
474
398
 
475
399
  /**
476
400
  * project this vector on to another vector.
477
- * @name project
478
- * @memberof Vector2d
479
401
  * @param {Vector2d} v - The vector to project onto.
480
402
  * @returns {Vector2d} Reference to this object for method chaining
481
403
  */
@@ -486,8 +408,6 @@ import pool from "./../system/pooling.js";
486
408
  /**
487
409
  * Project this vector onto a vector of unit length.<br>
488
410
  * This is slightly more efficient than `project` when dealing with unit vectors.
489
- * @name projectN
490
- * @memberof Vector2d
491
411
  * @param {Vector2d} v - The unit vector to project onto.
492
412
  * @returns {Vector2d} Reference to this object for method chaining
493
413
  */
@@ -497,8 +417,6 @@ import pool from "./../system/pooling.js";
497
417
 
498
418
  /**
499
419
  * return a clone copy of this vector
500
- * @name clone
501
- * @memberof Vector2d
502
420
  * @returns {Vector2d} new me.Vector2d
503
421
  */
504
422
  clone() {
@@ -507,8 +425,6 @@ import pool from "./../system/pooling.js";
507
425
 
508
426
  /**
509
427
  * convert the object to a string representation
510
- * @name toString
511
- * @memberof Vector2d
512
428
  * @returns {string}
513
429
  */
514
430
  toString() {