melonjs 15.1.5 → 15.1.6

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 (157) 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 +1 -1
  6. package/dist/melonjs.mjs/application/header.js +1 -1
  7. package/dist/melonjs.mjs/application/resize.js +1 -1
  8. package/dist/melonjs.mjs/application/settings.js +1 -1
  9. package/dist/melonjs.mjs/audio/audio.js +1 -1
  10. package/dist/melonjs.mjs/camera/camera2d.js +3 -3
  11. package/dist/melonjs.mjs/const.js +1 -1
  12. package/dist/melonjs.mjs/entity/entity.js +1 -1
  13. package/dist/melonjs.mjs/geometries/ellipse.js +1 -1
  14. package/dist/melonjs.mjs/geometries/line.js +1 -1
  15. package/dist/melonjs.mjs/geometries/path2d.js +1 -1
  16. package/dist/melonjs.mjs/geometries/point.js +1 -1
  17. package/dist/melonjs.mjs/geometries/poly.js +1 -1
  18. package/dist/melonjs.mjs/geometries/rectangle.js +1 -1
  19. package/dist/melonjs.mjs/geometries/roundrect.js +1 -1
  20. package/dist/melonjs.mjs/index.js +4 -3
  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 +1 -1
  24. package/dist/melonjs.mjs/input/pointer.js +1 -1
  25. package/dist/melonjs.mjs/input/pointerevent.js +1 -1
  26. package/dist/melonjs.mjs/lang/console.js +1 -1
  27. package/dist/melonjs.mjs/lang/deprecated.js +3 -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 +1 -1
  31. package/dist/melonjs.mjs/level/tiled/TMXObject.js +1 -1
  32. package/dist/melonjs.mjs/level/tiled/TMXTile.js +1 -1
  33. package/dist/melonjs.mjs/level/tiled/TMXTileMap.js +1 -1
  34. package/dist/melonjs.mjs/level/tiled/TMXTileset.js +1 -1
  35. package/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +1 -1
  36. package/dist/melonjs.mjs/level/tiled/TMXUtils.js +1 -1
  37. package/dist/melonjs.mjs/level/tiled/constants.js +1 -1
  38. package/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +1 -1
  39. package/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +1 -1
  40. package/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +1 -1
  41. package/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +1 -1
  42. package/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +1 -1
  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 +1 -1
  49. package/dist/melonjs.mjs/loader/settings.js +1 -1
  50. package/dist/melonjs.mjs/math/color.js +1 -1
  51. package/dist/melonjs.mjs/math/math.js +1 -1
  52. package/dist/melonjs.mjs/math/matrix2.js +1 -1
  53. package/dist/melonjs.mjs/math/matrix3.js +1 -1
  54. package/dist/melonjs.mjs/math/observable_vector2.js +1 -1
  55. package/dist/melonjs.mjs/math/observable_vector3.js +1 -1
  56. package/dist/melonjs.mjs/math/vector2.js +1 -1
  57. package/dist/melonjs.mjs/math/vector3.js +1 -1
  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 +1 -1
  65. package/dist/melonjs.mjs/particles/particle.js +1 -1
  66. package/dist/melonjs.mjs/particles/settings.js +1 -1
  67. package/dist/melonjs.mjs/physics/body.js +3 -3
  68. package/dist/melonjs.mjs/physics/bounds.js +1 -1
  69. package/dist/melonjs.mjs/physics/collision.js +1 -1
  70. package/dist/melonjs.mjs/physics/detector.js +4 -4
  71. package/dist/melonjs.mjs/physics/quadtree.js +1 -1
  72. package/dist/melonjs.mjs/physics/response.js +1 -1
  73. package/dist/melonjs.mjs/physics/sat.js +9 -9
  74. package/dist/melonjs.mjs/physics/world.js +1 -1
  75. package/dist/melonjs.mjs/plugin/plugin.js +3 -3
  76. package/dist/melonjs.mjs/renderable/collectable.js +1 -1
  77. package/dist/melonjs.mjs/renderable/colorlayer.js +1 -1
  78. package/dist/melonjs.mjs/renderable/container.js +14 -14
  79. package/dist/melonjs.mjs/renderable/draggable.js +121 -0
  80. package/dist/melonjs.mjs/renderable/dragndrop.js +3 -113
  81. package/dist/melonjs.mjs/renderable/imagelayer.js +1 -1
  82. package/dist/melonjs.mjs/renderable/light2d.js +1 -1
  83. package/dist/melonjs.mjs/renderable/nineslicesprite.js +1 -1
  84. package/dist/melonjs.mjs/renderable/renderable.js +2 -2
  85. package/dist/melonjs.mjs/renderable/sprite.js +1 -1
  86. package/dist/melonjs.mjs/renderable/trigger.js +2 -2
  87. package/dist/melonjs.mjs/renderable/ui/uibaseelement.js +1 -1
  88. package/dist/melonjs.mjs/renderable/ui/uispriteelement.js +1 -1
  89. package/dist/melonjs.mjs/renderable/ui/uitextbutton.js +1 -1
  90. package/dist/melonjs.mjs/state/stage.js +1 -1
  91. package/dist/melonjs.mjs/state/state.js +1 -1
  92. package/dist/melonjs.mjs/system/device.js +1 -1
  93. package/dist/melonjs.mjs/system/dom.js +1 -1
  94. package/dist/melonjs.mjs/system/event.js +1 -1
  95. package/dist/melonjs.mjs/system/platform.js +1 -1
  96. package/dist/melonjs.mjs/system/pooling.js +1 -1
  97. package/dist/melonjs.mjs/system/save.js +1 -1
  98. package/dist/melonjs.mjs/system/timer.js +1 -1
  99. package/dist/melonjs.mjs/text/bitmaptext.js +1 -1
  100. package/dist/melonjs.mjs/text/bitmaptextdata.js +1 -1
  101. package/dist/melonjs.mjs/text/glyph.js +1 -1
  102. package/dist/melonjs.mjs/text/text.js +1 -1
  103. package/dist/melonjs.mjs/text/textmetrics.js +1 -1
  104. package/dist/melonjs.mjs/text/textstyle.js +1 -1
  105. package/dist/melonjs.mjs/tweens/easing.js +1 -1
  106. package/dist/melonjs.mjs/tweens/interpolation.js +1 -1
  107. package/dist/melonjs.mjs/tweens/tween.js +1 -1
  108. package/dist/melonjs.mjs/utils/agent.js +1 -1
  109. package/dist/melonjs.mjs/utils/array.js +1 -1
  110. package/dist/melonjs.mjs/utils/file.js +1 -1
  111. package/dist/melonjs.mjs/utils/function.js +1 -1
  112. package/dist/melonjs.mjs/utils/string.js +1 -1
  113. package/dist/melonjs.mjs/utils/utils.js +1 -1
  114. package/dist/melonjs.mjs/video/canvas/canvas_renderer.js +1 -1
  115. package/dist/melonjs.mjs/video/renderer.js +1 -1
  116. package/dist/melonjs.mjs/video/texture/atlas.js +1 -1
  117. package/dist/melonjs.mjs/video/texture/cache.js +1 -1
  118. package/dist/melonjs.mjs/video/texture/canvas_texture.js +1 -1
  119. package/dist/melonjs.mjs/video/utils/autodetect.js +1 -1
  120. package/dist/melonjs.mjs/video/video.js +1 -1
  121. package/dist/melonjs.mjs/video/webgl/buffer/vertex.js +1 -1
  122. package/dist/melonjs.mjs/video/webgl/compositors/compositor.js +1 -1
  123. package/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +1 -1
  124. package/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +1 -1
  125. package/dist/melonjs.mjs/video/webgl/glshader.js +1 -1
  126. package/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +1 -1
  127. package/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +1 -1
  128. package/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +1 -1
  129. package/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +1 -1
  130. package/dist/melonjs.mjs/video/webgl/utils/attributes.js +1 -1
  131. package/dist/melonjs.mjs/video/webgl/utils/precision.js +1 -1
  132. package/dist/melonjs.mjs/video/webgl/utils/program.js +1 -1
  133. package/dist/melonjs.mjs/video/webgl/utils/string.js +1 -1
  134. package/dist/melonjs.mjs/video/webgl/utils/uniforms.js +1 -1
  135. package/dist/melonjs.mjs/video/webgl/webgl_renderer.js +1 -1
  136. package/dist/melonjs.module.js +60 -55
  137. package/dist/types/camera/camera2d.d.ts +4 -4
  138. package/dist/types/index.d.ts +1 -1
  139. package/dist/types/physics/body.d.ts +4 -4
  140. package/dist/types/physics/detector.d.ts +5 -5
  141. package/dist/types/physics/sat.d.ts +12 -12
  142. package/dist/types/renderable/container.d.ts +25 -25
  143. package/dist/types/renderable/draggable.d.ts +53 -0
  144. package/dist/types/renderable/dragndrop.d.ts +0 -52
  145. package/dist/types/renderable/renderable.d.ts +2 -2
  146. package/package.json +8 -8
  147. package/src/camera/camera2d.js +2 -2
  148. package/src/index.js +2 -1
  149. package/src/lang/deprecated.js +2 -1
  150. package/src/physics/body.js +2 -2
  151. package/src/physics/detector.js +3 -3
  152. package/src/physics/sat.js +8 -8
  153. package/src/renderable/container.js +13 -13
  154. package/src/renderable/draggable.js +114 -0
  155. package/src/renderable/dragndrop.js +0 -109
  156. package/src/renderable/renderable.js +1 -1
  157. package/src/renderable/trigger.js +1 -1
@@ -1,115 +1,6 @@
1
- import Vector2d from "./../math/vector2.js";
2
- import * as input from "./../input/input.js";
3
1
  import * as event from "./../system/event.js";
4
2
  import Renderable from "./../renderable/renderable.js";
5
3
 
6
- /**
7
- * @classdesc
8
- * A Draggable base object
9
- * @see DropTarget
10
- * @augments Renderable
11
- */
12
- export class Draggable extends Renderable {
13
- /**
14
- * @param {number} x - the x coordinates of the draggable object
15
- * @param {number} y - the y coordinates of the draggable object
16
- * @param {number} width - draggable object width
17
- * @param {number} height - draggable object height
18
- */
19
- constructor(x, y, width, height) {
20
- super(x, y, width, height);
21
- this.isKinematic = false;
22
- this.dragging = false;
23
- this.dragId = null;
24
- this.grabOffset = new Vector2d(0, 0);
25
- this.initEvents();
26
- }
27
-
28
- /**
29
- * Initializes the events the modules needs to listen to
30
- * It translates the pointer events to me.events
31
- * in order to make them pass through the system and to make
32
- * this module testable. Then we subscribe this module to the
33
- * transformed events.
34
- * @name initEvents
35
- * @memberof Draggable
36
- * @private
37
- */
38
- initEvents() {
39
- input.registerPointerEvent("pointerdown", this, (e) => event.emit(event.DRAGSTART, e, this));
40
- input.registerPointerEvent("pointerup", this, (e) => event.emit(event.DRAGEND, e, this));
41
- input.registerPointerEvent("pointercancel", this, (e) => event.emit(event.DRAGEND, e, this));
42
- event.on(event.POINTERMOVE, (e) => this.dragMove(e));
43
- event.on(event.DRAGSTART, (e, draggable) => {
44
- if (draggable === this) {
45
- this.dragStart(e);
46
- }
47
- });
48
- event.on(event.DRAGEND, (e, draggable) => {
49
- if (draggable === this) {
50
- this.dragEnd(e);
51
- }
52
- });
53
- }
54
-
55
- /**
56
- * Gets called when the user starts dragging the entity
57
- * @name dragStart
58
- * @memberof Draggable
59
- * @param {object} e - the pointer event
60
- * @returns {boolean} false if the object is being dragged
61
- */
62
- dragStart(e) {
63
- if (this.dragging === false) {
64
- this.dragging = true;
65
- this.grabOffset.set(e.gameX, e.gameY);
66
- this.grabOffset.sub(this.pos);
67
- return false;
68
- }
69
- }
70
-
71
- /**
72
- * Gets called when the user drags this entity around
73
- * @name dragMove
74
- * @memberof Draggable
75
- * @param {object} e - the pointer event
76
- */
77
- dragMove(e) {
78
- if (this.dragging === true) {
79
- this.pos.set(e.gameX, e.gameY, this.pos.z); //TODO : z ?
80
- this.pos.sub(this.grabOffset);
81
- }
82
- }
83
-
84
- /**
85
- * Gets called when the user stops dragging the entity
86
- * @name dragEnd
87
- * @memberof Draggable
88
- * @returns {boolean} false if the object stopped being dragged
89
- */
90
- dragEnd() {
91
- if (this.dragging === true) {
92
- this.dragging = false;
93
- return false;
94
- }
95
- }
96
-
97
- /**
98
- * Destructor
99
- * @name destroy
100
- * @memberof Draggable
101
- * @ignore
102
- */
103
- destroy() {
104
- event.off(event.POINTERMOVE, this.dragMove);
105
- event.off(event.DRAGSTART, this.dragStart);
106
- event.off(event.DRAGEND, this.dragEnd);
107
- input.releasePointerEvent("pointerdown", this);
108
- input.releasePointerEvent("pointerup", this);
109
- input.releasePointerEvent("pointercancel", this);
110
- super.destroy();
111
- }
112
- }
113
4
 
114
5
  /**
115
6
  * @classdesc
@@ -725,7 +725,7 @@ import Color from "./../math/color.js";
725
725
  * onCollision callback, triggered in case of collision,
726
726
  * when this renderable body is colliding with another one
727
727
  * @param {ResponseObject} response - the collision response object
728
- * @param {Renderable} other - the other renderable touching this one (a reference to response.a or response.b)
728
+ * @param {Renderable|Container|Entity|Sprite|NineSliceSprite} other - the other renderable touching this one (a reference to response.a or response.b)
729
729
  * @returns {boolean} true if the object should respond to the collision (its position and velocity will be corrected)
730
730
  * @example
731
731
  * // colision handler
@@ -136,7 +136,7 @@ import pool from "./../system/pooling.js";
136
136
  * @name onCollision
137
137
  * @memberof Trigger
138
138
  * @param {ResponseObject} response - the collision response object
139
- * @param {Renderable} other - the other renderable touching this one (a reference to response.a or response.b)
139
+ * @param {Renderable|Container|Entity|Sprite|NineSliceSprite} other - the other renderable touching this one (a reference to response.a or response.b)
140
140
  * @returns {boolean} true if the object should respond to the collision (its position and velocity will be corrected)
141
141
  */
142
142
  onCollision(response, other) { // eslint-disable-line no-unused-vars