@vpmedia/phaser 1.12.0 → 1.13.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 (258) hide show
  1. package/README.md +1 -1
  2. package/package.json +2 -2
  3. package/src/index.js +19 -19
  4. package/src/phaser/core/animation.js +3 -3
  5. package/src/phaser/core/animation_manager.js +2 -2
  6. package/src/phaser/core/animation_parser.js +16 -14
  7. package/src/phaser/core/array_set.js +2 -2
  8. package/src/phaser/core/cache.js +6 -6
  9. package/src/phaser/core/const.js +1 -1
  10. package/src/phaser/core/device.js +2 -2
  11. package/src/phaser/core/device_util.js +29 -11
  12. package/src/phaser/core/dom.js +2 -2
  13. package/src/phaser/core/event_manager.js +2 -2
  14. package/src/phaser/core/factory.js +8 -8
  15. package/src/phaser/core/frame.js +3 -3
  16. package/src/phaser/core/frame_data.js +2 -2
  17. package/src/phaser/core/frame_util.js +11 -9
  18. package/src/phaser/core/game.js +14 -13
  19. package/src/phaser/core/input.js +7 -7
  20. package/src/phaser/core/input_handler.js +2 -2
  21. package/src/phaser/core/input_mouse.js +2 -2
  22. package/src/phaser/core/input_mspointer.js +1 -1
  23. package/src/phaser/core/input_pointer.js +3 -3
  24. package/src/phaser/core/input_touch.js +1 -1
  25. package/src/phaser/core/loader.js +3 -3
  26. package/src/phaser/core/loader_parser.js +25 -21
  27. package/src/phaser/core/raf.js +2 -2
  28. package/src/phaser/core/scale_manager.js +5 -5
  29. package/src/phaser/core/scene.js +2 -2
  30. package/src/phaser/core/scene_manager.js +3 -3
  31. package/src/phaser/core/signal.js +4 -3
  32. package/src/phaser/core/signal_binding.js +2 -2
  33. package/src/phaser/core/sound.js +3 -3
  34. package/src/phaser/core/sound_manager.js +6 -6
  35. package/src/phaser/core/sound_sprite.js +2 -2
  36. package/src/phaser/core/stage.js +4 -4
  37. package/src/phaser/core/time.js +3 -3
  38. package/src/phaser/core/timer.js +3 -3
  39. package/src/phaser/core/timer_event.js +1 -1
  40. package/src/phaser/core/tween.js +4 -4
  41. package/src/phaser/core/tween_data.js +2 -2
  42. package/src/phaser/core/tween_easing.js +63 -63
  43. package/src/phaser/core/tween_manager.js +3 -3
  44. package/src/phaser/core/world.js +3 -3
  45. package/src/phaser/display/bitmap_text.js +17 -5
  46. package/src/phaser/display/button.js +19 -4
  47. package/src/phaser/display/canvas/buffer.js +1 -1
  48. package/src/phaser/display/canvas/graphics.js +9 -6
  49. package/src/phaser/display/canvas/masker.js +6 -4
  50. package/src/phaser/display/canvas/pool.js +18 -11
  51. package/src/phaser/display/canvas/renderer.js +1 -1
  52. package/src/phaser/display/canvas/tinter.js +18 -13
  53. package/src/phaser/display/canvas/util.js +43 -34
  54. package/src/phaser/display/display_object.js +9 -5
  55. package/src/phaser/display/graphics.js +19 -11
  56. package/src/phaser/display/graphics_data.js +3 -2
  57. package/src/phaser/display/graphics_data_util.js +6 -4
  58. package/src/phaser/display/group.js +14 -5
  59. package/src/phaser/display/image.js +15 -5
  60. package/src/phaser/display/sprite_batch.js +8 -2
  61. package/src/phaser/display/sprite_util.js +21 -15
  62. package/src/phaser/display/text.js +15 -5
  63. package/src/phaser/display/webgl/abstract_filter.js +1 -1
  64. package/src/phaser/display/webgl/base_texture.js +3 -2
  65. package/src/phaser/display/webgl/blend_manager.js +1 -1
  66. package/src/phaser/display/webgl/earcut.js +107 -107
  67. package/src/phaser/display/webgl/earcut_node.js +1 -1
  68. package/src/phaser/display/webgl/fast_sprite_batch.js +1 -1
  69. package/src/phaser/display/webgl/filter_manager.js +1 -1
  70. package/src/phaser/display/webgl/filter_texture.js +1 -1
  71. package/src/phaser/display/webgl/graphics.js +34 -34
  72. package/src/phaser/display/webgl/graphics_data.js +2 -2
  73. package/src/phaser/display/webgl/mask_manager.js +7 -5
  74. package/src/phaser/display/webgl/render_texture.js +5 -5
  75. package/src/phaser/display/webgl/renderer.js +2 -2
  76. package/src/phaser/display/webgl/shader/complex.js +1 -1
  77. package/src/phaser/display/webgl/shader/fast.js +1 -1
  78. package/src/phaser/display/webgl/shader/normal.js +1 -1
  79. package/src/phaser/display/webgl/shader/primitive.js +1 -1
  80. package/src/phaser/display/webgl/shader/strip.js +1 -1
  81. package/src/phaser/display/webgl/shader_manager.js +1 -1
  82. package/src/phaser/display/webgl/sprite_batch.js +1 -1
  83. package/src/phaser/display/webgl/stencil_manager.js +1 -1
  84. package/src/phaser/display/webgl/texture.js +4 -3
  85. package/src/phaser/display/webgl/texture_util.js +11 -9
  86. package/src/phaser/display/webgl/util.js +20 -16
  87. package/src/phaser/geom/circle.js +12 -4
  88. package/src/phaser/geom/ellipse.js +13 -4
  89. package/src/phaser/geom/line.js +12 -3
  90. package/src/phaser/geom/matrix.js +14 -3
  91. package/src/phaser/geom/point.js +9 -2
  92. package/src/phaser/geom/polygon.js +4 -3
  93. package/src/phaser/geom/rectangle.js +12 -3
  94. package/src/phaser/geom/rounded_rectangle.js +12 -2
  95. package/src/phaser/geom/util/circle.js +37 -29
  96. package/src/phaser/geom/util/ellipse.js +7 -15
  97. package/src/phaser/geom/util/line.js +30 -24
  98. package/src/phaser/geom/util/matrix.js +11 -9
  99. package/src/phaser/geom/util/point.js +100 -78
  100. package/src/phaser/geom/util/polygon.js +7 -15
  101. package/src/phaser/geom/util/rectangle.js +78 -62
  102. package/src/phaser/geom/util/rounded_rectangle.js +7 -15
  103. package/src/phaser/util/math.js +86 -66
  104. package/types/global.d.ts +7 -0
  105. package/types/index.d.ts +18 -18
  106. package/types/index.d.ts.map +1 -1
  107. package/types/phaser/core/animation.d.ts +5 -5
  108. package/types/phaser/core/animation.d.ts.map +1 -1
  109. package/types/phaser/core/animation_parser.d.ts +13 -11
  110. package/types/phaser/core/animation_parser.d.ts.map +1 -1
  111. package/types/phaser/core/array_set.d.ts +2 -2
  112. package/types/phaser/core/cache.d.ts +4 -4
  113. package/types/phaser/core/cache.d.ts.map +1 -1
  114. package/types/phaser/core/const.d.ts +1 -1
  115. package/types/phaser/core/device.d.ts +2 -2
  116. package/types/phaser/core/device_util.d.ts +31 -21
  117. package/types/phaser/core/device_util.d.ts.map +1 -1
  118. package/types/phaser/core/event_manager.d.ts +1 -1
  119. package/types/phaser/core/event_manager.d.ts.map +1 -1
  120. package/types/phaser/core/factory.d.ts +2 -2
  121. package/types/phaser/core/factory.d.ts.map +1 -1
  122. package/types/phaser/core/frame.d.ts +2 -2
  123. package/types/phaser/core/frame.d.ts.map +1 -1
  124. package/types/phaser/core/frame_data.d.ts +1 -1
  125. package/types/phaser/core/frame_util.d.ts +8 -6
  126. package/types/phaser/core/frame_util.d.ts.map +1 -1
  127. package/types/phaser/core/game.d.ts +12 -12
  128. package/types/phaser/core/game.d.ts.map +1 -1
  129. package/types/phaser/core/input.d.ts +4 -4
  130. package/types/phaser/core/input.d.ts.map +1 -1
  131. package/types/phaser/core/input_handler.d.ts +1 -1
  132. package/types/phaser/core/input_handler.d.ts.map +1 -1
  133. package/types/phaser/core/input_mspointer.d.ts +1 -1
  134. package/types/phaser/core/input_pointer.d.ts +2 -2
  135. package/types/phaser/core/input_pointer.d.ts.map +1 -1
  136. package/types/phaser/core/input_touch.d.ts +1 -1
  137. package/types/phaser/core/loader.d.ts +1 -1
  138. package/types/phaser/core/loader.d.ts.map +1 -1
  139. package/types/phaser/core/loader_parser.d.ts +22 -18
  140. package/types/phaser/core/loader_parser.d.ts.map +1 -1
  141. package/types/phaser/core/raf.d.ts +2 -2
  142. package/types/phaser/core/scale_manager.d.ts +4 -4
  143. package/types/phaser/core/scale_manager.d.ts.map +1 -1
  144. package/types/phaser/core/scene.d.ts +2 -2
  145. package/types/phaser/core/scene_manager.d.ts +1 -1
  146. package/types/phaser/core/signal.d.ts +1 -1
  147. package/types/phaser/core/signal.d.ts.map +1 -1
  148. package/types/phaser/core/signal_binding.d.ts +2 -2
  149. package/types/phaser/core/sound.d.ts +4 -4
  150. package/types/phaser/core/sound.d.ts.map +1 -1
  151. package/types/phaser/core/sound_manager.d.ts +5 -5
  152. package/types/phaser/core/sound_manager.d.ts.map +1 -1
  153. package/types/phaser/core/sound_sprite.d.ts +2 -2
  154. package/types/phaser/core/stage.d.ts +2 -2
  155. package/types/phaser/core/stage.d.ts.map +1 -1
  156. package/types/phaser/core/time.d.ts +2 -2
  157. package/types/phaser/core/time.d.ts.map +1 -1
  158. package/types/phaser/core/timer.d.ts +2 -2
  159. package/types/phaser/core/timer.d.ts.map +1 -1
  160. package/types/phaser/core/timer_event.d.ts +1 -1
  161. package/types/phaser/core/tween.d.ts +18 -18
  162. package/types/phaser/core/tween.d.ts.map +1 -1
  163. package/types/phaser/core/tween_data.d.ts +5 -5
  164. package/types/phaser/core/tween_data.d.ts.map +1 -1
  165. package/types/phaser/core/tween_easing.d.ts +63 -63
  166. package/types/phaser/core/tween_manager.d.ts +2 -2
  167. package/types/phaser/core/tween_manager.d.ts.map +1 -1
  168. package/types/phaser/core/world.d.ts +2 -2
  169. package/types/phaser/core/world.d.ts.map +1 -1
  170. package/types/phaser/display/bitmap_text.d.ts +16 -5
  171. package/types/phaser/display/bitmap_text.d.ts.map +1 -1
  172. package/types/phaser/display/button.d.ts +18 -4
  173. package/types/phaser/display/button.d.ts.map +1 -1
  174. package/types/phaser/display/canvas/graphics.d.ts +8 -5
  175. package/types/phaser/display/canvas/graphics.d.ts.map +1 -1
  176. package/types/phaser/display/canvas/masker.d.ts +5 -3
  177. package/types/phaser/display/canvas/masker.d.ts.map +1 -1
  178. package/types/phaser/display/canvas/pool.d.ts +20 -13
  179. package/types/phaser/display/canvas/pool.d.ts.map +1 -1
  180. package/types/phaser/display/canvas/tinter.d.ts +19 -14
  181. package/types/phaser/display/canvas/tinter.d.ts.map +1 -1
  182. package/types/phaser/display/canvas/util.d.ts +47 -38
  183. package/types/phaser/display/canvas/util.d.ts.map +1 -1
  184. package/types/phaser/display/display_object.d.ts +5 -5
  185. package/types/phaser/display/display_object.d.ts.map +1 -1
  186. package/types/phaser/display/graphics.d.ts +28 -21
  187. package/types/phaser/display/graphics.d.ts.map +1 -1
  188. package/types/phaser/display/graphics_data.d.ts +1 -1
  189. package/types/phaser/display/graphics_data.d.ts.map +1 -1
  190. package/types/phaser/display/graphics_data_util.d.ts +3 -2
  191. package/types/phaser/display/graphics_data_util.d.ts.map +1 -1
  192. package/types/phaser/display/group.d.ts +14 -6
  193. package/types/phaser/display/group.d.ts.map +1 -1
  194. package/types/phaser/display/image.d.ts +14 -5
  195. package/types/phaser/display/image.d.ts.map +1 -1
  196. package/types/phaser/display/sprite_batch.d.ts +8 -3
  197. package/types/phaser/display/sprite_batch.d.ts.map +1 -1
  198. package/types/phaser/display/sprite_util.d.ts +19 -14
  199. package/types/phaser/display/sprite_util.d.ts.map +1 -1
  200. package/types/phaser/display/text.d.ts +25 -16
  201. package/types/phaser/display/text.d.ts.map +1 -1
  202. package/types/phaser/display/webgl/abstract_filter.d.ts +1 -1
  203. package/types/phaser/display/webgl/base_texture.d.ts +1 -1
  204. package/types/phaser/display/webgl/base_texture.d.ts.map +1 -1
  205. package/types/phaser/display/webgl/blend_manager.d.ts +1 -1
  206. package/types/phaser/display/webgl/earcut.d.ts +106 -106
  207. package/types/phaser/display/webgl/earcut_node.d.ts +1 -1
  208. package/types/phaser/display/webgl/fast_sprite_batch.d.ts +1 -1
  209. package/types/phaser/display/webgl/filter_manager.d.ts +1 -1
  210. package/types/phaser/display/webgl/graphics.d.ts +31 -31
  211. package/types/phaser/display/webgl/graphics_data.d.ts +2 -2
  212. package/types/phaser/display/webgl/mask_manager.d.ts +6 -4
  213. package/types/phaser/display/webgl/mask_manager.d.ts.map +1 -1
  214. package/types/phaser/display/webgl/render_texture.d.ts +3 -3
  215. package/types/phaser/display/webgl/render_texture.d.ts.map +1 -1
  216. package/types/phaser/display/webgl/renderer.d.ts +1 -1
  217. package/types/phaser/display/webgl/renderer.d.ts.map +1 -1
  218. package/types/phaser/display/webgl/texture.d.ts +1 -1
  219. package/types/phaser/display/webgl/texture.d.ts.map +1 -1
  220. package/types/phaser/display/webgl/texture_util.d.ts +10 -8
  221. package/types/phaser/display/webgl/texture_util.d.ts.map +1 -1
  222. package/types/phaser/display/webgl/util.d.ts +20 -16
  223. package/types/phaser/display/webgl/util.d.ts.map +1 -1
  224. package/types/phaser/geom/circle.d.ts +16 -9
  225. package/types/phaser/geom/circle.d.ts.map +1 -1
  226. package/types/phaser/geom/ellipse.d.ts +13 -5
  227. package/types/phaser/geom/ellipse.d.ts.map +1 -1
  228. package/types/phaser/geom/line.d.ts +16 -8
  229. package/types/phaser/geom/line.d.ts.map +1 -1
  230. package/types/phaser/geom/matrix.d.ts +21 -11
  231. package/types/phaser/geom/matrix.d.ts.map +1 -1
  232. package/types/phaser/geom/point.d.ts +26 -20
  233. package/types/phaser/geom/point.d.ts.map +1 -1
  234. package/types/phaser/geom/polygon.d.ts +4 -4
  235. package/types/phaser/geom/polygon.d.ts.map +1 -1
  236. package/types/phaser/geom/rectangle.d.ts +22 -14
  237. package/types/phaser/geom/rectangle.d.ts.map +1 -1
  238. package/types/phaser/geom/rounded_rectangle.d.ts +11 -2
  239. package/types/phaser/geom/rounded_rectangle.d.ts.map +1 -1
  240. package/types/phaser/geom/util/circle.d.ts +42 -33
  241. package/types/phaser/geom/util/circle.d.ts.map +1 -1
  242. package/types/phaser/geom/util/ellipse.d.ts +7 -12
  243. package/types/phaser/geom/util/ellipse.d.ts.map +1 -1
  244. package/types/phaser/geom/util/line.d.ts +30 -23
  245. package/types/phaser/geom/util/line.d.ts.map +1 -1
  246. package/types/phaser/geom/util/matrix.d.ts +12 -10
  247. package/types/phaser/geom/util/matrix.d.ts.map +1 -1
  248. package/types/phaser/geom/util/point.d.ts +118 -96
  249. package/types/phaser/geom/util/point.d.ts.map +1 -1
  250. package/types/phaser/geom/util/polygon.d.ts +6 -11
  251. package/types/phaser/geom/util/polygon.d.ts.map +1 -1
  252. package/types/phaser/geom/util/rectangle.d.ts +91 -74
  253. package/types/phaser/geom/util/rectangle.d.ts.map +1 -1
  254. package/types/phaser/geom/util/rounded_rectangle.d.ts +6 -11
  255. package/types/phaser/geom/util/rounded_rectangle.d.ts.map +1 -1
  256. package/types/phaser/util/math.d.ts +89 -69
  257. package/types/phaser/util/math.d.ts.map +1 -1
  258. package/tsconfig.json +0 -110
@@ -1,18 +1,28 @@
1
1
  /**
2
+ * @module display/image
3
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
4
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
5
  * @author Richard Davey <rich@photonstorm.com>
4
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
5
6
  */
6
- import Texture from './webgl/texture';
7
+ import { Texture } from './webgl/texture';
7
8
  import AnimationManager from '../core/animation_manager';
8
9
  import EventManager from '../core/event_manager';
9
- import Rectangle from '../geom/rectangle';
10
- import DisplayObject from './display_object';
10
+ import { Rectangle } from '../geom/rectangle';
11
+ import { DisplayObject } from './display_object';
11
12
  import { clone } from '../geom/util/rectangle';
12
13
  import { IMAGE, PENDING_ATLAS, BLEND_NORMAL, SCALE_NEAREST } from '../core/const';
13
14
  import { setTexture, getBounds, getLocalBounds, renderCanvas, renderWebGL } from './sprite_util';
14
15
 
15
- export default class extends DisplayObject {
16
+ export class Image extends DisplayObject {
17
+ /**
18
+ * TBD.
19
+ *
20
+ * @param {object} game - TBD.
21
+ * @param {number} x - TBD.
22
+ * @param {number} y - TBD.
23
+ * @param {string} key - TBD.
24
+ * @param {string} frame - TBD.
25
+ */
16
26
  constructor(game, x, y, key, frame) {
17
27
  super();
18
28
  this.game = game;
@@ -1,11 +1,17 @@
1
1
  /**
2
+ * @module display/sprite_batch
3
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
4
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
5
  * @author Richard Davey <rich@photonstorm.com>
4
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
5
6
  */
6
- import DisplayObject from './display_object';
7
+ import { DisplayObject } from './display_object';
7
8
 
8
9
  export default class extends DisplayObject {
10
+ /**
11
+ * TBD.
12
+ *
13
+ * @param {object} game - TBD.
14
+ */
9
15
  constructor(game) {
10
16
  super();
11
17
  this.game = game;
@@ -1,17 +1,19 @@
1
1
  /**
2
+ * @module display/sprite_util
3
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
4
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
5
  * @author Richard Davey <rich@photonstorm.com>
4
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
5
6
  */
6
7
  import { getTintedTexture } from './canvas/tinter';
7
8
  import { getIdentityMatrix } from '../geom/util/matrix';
8
9
  import { SCALE_LINEAR } from '../core/const';
9
10
 
10
11
  /**
12
+ * TBD.
11
13
  *
12
- * @param {object} target TBD
13
- * @param {object} texture TBD
14
- * @param {boolean} destroyBase TBD
14
+ * @param {object} target - TBD.
15
+ * @param {object} texture - TBD.
16
+ * @param {boolean} destroyBase - TBD.
15
17
  */
16
18
  export function setTexture(target, texture, destroyBase = false) {
17
19
  if (destroyBase) {
@@ -24,10 +26,11 @@ export function setTexture(target, texture, destroyBase = false) {
24
26
  }
25
27
 
26
28
  /**
29
+ * TBD.
27
30
  *
28
- * @param {object} target TBD
29
- * @param {object} matrix TBD
30
- * @returns {object} TBD
31
+ * @param {object} target - TBD.
32
+ * @param {object} matrix - TBD.
33
+ * @returns {object} TBD.
31
34
  */
32
35
  export function getBounds(target, matrix = null) {
33
36
  // TODO verify
@@ -107,9 +110,10 @@ export function getBounds(target, matrix = null) {
107
110
  }
108
111
 
109
112
  /**
113
+ * TBD.
110
114
  *
111
- * @param {object} target TBD
112
- * @returns {object} TBD
115
+ * @param {object} target - TBD.
116
+ * @returns {object} TBD.
113
117
  */
114
118
  export function getLocalBounds(target) {
115
119
  const matrixCache = target.worldTransform;
@@ -127,10 +131,11 @@ export function getLocalBounds(target) {
127
131
  }
128
132
 
129
133
  /**
134
+ * TBD.
130
135
  *
131
- * @param {object} target TBD
132
- * @param {object} renderSession TBD
133
- * @param {object} matrix TBD
136
+ * @param {object} target - TBD.
137
+ * @param {object} renderSession - TBD.
138
+ * @param {object} matrix - TBD.
134
139
  */
135
140
  export function renderWebGL(target, renderSession, matrix) {
136
141
  // if the sprite is not visible or the alpha is 0 then no need to render this element
@@ -176,10 +181,11 @@ export function renderWebGL(target, renderSession, matrix) {
176
181
  }
177
182
 
178
183
  /**
184
+ * TBD.
179
185
  *
180
- * @param {object} target TBD
181
- * @param {object} renderSession TBD
182
- * @param {object} matrix TBD
186
+ * @param {object} target - TBD.
187
+ * @param {object} renderSession - TBD.
188
+ * @param {object} matrix - TBD.
183
189
  */
184
190
  export function renderCanvas(target, renderSession, matrix) {
185
191
  // If the sprite is not visible or the alpha is 0 then no need to render this element
@@ -1,18 +1,28 @@
1
1
  /**
2
+ * @module display/text
3
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
4
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
5
  * @author Richard Davey <rich@photonstorm.com>
4
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
5
6
  */
6
- import Point from '../geom/point';
7
- import Rectangle from '../geom/rectangle';
8
- import Image from './image';
7
+ import { Point } from '../geom/point';
8
+ import { Rectangle } from '../geom/rectangle';
9
+ import { Image } from './image';
9
10
  import { create, remove } from './canvas/pool';
10
11
  import { textureFromCanvas } from './webgl/texture_util';
11
12
  import { TEXT } from '../core/const';
12
13
  import { snapToCeil } from '../util/math';
13
14
  import { renderCanvas, renderWebGL, getBounds } from './sprite_util';
14
15
 
15
- export default class extends Image {
16
+ export class Text extends Image {
17
+ /**
18
+ * TBD.
19
+ *
20
+ * @param {object} game - TBD.
21
+ * @param {number} x - TBD.
22
+ * @param {number} y - TBD.
23
+ * @param {string} text - TBD.
24
+ * @param {object} style - TBD.
25
+ */
16
26
  constructor(game, x, y, text = '', style = {}) {
17
27
  super(game, x, y, null);
18
28
  this.game = game;
@@ -1,8 +1,8 @@
1
1
  /**
2
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
3
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
4
  * @author Richard Davey <rich@photonstorm.com>
4
5
  * @author Mat Groves http://matgroves.com/ @Doormat23
5
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
6
6
  */
7
7
 
8
8
  export default class {
@@ -1,12 +1,13 @@
1
1
  /**
2
+ * @module display/webgl/base_texture
3
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
4
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
5
  * @author Richard Davey <rich@photonstorm.com>
4
6
  * @author Mat Groves http://matgroves.com/ @Doormat23
5
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
6
7
  */
7
8
  import { removeByCanvas } from '../canvas/pool';
8
9
 
9
- export default class {
10
+ export class BaseTexture {
10
11
  constructor(source, scaleMode) {
11
12
  this.resolution = 1;
12
13
  this.width = 100;
@@ -1,8 +1,8 @@
1
1
  /**
2
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
3
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
4
  * @author Richard Davey <rich@photonstorm.com>
4
5
  * @author Mat Groves http://matgroves.com/ @Doormat23
5
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
6
6
  */
7
7
 
8
8
  export default class {
@@ -1,15 +1,15 @@
1
1
  /**
2
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
3
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
4
  * @author Richard Davey <rich@photonstorm.com>
4
5
  * @author Mat Groves http://matgroves.com/ @Doormat23
5
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
6
6
  */
7
7
  import Node from './earcut_node';
8
8
 
9
9
  /**
10
10
  *
11
- * @param {object} list TBD
12
- * @returns {object} TBD
11
+ * @param {object} list - TBD.
12
+ * @returns {object} TBD.
13
13
  */
14
14
  export function sortLinked(list) {
15
15
  let i;
@@ -74,9 +74,9 @@ export function sortLinked(list) {
74
74
 
75
75
  /**
76
76
  *
77
- * @param {object} a TBD
78
- * @param {object} b TBD
79
- * @returns {number} TBD
77
+ * @param {object} a - TBD.
78
+ * @param {object} b - TBD.
79
+ * @returns {number} TBD.
80
80
  */
81
81
  export function compareX(a, b) {
82
82
  return a.x - b.x;
@@ -84,12 +84,12 @@ export function compareX(a, b) {
84
84
 
85
85
  /**
86
86
  *
87
- * @param {number} x TBD
88
- * @param {number} y TBD
89
- * @param {number} minX TBD
90
- * @param {number} minY TBD
91
- * @param {number} size TBD
92
- * @returns {number} TBD
87
+ * @param {number} x - TBD.
88
+ * @param {number} y - TBD.
89
+ * @param {number} minX - TBD.
90
+ * @param {number} minY - TBD.
91
+ * @param {number} size - TBD.
92
+ * @returns {number} TBD.
93
93
  */
94
94
  export function zOrder(x, y, minX, minY, size) {
95
95
  // coords are transformed into non-negative 15-bit integer range
@@ -108,10 +108,10 @@ export function zOrder(x, y, minX, minY, size) {
108
108
 
109
109
  /**
110
110
  *
111
- * @param {object} start TBD
112
- * @param {number} minX TBD
113
- * @param {number} minY TBD
114
- * @param {number} size TBD
111
+ * @param {object} start - TBD.
112
+ * @param {number} minX - TBD.
113
+ * @param {number} minY - TBD.
114
+ * @param {number} size - TBD.
115
115
  */
116
116
  export function indexCurve(start, minX, minY, size) {
117
117
  let p = start;
@@ -128,8 +128,8 @@ export function indexCurve(start, minX, minY, size) {
128
128
 
129
129
  /**
130
130
  *
131
- * @param {object} start TBD
132
- * @returns {object} TBD
131
+ * @param {object} start - TBD.
132
+ * @returns {object} TBD.
133
133
  */
134
134
  export function getLeftmost(start) {
135
135
  let p = start;
@@ -143,15 +143,15 @@ export function getLeftmost(start) {
143
143
 
144
144
  /**
145
145
  *
146
- * @param {number} ax TBD
147
- * @param {number} ay TBD
148
- * @param {number} bx TBD
149
- * @param {number} by TBD
150
- * @param {number} cx TBD
151
- * @param {number} cy TBD
152
- * @param {number} px TBD
153
- * @param {number} py TBD
154
- * @returns {object} TBD
146
+ * @param {number} ax - TBD.
147
+ * @param {number} ay - TBD.
148
+ * @param {number} bx - TBD.
149
+ * @param {number} by - TBD.
150
+ * @param {number} cx - TBD.
151
+ * @param {number} cy - TBD.
152
+ * @param {number} px - TBD.
153
+ * @param {number} py - TBD.
154
+ * @returns {object} TBD.
155
155
  */
156
156
  export function pointInTriangle(ax, ay, bx, by, cx, cy, px, py) {
157
157
  return (
@@ -163,10 +163,10 @@ export function pointInTriangle(ax, ay, bx, by, cx, cy, px, py) {
163
163
 
164
164
  /**
165
165
  *
166
- * @param {object} p TBD
167
- * @param {object} q TBD
168
- * @param {object} r TBD
169
- * @returns {number} TBD
166
+ * @param {object} p - TBD.
167
+ * @param {object} q - TBD.
168
+ * @param {object} r - TBD.
169
+ * @returns {number} TBD.
170
170
  */
171
171
  export function area(p, q, r) {
172
172
  return (q.y - p.y) * (r.x - q.x) - (q.x - p.x) * (r.y - q.y);
@@ -174,9 +174,9 @@ export function area(p, q, r) {
174
174
 
175
175
  /**
176
176
  *
177
- * @param {object} p1 TBD
178
- * @param {object} p2 TBD
179
- * @returns {boolean} TBD
177
+ * @param {object} p1 - TBD.
178
+ * @param {object} p2 - TBD.
179
+ * @returns {boolean} TBD.
180
180
  */
181
181
  export function equals(p1, p2) {
182
182
  return p1.x === p2.x && p1.y === p2.y;
@@ -184,11 +184,11 @@ export function equals(p1, p2) {
184
184
 
185
185
  /**
186
186
  *
187
- * @param {object} p1 TBD
188
- * @param {object} q1 TBD
189
- * @param {object} p2 TBD
190
- * @param {object} q2 TBD
191
- * @returns {boolean} TBD
187
+ * @param {object} p1 - TBD.
188
+ * @param {object} q1 - TBD.
189
+ * @param {object} p2 - TBD.
190
+ * @param {object} q2 - TBD.
191
+ * @returns {boolean} TBD.
192
192
  */
193
193
  export function intersects(p1, q1, p2, q2) {
194
194
  return (
@@ -198,9 +198,9 @@ export function intersects(p1, q1, p2, q2) {
198
198
 
199
199
  /**
200
200
  *
201
- * @param {object} a TBD
202
- * @param {object} b TBD
203
- * @returns {boolean} TBD
201
+ * @param {object} a - TBD.
202
+ * @param {object} b - TBD.
203
+ * @returns {boolean} TBD.
204
204
  */
205
205
  export function intersectsPolygon(a, b) {
206
206
  let p = a;
@@ -220,9 +220,9 @@ export function intersectsPolygon(a, b) {
220
220
 
221
221
  /**
222
222
  *
223
- * @param {object} a TBD
224
- * @param {object} b TBD
225
- * @returns {object} TBD
223
+ * @param {object} a - TBD.
224
+ * @param {object} b - TBD.
225
+ * @returns {object} TBD.
226
226
  */
227
227
  export function locallyInside(a, b) {
228
228
  return area(a.prev, a, a.next) < 0
@@ -232,9 +232,9 @@ export function locallyInside(a, b) {
232
232
 
233
233
  /**
234
234
  *
235
- * @param {object} a TBD
236
- * @param {object} b TBD
237
- * @returns {boolean} TBD
235
+ * @param {object} a - TBD.
236
+ * @param {object} b - TBD.
237
+ * @returns {boolean} TBD.
238
238
  */
239
239
  export function middleInside(a, b) {
240
240
  let p = a;
@@ -255,9 +255,9 @@ export function middleInside(a, b) {
255
255
 
256
256
  /**
257
257
  *
258
- * @param {object} a TBD
259
- * @param {object} b TBD
260
- * @returns {boolean} TBD
258
+ * @param {object} a - TBD.
259
+ * @param {object} b - TBD.
260
+ * @returns {boolean} TBD.
261
261
  */
262
262
  export function isValidDiagonal(a, b) {
263
263
  return (
@@ -273,9 +273,9 @@ export function isValidDiagonal(a, b) {
273
273
 
274
274
  /**
275
275
  *
276
- * @param {object} a TBD
277
- * @param {object} b TBD
278
- * @returns {object} TBD
276
+ * @param {object} a - TBD.
277
+ * @param {object} b - TBD.
278
+ * @returns {object} TBD.
279
279
  */
280
280
  export function splitPolygon(a, b) {
281
281
  const a2 = new Node(a.i, a.x, a.y);
@@ -295,11 +295,11 @@ export function splitPolygon(a, b) {
295
295
 
296
296
  /**
297
297
  *
298
- * @param {number} i TBD
299
- * @param {number} x TBD
300
- * @param {number} y TBD
301
- * @param {object} last TBD
302
- * @returns {object} TBD
298
+ * @param {number} i - TBD.
299
+ * @param {number} x - TBD.
300
+ * @param {number} y - TBD.
301
+ * @param {object} last - TBD.
302
+ * @returns {object} TBD.
303
303
  */
304
304
  export function insertNode(i, x, y, last) {
305
305
  const p = new Node(i, x, y);
@@ -317,7 +317,7 @@ export function insertNode(i, x, y, last) {
317
317
 
318
318
  /**
319
319
  *
320
- * @param {object} p TBD
320
+ * @param {object} p - TBD.
321
321
  */
322
322
  export function removeNode(p) {
323
323
  p.next.prev = p.prev;
@@ -332,8 +332,8 @@ export function removeNode(p) {
332
332
 
333
333
  /**
334
334
  *
335
- * @param {object} ear TBD
336
- * @returns {boolean} TBD
335
+ * @param {object} ear - TBD.
336
+ * @returns {boolean} TBD.
337
337
  */
338
338
  export function isEar(ear) {
339
339
  const a = ear.prev;
@@ -352,11 +352,11 @@ export function isEar(ear) {
352
352
 
353
353
  /**
354
354
  *
355
- * @param {object} ear TBD
356
- * @param {number} minX TBD
357
- * @param {number} minY TBD
358
- * @param {number} size TBD
359
- * @returns {boolean} TBD
355
+ * @param {object} ear - TBD.
356
+ * @param {number} minX - TBD.
357
+ * @param {number} minY - TBD.
358
+ * @param {number} size - TBD.
359
+ * @returns {boolean} TBD.
360
360
  */
361
361
  export function isEarHashed(ear, minX, minY, size) {
362
362
  const a = ear.prev;
@@ -402,12 +402,12 @@ export function isEarHashed(ear, minX, minY, size) {
402
402
 
403
403
  /**
404
404
  *
405
- * @param {object} data TBD
406
- * @param {number} start TBD
407
- * @param {number} end TBD
408
- * @param {number} dim TBD
409
- * @param {boolean} clockwise TBD
410
- * @returns {object} TBD
405
+ * @param {object} data - TBD.
406
+ * @param {number} start - TBD.
407
+ * @param {number} end - TBD.
408
+ * @param {number} dim - TBD.
409
+ * @param {boolean} clockwise - TBD.
410
+ * @returns {object} TBD.
411
411
  */
412
412
  export function linkedList(data, start, end, dim, clockwise) {
413
413
  let sum = 0;
@@ -430,9 +430,9 @@ export function linkedList(data, start, end, dim, clockwise) {
430
430
 
431
431
  /**
432
432
  *
433
- * @param {object} start TBD
434
- * @param {object} end TBD
435
- * @returns {object} TBD
433
+ * @param {object} start - TBD.
434
+ * @param {object} end - TBD.
435
+ * @returns {object} TBD.
436
436
  */
437
437
  export function filterPoints(start, end) {
438
438
  if (!start) return start;
@@ -456,9 +456,9 @@ export function filterPoints(start, end) {
456
456
 
457
457
  /**
458
458
  *
459
- * @param {object} hole TBD
460
- * @param {object} outerNode TBD
461
- * @returns {object} TBD
459
+ * @param {object} hole - TBD.
460
+ * @param {object} outerNode - TBD.
461
+ * @returns {object} TBD.
462
462
  */
463
463
  export function findHoleBridge(hole, outerNode) {
464
464
  let p = outerNode;
@@ -506,8 +506,8 @@ export function findHoleBridge(hole, outerNode) {
506
506
 
507
507
  /**
508
508
  *
509
- * @param {object} hole TBD
510
- * @param {object} outerNode TBD
509
+ * @param {object} hole - TBD.
510
+ * @param {object} outerNode - TBD.
511
511
  */
512
512
  export function eliminateHole(hole, outerNode) {
513
513
  outerNode = findHoleBridge(hole, outerNode);
@@ -519,11 +519,11 @@ export function eliminateHole(hole, outerNode) {
519
519
 
520
520
  /**
521
521
  *
522
- * @param {object} data TBD
523
- * @param {object} holeIndices TBD
524
- * @param {object} outerNode TBD
525
- * @param {object} dim TBD
526
- * @returns {object} TBD
522
+ * @param {object} data - TBD.
523
+ * @param {object} holeIndices - TBD.
524
+ * @param {object} outerNode - TBD.
525
+ * @param {object} dim - TBD.
526
+ * @returns {object} TBD.
527
527
  */
528
528
  export function eliminateHoles(data, holeIndices, outerNode, dim) {
529
529
  const queue = [];
@@ -550,10 +550,10 @@ export function eliminateHoles(data, holeIndices, outerNode, dim) {
550
550
 
551
551
  /**
552
552
  *
553
- * @param {object} start TBD
554
- * @param {object} triangles TBD
555
- * @param {number} dim TBD
556
- * @returns {object} TBD
553
+ * @param {object} start - TBD.
554
+ * @param {object} triangles - TBD.
555
+ * @param {number} dim - TBD.
556
+ * @returns {object} TBD.
557
557
  */
558
558
  export function cureLocalIntersections(start, triangles, dim) {
559
559
  let p = start;
@@ -578,12 +578,12 @@ export function cureLocalIntersections(start, triangles, dim) {
578
578
 
579
579
  /**
580
580
  *
581
- * @param {object} start TBD
582
- * @param {object} triangles TBD
583
- * @param {number} dim TBD
584
- * @param {number} minX TBD
585
- * @param {number} minY TBD
586
- * @param {number} size TBD
581
+ * @param {object} start - TBD.
582
+ * @param {object} triangles - TBD.
583
+ * @param {number} dim - TBD.
584
+ * @param {number} minX - TBD.
585
+ * @param {number} minY - TBD.
586
+ * @param {number} size - TBD.
587
587
  */
588
588
  export function splitEarcut(start, triangles, dim, minX, minY, size) {
589
589
  // look for a valid diagonal that divides the polygon into two
@@ -610,13 +610,13 @@ export function splitEarcut(start, triangles, dim, minX, minY, size) {
610
610
 
611
611
  /**
612
612
  *
613
- * @param {object} ear TBD
614
- * @param {object} triangles TBD
615
- * @param {number} dim TBD
616
- * @param {number} minX TBD
617
- * @param {number} minY TBD
618
- * @param {number} size TBD
619
- * @param {object} pass TBD
613
+ * @param {object} ear - TBD.
614
+ * @param {object} triangles - TBD.
615
+ * @param {number} dim - TBD.
616
+ * @param {number} minX - TBD.
617
+ * @param {number} minY - TBD.
618
+ * @param {number} size - TBD.
619
+ * @param {object} pass - TBD.
620
620
  */
621
621
  export function earcutLinked(ear, triangles, dim, minX, minY, size, pass) {
622
622
  if (!ear) return;
@@ -661,10 +661,10 @@ export function earcutLinked(ear, triangles, dim, minX, minY, size, pass) {
661
661
 
662
662
  /**
663
663
  *
664
- * @param {object} data TBD
665
- * @param {object} holeIndices TBD
666
- * @param {number} dim TBD
667
- * @returns {object} TBD
664
+ * @param {object} data - TBD.
665
+ * @param {object} holeIndices - TBD.
666
+ * @param {number} dim - TBD.
667
+ * @returns {object} TBD.
668
668
  */
669
669
  export function triangulate(data, holeIndices, dim) {
670
670
  dim = dim || 2;
@@ -1,8 +1,8 @@
1
1
  /**
2
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
3
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
4
  * @author Richard Davey <rich@photonstorm.com>
4
5
  * @author Mat Groves http://matgroves.com/ @Doormat23
5
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
6
6
  */
7
7
 
8
8
  export default class {
@@ -1,8 +1,8 @@
1
1
  /**
2
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
3
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
4
  * @author Richard Davey <rich@photonstorm.com>
4
5
  * @author Mat Groves http://matgroves.com/ @Doormat23
5
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
6
6
  */
7
7
 
8
8
  // TODO: fix ++ +=1 conversion issues (when a is 0 than a++ is 0 but a+=1 is 1)
@@ -1,8 +1,8 @@
1
1
  /**
2
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
3
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
4
  * @author Richard Davey <rich@photonstorm.com>
4
5
  * @author Mat Groves http://matgroves.com/ @Doormat23
5
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
6
6
  */
7
7
 
8
8
  export default class {
@@ -1,8 +1,8 @@
1
1
  /**
2
+ * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
2
3
  * @author Andras Csizmadia <andras@vpmedia.hu>
3
4
  * @author Richard Davey <rich@photonstorm.com>
4
5
  * @author Mat Groves http://matgroves.com/ @Doormat23
5
- * @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
6
6
  */
7
7
  import { SCALE_LINEAR } from '../../core/const';
8
8