@vpmedia/phaser 1.115.0 → 1.117.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.
- package/dist/index.js +56 -96
- package/dist/index.js.map +1 -1
- package/dist/phaser/core/animation.d.ts.map +1 -1
- package/dist/phaser/core/animation_manager.d.ts +15 -14
- package/dist/phaser/core/animation_manager.d.ts.map +1 -1
- package/dist/phaser/core/animation_parser.d.ts.map +1 -1
- package/dist/phaser/core/array_set.d.ts.map +1 -1
- package/dist/phaser/core/cache.d.ts +10 -9
- package/dist/phaser/core/cache.d.ts.map +1 -1
- package/dist/phaser/core/device_util.d.ts.map +1 -1
- package/dist/phaser/core/dom.d.ts.map +1 -1
- package/dist/phaser/core/factory.d.ts.map +1 -1
- package/dist/phaser/core/game.d.ts.map +1 -1
- package/dist/phaser/core/input.d.ts +20 -20
- package/dist/phaser/core/input.d.ts.map +1 -1
- package/dist/phaser/core/input_handler.d.ts +11 -13
- package/dist/phaser/core/input_handler.d.ts.map +1 -1
- package/dist/phaser/core/input_mouse.d.ts.map +1 -1
- package/dist/phaser/core/input_mspointer.d.ts.map +1 -1
- package/dist/phaser/core/input_pointer.d.ts +19 -8
- package/dist/phaser/core/input_pointer.d.ts.map +1 -1
- package/dist/phaser/core/input_touch.d.ts.map +1 -1
- package/dist/phaser/core/loader.d.ts.map +1 -1
- package/dist/phaser/core/raf.d.ts.map +1 -1
- package/dist/phaser/core/scale_manager.d.ts +38 -13
- package/dist/phaser/core/scale_manager.d.ts.map +1 -1
- package/dist/phaser/core/scene.d.ts.map +1 -1
- package/dist/phaser/core/scene_manager.d.ts.map +1 -1
- package/dist/phaser/core/signal.d.ts.map +1 -1
- package/dist/phaser/core/signal_binding.d.ts.map +1 -1
- package/dist/phaser/core/sound.d.ts +2 -2
- package/dist/phaser/core/sound.d.ts.map +1 -1
- package/dist/phaser/core/sound_manager.d.ts +24 -22
- package/dist/phaser/core/sound_manager.d.ts.map +1 -1
- package/dist/phaser/core/sound_sprite.d.ts.map +1 -1
- package/dist/phaser/core/stage.d.ts.map +1 -1
- package/dist/phaser/core/time.d.ts.map +1 -1
- package/dist/phaser/core/timer.d.ts +1 -1
- package/dist/phaser/core/timer.d.ts.map +1 -1
- package/dist/phaser/core/tween.d.ts.map +1 -1
- package/dist/phaser/core/tween_data.d.ts +26 -26
- package/dist/phaser/core/tween_data.d.ts.map +1 -1
- package/dist/phaser/core/tween_manager.d.ts.map +1 -1
- package/dist/phaser/core/world.d.ts.map +1 -1
- package/dist/phaser/display/bitmap_text.d.ts.map +1 -1
- package/dist/phaser/display/button.d.ts.map +1 -1
- package/dist/phaser/display/canvas/buffer.d.ts.map +1 -1
- package/dist/phaser/display/canvas/graphics.d.ts.map +1 -1
- package/dist/phaser/display/canvas/masker.d.ts.map +1 -1
- package/dist/phaser/display/canvas/pool.d.ts.map +1 -1
- package/dist/phaser/display/canvas/renderer.d.ts.map +1 -1
- package/dist/phaser/display/canvas/tinter.d.ts +3 -2
- package/dist/phaser/display/canvas/tinter.d.ts.map +1 -1
- package/dist/phaser/display/canvas/util.d.ts.map +1 -1
- package/dist/phaser/display/display_object.d.ts.map +1 -1
- package/dist/phaser/display/graphics.d.ts.map +1 -1
- package/dist/phaser/display/graphics_data.d.ts.map +1 -1
- package/dist/phaser/display/graphics_data_util.d.ts.map +1 -1
- package/dist/phaser/display/group.d.ts.map +1 -1
- package/dist/phaser/display/image.d.ts +2 -2
- package/dist/phaser/display/image.d.ts.map +1 -1
- package/dist/phaser/display/sprite_util.d.ts.map +1 -1
- package/dist/phaser/display/text.d.ts.map +1 -1
- package/dist/phaser/display/webgl/abstract_filter.d.ts.map +1 -1
- package/dist/phaser/display/webgl/base_texture.d.ts +12 -10
- package/dist/phaser/display/webgl/base_texture.d.ts.map +1 -1
- package/dist/phaser/display/webgl/blend_manager.d.ts.map +1 -1
- package/dist/phaser/display/webgl/earcut.d.ts.map +1 -1
- package/dist/phaser/display/webgl/fast_sprite_batch.d.ts +13 -12
- package/dist/phaser/display/webgl/fast_sprite_batch.d.ts.map +1 -1
- package/dist/phaser/display/webgl/filter_manager.d.ts.map +1 -1
- package/dist/phaser/display/webgl/filter_texture.d.ts.map +1 -1
- package/dist/phaser/display/webgl/graphics.d.ts +9 -7
- package/dist/phaser/display/webgl/graphics.d.ts.map +1 -1
- package/dist/phaser/display/webgl/graphics_data.d.ts.map +1 -1
- package/dist/phaser/display/webgl/mask_manager.d.ts.map +1 -1
- package/dist/phaser/display/webgl/render_texture.d.ts.map +1 -1
- package/dist/phaser/display/webgl/renderer.d.ts +12 -10
- package/dist/phaser/display/webgl/renderer.d.ts.map +1 -1
- package/dist/phaser/display/webgl/shader/normal.d.ts.map +1 -1
- package/dist/phaser/display/webgl/shader_manager.d.ts.map +1 -1
- package/dist/phaser/display/webgl/sprite_batch.d.ts.map +1 -1
- package/dist/phaser/display/webgl/stencil_manager.d.ts.map +1 -1
- package/dist/phaser/display/webgl/texture.d.ts +18 -33
- package/dist/phaser/display/webgl/texture.d.ts.map +1 -1
- package/dist/phaser/display/webgl/texture_util.d.ts.map +1 -1
- package/dist/phaser/display/webgl/util.d.ts.map +1 -1
- package/dist/phaser/geom/circle.d.ts.map +1 -1
- package/dist/phaser/geom/ellipse.d.ts.map +1 -1
- package/dist/phaser/geom/line.d.ts.map +1 -1
- package/dist/phaser/geom/matrix.d.ts +1 -1
- package/dist/phaser/geom/matrix.d.ts.map +1 -1
- package/dist/phaser/geom/point.d.ts.map +1 -1
- package/dist/phaser/geom/polygon.d.ts.map +1 -1
- package/dist/phaser/geom/rectangle.d.ts.map +1 -1
- package/dist/phaser/geom/rounded_rectangle.d.ts.map +1 -1
- package/dist/phaser/geom/util/circle.d.ts.map +1 -1
- package/dist/phaser/geom/util/ellipse.d.ts.map +1 -1
- package/dist/phaser/geom/util/line.d.ts +5 -4
- package/dist/phaser/geom/util/line.d.ts.map +1 -1
- package/dist/phaser/geom/util/matrix.d.ts.map +1 -1
- package/dist/phaser/geom/util/point.d.ts.map +1 -1
- package/dist/phaser/geom/util/polygon.d.ts.map +1 -1
- package/dist/phaser/geom/util/rectangle.d.ts +10 -1
- package/dist/phaser/geom/util/rectangle.d.ts.map +1 -1
- package/dist/phaser/geom/util/rounded_rectangle.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/phaser/core/animation.ts +20 -20
- package/src/phaser/core/animation_manager.ts +27 -24
- package/src/phaser/core/animation_parser.ts +2 -2
- package/src/phaser/core/array_set.ts +7 -7
- package/src/phaser/core/cache.ts +55 -51
- package/src/phaser/core/callback_context.test.ts +70 -0
- package/src/phaser/core/device_util.ts +13 -13
- package/src/phaser/core/dom.ts +26 -22
- package/src/phaser/core/factory.ts +6 -6
- package/src/phaser/core/game.ts +10 -10
- package/src/phaser/core/input.ts +37 -39
- package/src/phaser/core/input_handler.ts +90 -93
- package/src/phaser/core/input_mouse.ts +19 -19
- package/src/phaser/core/input_mspointer.ts +15 -15
- package/src/phaser/core/input_pointer.ts +37 -28
- package/src/phaser/core/input_touch.ts +17 -17
- package/src/phaser/core/loader.ts +52 -52
- package/src/phaser/core/loader_parser.ts +3 -3
- package/src/phaser/core/raf.ts +3 -3
- package/src/phaser/core/scale_manager.ts +86 -67
- package/src/phaser/core/scene.ts +7 -7
- package/src/phaser/core/scene_manager.ts +16 -16
- package/src/phaser/core/signal.ts +29 -19
- package/src/phaser/core/signal_binding.ts +4 -4
- package/src/phaser/core/sound.ts +17 -17
- package/src/phaser/core/sound_manager.ts +71 -72
- package/src/phaser/core/sound_sprite.ts +1 -1
- package/src/phaser/core/stage.ts +7 -7
- package/src/phaser/core/time.ts +16 -16
- package/src/phaser/core/timer.ts +36 -26
- package/src/phaser/core/tween.ts +23 -23
- package/src/phaser/core/tween_data.ts +41 -37
- package/src/phaser/core/tween_manager.ts +11 -11
- package/src/phaser/core/world.ts +1 -1
- package/src/phaser/display/bitmap_text.ts +13 -13
- package/src/phaser/display/button.ts +13 -13
- package/src/phaser/display/canvas/buffer.ts +3 -3
- package/src/phaser/display/canvas/graphics.ts +3 -3
- package/src/phaser/display/canvas/masker.ts +2 -2
- package/src/phaser/display/canvas/pool.ts +6 -6
- package/src/phaser/display/canvas/renderer.ts +6 -6
- package/src/phaser/display/canvas/tinter.ts +39 -8
- package/src/phaser/display/canvas/util.ts +15 -9
- package/src/phaser/display/display_object.ts +38 -38
- package/src/phaser/display/graphics.ts +30 -30
- package/src/phaser/display/graphics_data.ts +1 -1
- package/src/phaser/display/graphics_data_util.ts +1 -1
- package/src/phaser/display/group.ts +16 -16
- package/src/phaser/display/image.ts +30 -26
- package/src/phaser/display/sprite_util.ts +12 -4
- package/src/phaser/display/text.ts +55 -55
- package/src/phaser/display/webgl/abstract_filter.ts +1 -1
- package/src/phaser/display/webgl/base_texture.ts +22 -18
- package/src/phaser/display/webgl/blend_manager.ts +3 -3
- package/src/phaser/display/webgl/earcut.ts +3 -3
- package/src/phaser/display/webgl/fast_sprite_batch.ts +26 -24
- package/src/phaser/display/webgl/filter_manager.ts +7 -7
- package/src/phaser/display/webgl/filter_texture.ts +3 -3
- package/src/phaser/display/webgl/graphics.ts +43 -41
- package/src/phaser/display/webgl/graphics_data.ts +2 -2
- package/src/phaser/display/webgl/mask_manager.ts +2 -2
- package/src/phaser/display/webgl/render_texture.ts +6 -6
- package/src/phaser/display/webgl/renderer.ts +20 -25
- package/src/phaser/display/webgl/shader/normal.ts +3 -3
- package/src/phaser/display/webgl/shader_manager.ts +2 -2
- package/src/phaser/display/webgl/sprite_batch.ts +9 -9
- package/src/phaser/display/webgl/stencil_manager.ts +4 -4
- package/src/phaser/display/webgl/texture.ts +23 -42
- package/src/phaser/display/webgl/texture_util.ts +2 -2
- package/src/phaser/display/webgl/util.ts +11 -7
- package/src/phaser/geom/circle.ts +21 -21
- package/src/phaser/geom/ellipse.ts +7 -7
- package/src/phaser/geom/line.ts +29 -29
- package/src/phaser/geom/matrix.ts +13 -13
- package/src/phaser/geom/point.ts +36 -30
- package/src/phaser/geom/polygon.ts +6 -6
- package/src/phaser/geom/rectangle.ts +42 -42
- package/src/phaser/geom/rounded_rectangle.ts +2 -2
- package/src/phaser/geom/util/circle.ts +7 -7
- package/src/phaser/geom/util/ellipse.ts +1 -1
- package/src/phaser/geom/util/line.ts +13 -5
- package/src/phaser/geom/util/matrix.ts +3 -3
- package/src/phaser/geom/util/point.ts +20 -20
- package/src/phaser/geom/util/polygon.ts +1 -1
- package/src/phaser/geom/util/rectangle.ts +34 -17
- package/src/phaser/geom/util/rounded_rectangle.ts +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import type { Group } from '../display/group.js';
|
|
1
2
|
import { Point } from '../geom/point.js';
|
|
2
3
|
import { distance } from '../util/math.js';
|
|
3
4
|
import { GROUP } from './const.js';
|
|
4
5
|
import type { Image } from '../display/image.js';
|
|
5
|
-
import type { DisplayObject } from '../display/display_object.js';
|
|
6
6
|
import type { Pointer } from './input_pointer.js';
|
|
7
7
|
import type { Rectangle } from '../geom/rectangle.js';
|
|
8
8
|
import type { Game } from './game.js';
|
|
@@ -44,7 +44,7 @@ const createPointerData = (id: number): PointerData => ({
|
|
|
44
44
|
});
|
|
45
45
|
|
|
46
46
|
export class InputHandler {
|
|
47
|
-
public sprite!:
|
|
47
|
+
public sprite!: Image;
|
|
48
48
|
public game!: Game;
|
|
49
49
|
public enabled!: boolean;
|
|
50
50
|
public checked!: boolean;
|
|
@@ -54,8 +54,7 @@ export class InputHandler {
|
|
|
54
54
|
public isDragged!: boolean;
|
|
55
55
|
public allowHorizontalDrag!: boolean;
|
|
56
56
|
public allowVerticalDrag!: boolean;
|
|
57
|
-
public
|
|
58
|
-
public snapOffset!: any;
|
|
57
|
+
public snapOffset!: Point | null;
|
|
59
58
|
public snapOnDrag!: boolean;
|
|
60
59
|
public snapOnRelease!: boolean;
|
|
61
60
|
public snapX!: number;
|
|
@@ -66,8 +65,8 @@ export class InputHandler {
|
|
|
66
65
|
public pixelPerfectClick!: boolean;
|
|
67
66
|
public pixelPerfectAlpha!: number;
|
|
68
67
|
public draggable!: boolean;
|
|
69
|
-
public boundsRect!:
|
|
70
|
-
public boundsSprite!:
|
|
68
|
+
public boundsRect!: Rectangle | null;
|
|
69
|
+
public boundsSprite!: Image | null;
|
|
71
70
|
public dragOffset!: Point;
|
|
72
71
|
public dragFromCenter!: boolean;
|
|
73
72
|
public dragStopBlocksInputUp!: boolean;
|
|
@@ -84,9 +83,9 @@ export class InputHandler {
|
|
|
84
83
|
public _wasEnabled!: boolean;
|
|
85
84
|
public _tempPoint!: Point;
|
|
86
85
|
public _pointerData!: PointerData[];
|
|
87
|
-
public _dx!:
|
|
88
|
-
public _dy!:
|
|
89
|
-
public _draggedPointerID!:
|
|
86
|
+
public _dx!: number;
|
|
87
|
+
public _dy!: number;
|
|
88
|
+
public _draggedPointerID!: number;
|
|
90
89
|
/**
|
|
91
90
|
* TBD.
|
|
92
91
|
* @param {Image} sprite - TBD.
|
|
@@ -102,7 +101,6 @@ export class InputHandler {
|
|
|
102
101
|
this.isDragged = false;
|
|
103
102
|
this.allowHorizontalDrag = true;
|
|
104
103
|
this.allowVerticalDrag = true;
|
|
105
|
-
this.bringToTop = false;
|
|
106
104
|
this.snapOffset = null;
|
|
107
105
|
this.snapOnDrag = false;
|
|
108
106
|
this.snapOnRelease = false;
|
|
@@ -162,7 +160,7 @@ export class InputHandler {
|
|
|
162
160
|
/**
|
|
163
161
|
* TBD.
|
|
164
162
|
*/
|
|
165
|
-
public addedToGroup() {
|
|
163
|
+
public addedToGroup(): void {
|
|
166
164
|
if (this._dragPhase) {
|
|
167
165
|
return;
|
|
168
166
|
}
|
|
@@ -174,7 +172,7 @@ export class InputHandler {
|
|
|
174
172
|
/**
|
|
175
173
|
* TBD.
|
|
176
174
|
*/
|
|
177
|
-
public removedFromGroup() {
|
|
175
|
+
public removedFromGroup(): void {
|
|
178
176
|
if (this._dragPhase) {
|
|
179
177
|
return;
|
|
180
178
|
}
|
|
@@ -189,7 +187,7 @@ export class InputHandler {
|
|
|
189
187
|
/**
|
|
190
188
|
* TBD.
|
|
191
189
|
*/
|
|
192
|
-
public reset() {
|
|
190
|
+
public reset(): void {
|
|
193
191
|
this.enabled = false;
|
|
194
192
|
for (let i = 0; i < 10; i += 1) {
|
|
195
193
|
this._pointerData[i] = createPointerData(i);
|
|
@@ -214,7 +212,7 @@ export class InputHandler {
|
|
|
214
212
|
/**
|
|
215
213
|
* TBD.
|
|
216
214
|
*/
|
|
217
|
-
public stop() {
|
|
215
|
+
public stop(): void {
|
|
218
216
|
if (this.enabled) {
|
|
219
217
|
this.enabled = false;
|
|
220
218
|
this.game.input.interactiveItems.remove(this);
|
|
@@ -224,7 +222,7 @@ export class InputHandler {
|
|
|
224
222
|
/**
|
|
225
223
|
* TBD.
|
|
226
224
|
*/
|
|
227
|
-
public destroy() {
|
|
225
|
+
public destroy(): void {
|
|
228
226
|
if (this.sprite) {
|
|
229
227
|
if (this._setHandCursor) {
|
|
230
228
|
this.game.canvas.style.cursor = 'default';
|
|
@@ -235,7 +233,6 @@ export class InputHandler {
|
|
|
235
233
|
this._pointerData.length = 0;
|
|
236
234
|
this.boundsRect = null;
|
|
237
235
|
this.boundsSprite = null;
|
|
238
|
-
this.sprite = null;
|
|
239
236
|
}
|
|
240
237
|
}
|
|
241
238
|
|
|
@@ -246,7 +243,7 @@ export class InputHandler {
|
|
|
246
243
|
* @param {boolean} includePixelPerfect - TBD.
|
|
247
244
|
* @returns {boolean} TBD.
|
|
248
245
|
*/
|
|
249
|
-
public validForInput(highestID: number, highestRenderID: number, includePixelPerfect = true) {
|
|
246
|
+
public validForInput(highestID: number, highestRenderID: number, includePixelPerfect = true): boolean {
|
|
250
247
|
if (
|
|
251
248
|
!this.enabled ||
|
|
252
249
|
this.sprite.scale.x === 0 ||
|
|
@@ -270,7 +267,7 @@ export class InputHandler {
|
|
|
270
267
|
* TBD.
|
|
271
268
|
* @returns {boolean} TBD.
|
|
272
269
|
*/
|
|
273
|
-
public isPixelPerfect() {
|
|
270
|
+
public isPixelPerfect(): boolean {
|
|
274
271
|
return this.pixelPerfectClick || this.pixelPerfectOver;
|
|
275
272
|
}
|
|
276
273
|
|
|
@@ -279,7 +276,7 @@ export class InputHandler {
|
|
|
279
276
|
* @param {number} pointerId - TBD.
|
|
280
277
|
* @returns {number} TBD.
|
|
281
278
|
*/
|
|
282
|
-
public pointerX(pointerId = 0) {
|
|
279
|
+
public pointerX(pointerId = 0): number {
|
|
283
280
|
return this.pointerData(pointerId).x;
|
|
284
281
|
}
|
|
285
282
|
|
|
@@ -288,7 +285,7 @@ export class InputHandler {
|
|
|
288
285
|
* @param {number} pointerId - TBD.
|
|
289
286
|
* @returns {number} TBD.
|
|
290
287
|
*/
|
|
291
|
-
public pointerY(pointerId = 0) {
|
|
288
|
+
public pointerY(pointerId = 0): number {
|
|
292
289
|
return this.pointerData(pointerId).y;
|
|
293
290
|
}
|
|
294
291
|
|
|
@@ -297,7 +294,7 @@ export class InputHandler {
|
|
|
297
294
|
* @param {number} pointerId - TBD.
|
|
298
295
|
* @returns {boolean} TBD.
|
|
299
296
|
*/
|
|
300
|
-
public pointerDown(pointerId = 0) {
|
|
297
|
+
public pointerDown(pointerId = 0): boolean {
|
|
301
298
|
return this.pointerData(pointerId).isDown;
|
|
302
299
|
}
|
|
303
300
|
|
|
@@ -306,7 +303,7 @@ export class InputHandler {
|
|
|
306
303
|
* @param {number} pointerId - TBD.
|
|
307
304
|
* @returns {boolean} TBD.
|
|
308
305
|
*/
|
|
309
|
-
public pointerUp(pointerId = 0) {
|
|
306
|
+
public pointerUp(pointerId = 0): boolean {
|
|
310
307
|
return this.pointerData(pointerId).isUp;
|
|
311
308
|
}
|
|
312
309
|
|
|
@@ -315,7 +312,7 @@ export class InputHandler {
|
|
|
315
312
|
* @param {number} pointerId - TBD.
|
|
316
313
|
* @returns {number} TBD.
|
|
317
314
|
*/
|
|
318
|
-
public pointerTimeDown(pointerId = 0) {
|
|
315
|
+
public pointerTimeDown(pointerId = 0): number {
|
|
319
316
|
return this.pointerData(pointerId).timeDown;
|
|
320
317
|
}
|
|
321
318
|
|
|
@@ -324,7 +321,7 @@ export class InputHandler {
|
|
|
324
321
|
* @param {number} pointerId - TBD.
|
|
325
322
|
* @returns {number} TBD.
|
|
326
323
|
*/
|
|
327
|
-
public pointerTimeUp(pointerId = 0) {
|
|
324
|
+
public pointerTimeUp(pointerId = 0): number {
|
|
328
325
|
return this.pointerData(pointerId).timeUp;
|
|
329
326
|
}
|
|
330
327
|
|
|
@@ -333,7 +330,7 @@ export class InputHandler {
|
|
|
333
330
|
* @param {number} pointerId - TBD.
|
|
334
331
|
* @returns {boolean} TBD.
|
|
335
332
|
*/
|
|
336
|
-
public pointerOver(pointerId: number | null = null) {
|
|
333
|
+
public pointerOver(pointerId: number | null = null): boolean {
|
|
337
334
|
if (!this.enabled) {
|
|
338
335
|
return false;
|
|
339
336
|
}
|
|
@@ -353,7 +350,7 @@ export class InputHandler {
|
|
|
353
350
|
* @param {number} pointerId - TBD.
|
|
354
351
|
* @returns {boolean} TBD.
|
|
355
352
|
*/
|
|
356
|
-
public pointerOut(pointerId: number | null = null) {
|
|
353
|
+
public pointerOut(pointerId: number | null = null): boolean {
|
|
357
354
|
if (!this.enabled) {
|
|
358
355
|
return false;
|
|
359
356
|
}
|
|
@@ -373,7 +370,7 @@ export class InputHandler {
|
|
|
373
370
|
* @param {number} pointerId - TBD.
|
|
374
371
|
* @returns {number} TBD.
|
|
375
372
|
*/
|
|
376
|
-
public pointerTimeOver(pointerId = 0) {
|
|
373
|
+
public pointerTimeOver(pointerId = 0): number {
|
|
377
374
|
return this.pointerData(pointerId).timeOver;
|
|
378
375
|
}
|
|
379
376
|
|
|
@@ -382,7 +379,7 @@ export class InputHandler {
|
|
|
382
379
|
* @param {number} pointerId - TBD.
|
|
383
380
|
* @returns {number} TBD.
|
|
384
381
|
*/
|
|
385
|
-
public pointerTimeOut(pointerId = 0) {
|
|
382
|
+
public pointerTimeOut(pointerId = 0): number {
|
|
386
383
|
return this.pointerData(pointerId).timeOut;
|
|
387
384
|
}
|
|
388
385
|
|
|
@@ -391,7 +388,7 @@ export class InputHandler {
|
|
|
391
388
|
* @param {number} pointerId - TBD.
|
|
392
389
|
* @returns {boolean} TBD.
|
|
393
390
|
*/
|
|
394
|
-
public pointerDragged(pointerId = 0) {
|
|
391
|
+
public pointerDragged(pointerId = 0): boolean {
|
|
395
392
|
return this.pointerData(pointerId).isDragged;
|
|
396
393
|
}
|
|
397
394
|
|
|
@@ -401,7 +398,7 @@ export class InputHandler {
|
|
|
401
398
|
* @param {boolean} fastTest - TBD.
|
|
402
399
|
* @returns {boolean} TBD.
|
|
403
400
|
*/
|
|
404
|
-
public checkPointerDown(pointer: Pointer, fastTest = false) {
|
|
401
|
+
public checkPointerDown(pointer: Pointer, fastTest = false): boolean {
|
|
405
402
|
if (
|
|
406
403
|
!pointer.isDown ||
|
|
407
404
|
!this.enabled ||
|
|
@@ -430,7 +427,7 @@ export class InputHandler {
|
|
|
430
427
|
* @param {boolean} fastTest - TBD.
|
|
431
428
|
* @returns {boolean} TBD.
|
|
432
429
|
*/
|
|
433
|
-
public checkPointerOver(pointer: Pointer, fastTest = false) {
|
|
430
|
+
public checkPointerOver(pointer: Pointer, fastTest = false): boolean {
|
|
434
431
|
if (
|
|
435
432
|
!this.enabled ||
|
|
436
433
|
!this.sprite ||
|
|
@@ -459,12 +456,12 @@ export class InputHandler {
|
|
|
459
456
|
* @param {Pointer} pointer - TBD.
|
|
460
457
|
* @returns {boolean} TBD.
|
|
461
458
|
*/
|
|
462
|
-
public checkPixel(x: number | null, y: number | null, pointer?:
|
|
459
|
+
public checkPixel(x: number | null, y: number | null, pointer?: Pointer): boolean {
|
|
463
460
|
// Grab a pixel from our image into the hitCanvas and then test it
|
|
464
461
|
if (this.sprite.texture.baseTexture.source) {
|
|
465
462
|
if (x === null || y === null) {
|
|
466
463
|
// Use the pointer parameter
|
|
467
|
-
this.game.input.getLocalPosition(this.sprite, pointer
|
|
464
|
+
this.game.input.getLocalPosition(this.sprite, pointer!, this._tempPoint);
|
|
468
465
|
x = this._tempPoint.x;
|
|
469
466
|
y = this._tempPoint.y;
|
|
470
467
|
}
|
|
@@ -493,10 +490,10 @@ export class InputHandler {
|
|
|
493
490
|
}
|
|
494
491
|
this._dx = x;
|
|
495
492
|
this._dy = y;
|
|
496
|
-
this.game.input.hitContext
|
|
497
|
-
this.game.input.hitContext
|
|
498
|
-
const rgb = this.game.input.hitContext
|
|
499
|
-
if (rgb.data[3] >= this.pixelPerfectAlpha) {
|
|
493
|
+
this.game.input.hitContext!.clearRect(0, 0, 1, 1);
|
|
494
|
+
this.game.input.hitContext!.drawImage(this.sprite.texture.baseTexture.source, x, y, 1, 1, 0, 0, 1, 1);
|
|
495
|
+
const rgb = this.game.input.hitContext!.getImageData(0, 0, 1, 1);
|
|
496
|
+
if (rgb.data[3]! >= this.pixelPerfectAlpha) {
|
|
500
497
|
return true;
|
|
501
498
|
}
|
|
502
499
|
}
|
|
@@ -508,12 +505,12 @@ export class InputHandler {
|
|
|
508
505
|
* @param {Pointer} pointer - TBD.
|
|
509
506
|
* @returns {boolean} TBD.
|
|
510
507
|
*/
|
|
511
|
-
public update(pointer: Pointer) {
|
|
508
|
+
public update(pointer: Pointer): boolean {
|
|
512
509
|
if (this.sprite === null || this.sprite.parent === undefined) {
|
|
513
510
|
// Abort. We've been destroyed.
|
|
514
511
|
return false;
|
|
515
512
|
}
|
|
516
|
-
if (!this.enabled || !this.sprite.visible || !this.sprite.parent
|
|
513
|
+
if (!this.enabled || !this.sprite.visible || !this.sprite.parent?.visible) {
|
|
517
514
|
this._pointerOutHandler(pointer);
|
|
518
515
|
return false;
|
|
519
516
|
}
|
|
@@ -545,7 +542,7 @@ export class InputHandler {
|
|
|
545
542
|
* @param {Pointer} pointer - TBD.
|
|
546
543
|
* @param {boolean} silent - TBD.
|
|
547
544
|
*/
|
|
548
|
-
public _pointerOverHandler(pointer: Pointer, silent: boolean) {
|
|
545
|
+
public _pointerOverHandler(pointer: Pointer, silent: boolean): void {
|
|
549
546
|
if (this.sprite === null) {
|
|
550
547
|
// Abort. We've been destroyed.
|
|
551
548
|
return;
|
|
@@ -566,7 +563,7 @@ export class InputHandler {
|
|
|
566
563
|
this.sprite.events.onInputOver$dispatch(this.sprite, pointer);
|
|
567
564
|
}
|
|
568
565
|
if (this.sprite.parent && this.sprite.parent.type === GROUP) {
|
|
569
|
-
this.sprite.parent.onChildInputOver.dispatch(this.sprite, pointer);
|
|
566
|
+
(this.sprite.parent as Group).onChildInputOver.dispatch(this.sprite, pointer);
|
|
570
567
|
}
|
|
571
568
|
}
|
|
572
569
|
}
|
|
@@ -576,7 +573,7 @@ export class InputHandler {
|
|
|
576
573
|
* @param {Pointer} pointer - TBD.
|
|
577
574
|
* @param {boolean} silent - TBD.
|
|
578
575
|
*/
|
|
579
|
-
public _pointerOutHandler(pointer: Pointer, silent = false) {
|
|
576
|
+
public _pointerOutHandler(pointer: Pointer, silent = false): void {
|
|
580
577
|
if (this.sprite === null) {
|
|
581
578
|
// Abort. We've been destroyed.
|
|
582
579
|
return;
|
|
@@ -592,7 +589,7 @@ export class InputHandler {
|
|
|
592
589
|
if (!silent && this.sprite && this.sprite.events) {
|
|
593
590
|
this.sprite.events.onInputOut$dispatch(this.sprite, pointer);
|
|
594
591
|
if (this.sprite && this.sprite.parent && this.sprite.parent.type === GROUP) {
|
|
595
|
-
this.sprite.parent.onChildInputOut.dispatch(this.sprite, pointer);
|
|
592
|
+
(this.sprite.parent as Group).onChildInputOut.dispatch(this.sprite, pointer);
|
|
596
593
|
}
|
|
597
594
|
}
|
|
598
595
|
}
|
|
@@ -601,7 +598,7 @@ export class InputHandler {
|
|
|
601
598
|
* TBD.
|
|
602
599
|
* @param {Pointer} pointer - TBD.
|
|
603
600
|
*/
|
|
604
|
-
public _touchedHandler(pointer: Pointer) {
|
|
601
|
+
public _touchedHandler(pointer: Pointer): void {
|
|
605
602
|
if (this.sprite === null) {
|
|
606
603
|
// Abort. We've been destroyed.
|
|
607
604
|
return;
|
|
@@ -621,7 +618,7 @@ export class InputHandler {
|
|
|
621
618
|
this.sprite.events.onInputDown$dispatch(this.sprite, pointer);
|
|
622
619
|
// The event above might have destroyed this sprite.
|
|
623
620
|
if (this.sprite && this.sprite.parent && this.sprite.parent.type === GROUP) {
|
|
624
|
-
this.sprite.parent.onChildInputDown.dispatch(this.sprite, pointer);
|
|
621
|
+
(this.sprite.parent as Group).onChildInputDown.dispatch(this.sprite, pointer);
|
|
625
622
|
}
|
|
626
623
|
// The events might have destroyed this sprite.
|
|
627
624
|
if (this.sprite === null) {
|
|
@@ -643,9 +640,6 @@ export class InputHandler {
|
|
|
643
640
|
}
|
|
644
641
|
}
|
|
645
642
|
}
|
|
646
|
-
if (this.bringToTop) {
|
|
647
|
-
this.sprite.bringToTop();
|
|
648
|
-
}
|
|
649
643
|
}
|
|
650
644
|
}
|
|
651
645
|
|
|
@@ -653,7 +647,7 @@ export class InputHandler {
|
|
|
653
647
|
* TBD.
|
|
654
648
|
* @param {Pointer} pointer - TBD.
|
|
655
649
|
*/
|
|
656
|
-
public dragTimeElapsed(pointer: Pointer) {
|
|
650
|
+
public dragTimeElapsed(pointer: Pointer): void {
|
|
657
651
|
this._dragTimePass = true;
|
|
658
652
|
if (this._pendingDrag && this.sprite) {
|
|
659
653
|
if (this._dragDistancePass) {
|
|
@@ -666,7 +660,7 @@ export class InputHandler {
|
|
|
666
660
|
* TBD.
|
|
667
661
|
* @param {Pointer} pointer - TBD.
|
|
668
662
|
*/
|
|
669
|
-
public _releasedHandler(pointer: Pointer) {
|
|
663
|
+
public _releasedHandler(pointer: Pointer): void {
|
|
670
664
|
if (this.sprite === null) {
|
|
671
665
|
// Abort. We've been destroyed.
|
|
672
666
|
return;
|
|
@@ -688,7 +682,7 @@ export class InputHandler {
|
|
|
688
682
|
this.sprite.events.onInputUp$dispatch(this.sprite, pointer, isOver);
|
|
689
683
|
}
|
|
690
684
|
if (this.sprite && this.sprite.parent && this.sprite.parent.type === GROUP) {
|
|
691
|
-
this.sprite.parent.onChildInputUp.dispatch(this.sprite, pointer, isOver);
|
|
685
|
+
(this.sprite.parent as Group).onChildInputUp.dispatch(this.sprite, pointer, isOver);
|
|
692
686
|
}
|
|
693
687
|
// The onInputUp event may have changed the sprite so that checkPointerOver is no longer true, so update it.
|
|
694
688
|
if (isOver) {
|
|
@@ -716,7 +710,7 @@ export class InputHandler {
|
|
|
716
710
|
* @param {boolean} fromStart - TBD.
|
|
717
711
|
* @returns {boolean} TBD.
|
|
718
712
|
*/
|
|
719
|
-
public updateDrag(pointer: Pointer, fromStart = false) {
|
|
713
|
+
public updateDrag(pointer: Pointer, fromStart = false): boolean {
|
|
720
714
|
if (pointer.isUp) {
|
|
721
715
|
this.stopDrag(pointer);
|
|
722
716
|
return false;
|
|
@@ -756,7 +750,7 @@ export class InputHandler {
|
|
|
756
750
|
* @param {number} delay - TBD.
|
|
757
751
|
* @returns {boolean} TBD.
|
|
758
752
|
*/
|
|
759
|
-
public justOver(pointerId = 0, delay = 500) {
|
|
753
|
+
public justOver(pointerId = 0, delay = 500): boolean {
|
|
760
754
|
return this.pointerData(pointerId).isOver && this.overDuration(pointerId) < delay;
|
|
761
755
|
}
|
|
762
756
|
|
|
@@ -766,7 +760,7 @@ export class InputHandler {
|
|
|
766
760
|
* @param {number} delay - TBD.
|
|
767
761
|
* @returns {boolean} TBD.
|
|
768
762
|
*/
|
|
769
|
-
public justOut(pointerId = 0, delay = 500) {
|
|
763
|
+
public justOut(pointerId = 0, delay = 500): boolean {
|
|
770
764
|
return this.pointerData(pointerId).isOut && this.game.time.time - this.pointerData(pointerId).timeOut < delay;
|
|
771
765
|
}
|
|
772
766
|
|
|
@@ -776,7 +770,7 @@ export class InputHandler {
|
|
|
776
770
|
* @param {number} delay - TBD.
|
|
777
771
|
* @returns {boolean} TBD.
|
|
778
772
|
*/
|
|
779
|
-
public justPressed(pointerId = 0, delay = 500) {
|
|
773
|
+
public justPressed(pointerId = 0, delay = 500): boolean {
|
|
780
774
|
return this.pointerData(pointerId).isDown && this.downDuration(pointerId) < delay;
|
|
781
775
|
}
|
|
782
776
|
|
|
@@ -786,7 +780,7 @@ export class InputHandler {
|
|
|
786
780
|
* @param {number} delay - TBD.
|
|
787
781
|
* @returns {boolean} TBD.
|
|
788
782
|
*/
|
|
789
|
-
public justReleased(pointerId = 0, delay = 500) {
|
|
783
|
+
public justReleased(pointerId = 0, delay = 500): boolean {
|
|
790
784
|
return this.pointerData(pointerId).isUp && this.game.time.time - this.pointerData(pointerId).timeUp < delay;
|
|
791
785
|
}
|
|
792
786
|
|
|
@@ -795,7 +789,7 @@ export class InputHandler {
|
|
|
795
789
|
* @param {number} pointerId - TBD.
|
|
796
790
|
* @returns {number} TBD.
|
|
797
791
|
*/
|
|
798
|
-
public overDuration(pointerId = 0) {
|
|
792
|
+
public overDuration(pointerId = 0): number {
|
|
799
793
|
if (this.pointerData(pointerId).isOver) {
|
|
800
794
|
return this.game.time.time - this.pointerData(pointerId).timeOver;
|
|
801
795
|
}
|
|
@@ -807,7 +801,7 @@ export class InputHandler {
|
|
|
807
801
|
* @param {number} pointerId - TBD.
|
|
808
802
|
* @returns {number} TBD.
|
|
809
803
|
*/
|
|
810
|
-
public downDuration(pointerId = 0) {
|
|
804
|
+
public downDuration(pointerId = 0): number {
|
|
811
805
|
if (this.pointerData(pointerId).isDown) {
|
|
812
806
|
return this.game.time.time - this.pointerData(pointerId).timeDown;
|
|
813
807
|
}
|
|
@@ -821,19 +815,19 @@ export class InputHandler {
|
|
|
821
815
|
* @param {boolean} pixelPerfect - TBD.
|
|
822
816
|
* @param {number} alphaThreshold - TBD.
|
|
823
817
|
* @param {Rectangle | null | undefined} boundsRect - TBD.
|
|
824
|
-
* @param {
|
|
818
|
+
* @param {Image | null | undefined} boundsSprite - TBD.
|
|
825
819
|
*/
|
|
826
820
|
public enableDrag(
|
|
827
821
|
lockCenter = false,
|
|
828
|
-
bringToTop
|
|
822
|
+
// Kept so the positional signature holds; this engine has no bringToTop to raise the sprite.
|
|
823
|
+
_bringToTop = false,
|
|
829
824
|
pixelPerfect = false,
|
|
830
825
|
alphaThreshold = 255,
|
|
831
826
|
boundsRect: Rectangle | null | undefined = null,
|
|
832
|
-
boundsSprite:
|
|
833
|
-
) {
|
|
827
|
+
boundsSprite: Image | null | undefined = null
|
|
828
|
+
): void {
|
|
834
829
|
this._dragPoint = new Point();
|
|
835
830
|
this.draggable = true;
|
|
836
|
-
this.bringToTop = bringToTop;
|
|
837
831
|
this.dragOffset = new Point();
|
|
838
832
|
this.dragFromCenter = lockCenter;
|
|
839
833
|
this.pixelPerfectClick = pixelPerfect;
|
|
@@ -849,7 +843,7 @@ export class InputHandler {
|
|
|
849
843
|
/**
|
|
850
844
|
* TBD.
|
|
851
845
|
*/
|
|
852
|
-
public disableDrag() {
|
|
846
|
+
public disableDrag(): void {
|
|
853
847
|
if (this._pointerData) {
|
|
854
848
|
for (let i = 0; i < 10; i += 1) {
|
|
855
849
|
this.pointerData(i).isDragged = false;
|
|
@@ -865,7 +859,7 @@ export class InputHandler {
|
|
|
865
859
|
* TBD.
|
|
866
860
|
* @param {Pointer} pointer - TBD.
|
|
867
861
|
*/
|
|
868
|
-
public startDrag(pointer: Pointer) {
|
|
862
|
+
public startDrag(pointer: Pointer): void {
|
|
869
863
|
const { x } = this.sprite;
|
|
870
864
|
const { y } = this.sprite;
|
|
871
865
|
this.isDragged = true;
|
|
@@ -883,10 +877,6 @@ export class InputHandler {
|
|
|
883
877
|
this.sprite.y - this.globalToLocalY(pointer.y)
|
|
884
878
|
);
|
|
885
879
|
this.updateDrag(pointer, true);
|
|
886
|
-
if (this.bringToTop) {
|
|
887
|
-
this._dragPhase = true;
|
|
888
|
-
this.sprite.parent.bringToTop(this.sprite);
|
|
889
|
-
}
|
|
890
880
|
this.dragStartPoint.setTo(x, y);
|
|
891
881
|
this.sprite.events.onDragStart$dispatch(this.sprite, pointer, x, y);
|
|
892
882
|
this._pendingDrag = false;
|
|
@@ -897,7 +887,7 @@ export class InputHandler {
|
|
|
897
887
|
* @param {number} x - TBD.
|
|
898
888
|
* @returns {number} TBD.
|
|
899
889
|
*/
|
|
900
|
-
public globalToLocalX(x: number) {
|
|
890
|
+
public globalToLocalX(x: number): number {
|
|
901
891
|
return x;
|
|
902
892
|
}
|
|
903
893
|
|
|
@@ -906,7 +896,7 @@ export class InputHandler {
|
|
|
906
896
|
* @param {number} y - TBD.
|
|
907
897
|
* @returns {number} TBD.
|
|
908
898
|
*/
|
|
909
|
-
public globalToLocalY(y: number) {
|
|
899
|
+
public globalToLocalY(y: number): number {
|
|
910
900
|
return y;
|
|
911
901
|
}
|
|
912
902
|
|
|
@@ -914,7 +904,7 @@ export class InputHandler {
|
|
|
914
904
|
* TBD.
|
|
915
905
|
* @param {Pointer} pointer - TBD.
|
|
916
906
|
*/
|
|
917
|
-
public stopDrag(pointer: Pointer) {
|
|
907
|
+
public stopDrag(pointer: Pointer): void {
|
|
918
908
|
this.isDragged = false;
|
|
919
909
|
this._draggedPointerID = -1;
|
|
920
910
|
this.pointerData(pointer.id).isDragged = false;
|
|
@@ -939,7 +929,7 @@ export class InputHandler {
|
|
|
939
929
|
* @param {boolean} allowHorizontal - TBD.
|
|
940
930
|
* @param {boolean} allowVertical - TBD.
|
|
941
931
|
*/
|
|
942
|
-
public setDragLock(allowHorizontal = true, allowVertical = true) {
|
|
932
|
+
public setDragLock(allowHorizontal = true, allowVertical = true): void {
|
|
943
933
|
this.allowHorizontalDrag = allowHorizontal;
|
|
944
934
|
this.allowVerticalDrag = allowVertical;
|
|
945
935
|
}
|
|
@@ -953,7 +943,14 @@ export class InputHandler {
|
|
|
953
943
|
* @param {number} snapOffsetX - TBD.
|
|
954
944
|
* @param {number} snapOffsetY - TBD.
|
|
955
945
|
*/
|
|
956
|
-
public enableSnap(
|
|
946
|
+
public enableSnap(
|
|
947
|
+
snapX: number,
|
|
948
|
+
snapY: number,
|
|
949
|
+
onDrag = true,
|
|
950
|
+
onRelease = false,
|
|
951
|
+
snapOffsetX = 0,
|
|
952
|
+
snapOffsetY = 0
|
|
953
|
+
): void {
|
|
957
954
|
this.snapX = snapX;
|
|
958
955
|
this.snapY = snapY;
|
|
959
956
|
this.snapOffsetX = snapOffsetX;
|
|
@@ -965,7 +962,7 @@ export class InputHandler {
|
|
|
965
962
|
/**
|
|
966
963
|
* TBD.
|
|
967
964
|
*/
|
|
968
|
-
public disableSnap() {
|
|
965
|
+
public disableSnap(): void {
|
|
969
966
|
this.snapOnDrag = false;
|
|
970
967
|
this.snapOnRelease = false;
|
|
971
968
|
}
|
|
@@ -973,32 +970,32 @@ export class InputHandler {
|
|
|
973
970
|
/**
|
|
974
971
|
* TBD.
|
|
975
972
|
*/
|
|
976
|
-
public checkBoundsRect() {
|
|
977
|
-
if (this.sprite.left < this.boundsRect
|
|
978
|
-
this.sprite.x = this.boundsRect
|
|
979
|
-
} else if (this.sprite.right > this.boundsRect
|
|
980
|
-
this.sprite.x = this.boundsRect
|
|
973
|
+
public checkBoundsRect(): void {
|
|
974
|
+
if (this.sprite.left < this.boundsRect!.left) {
|
|
975
|
+
this.sprite.x = this.boundsRect!.x + this.sprite.offsetX;
|
|
976
|
+
} else if (this.sprite.right > this.boundsRect!.right) {
|
|
977
|
+
this.sprite.x = this.boundsRect!.right - (this.sprite.width - this.sprite.offsetX);
|
|
981
978
|
}
|
|
982
|
-
if (this.sprite.top < this.boundsRect
|
|
983
|
-
this.sprite.y = this.boundsRect
|
|
984
|
-
} else if (this.sprite.bottom > this.boundsRect
|
|
985
|
-
this.sprite.y = this.boundsRect
|
|
979
|
+
if (this.sprite.top < this.boundsRect!.top) {
|
|
980
|
+
this.sprite.y = this.boundsRect!.top + this.sprite.offsetY;
|
|
981
|
+
} else if (this.sprite.bottom > this.boundsRect!.bottom) {
|
|
982
|
+
this.sprite.y = this.boundsRect!.bottom - (this.sprite.height - this.sprite.offsetY);
|
|
986
983
|
}
|
|
987
984
|
}
|
|
988
985
|
|
|
989
986
|
/**
|
|
990
987
|
* TBD.
|
|
991
988
|
*/
|
|
992
|
-
public checkBoundsSprite() {
|
|
993
|
-
if (this.sprite.left < this.boundsSprite
|
|
994
|
-
this.sprite.x = this.boundsSprite
|
|
995
|
-
} else if (this.sprite.right > this.boundsSprite
|
|
996
|
-
this.sprite.x = this.boundsSprite
|
|
989
|
+
public checkBoundsSprite(): void {
|
|
990
|
+
if (this.sprite.left < this.boundsSprite!.left) {
|
|
991
|
+
this.sprite.x = this.boundsSprite!.left + this.sprite.offsetX;
|
|
992
|
+
} else if (this.sprite.right > this.boundsSprite!.right) {
|
|
993
|
+
this.sprite.x = this.boundsSprite!.right - (this.sprite.width - this.sprite.offsetX);
|
|
997
994
|
}
|
|
998
|
-
if (this.sprite.top < this.boundsSprite
|
|
999
|
-
this.sprite.y = this.boundsSprite
|
|
1000
|
-
} else if (this.sprite.bottom > this.boundsSprite
|
|
1001
|
-
this.sprite.y = this.boundsSprite
|
|
995
|
+
if (this.sprite.top < this.boundsSprite!.top) {
|
|
996
|
+
this.sprite.y = this.boundsSprite!.top + this.sprite.offsetY;
|
|
997
|
+
} else if (this.sprite.bottom > this.boundsSprite!.bottom) {
|
|
998
|
+
this.sprite.y = this.boundsSprite!.bottom - (this.sprite.height - this.sprite.offsetY);
|
|
1002
999
|
}
|
|
1003
1000
|
}
|
|
1004
1001
|
}
|