@vpmedia/phaser 1.14.0 → 1.16.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/README.md +3 -3
- package/package.json +6 -5
- package/src/index.js +15 -18
- package/src/phaser/core/animation.js +102 -6
- package/src/phaser/core/animation_manager.js +88 -10
- package/src/phaser/core/animation_parser.js +5 -20
- package/src/phaser/core/array_set.js +51 -5
- package/src/phaser/core/cache.js +291 -6
- package/src/phaser/core/const.js +107 -4
- package/src/phaser/core/device.js +5 -6
- package/src/phaser/core/device_util.js +3 -25
- package/src/phaser/core/dom.js +127 -29
- package/src/phaser/core/event_manager.js +128 -6
- package/src/phaser/core/factory.js +69 -34
- package/src/phaser/core/frame.js +43 -6
- package/src/phaser/core/frame_data.js +55 -5
- package/src/phaser/core/frame_util.js +7 -14
- package/src/phaser/core/game.js +35 -7
- package/src/phaser/core/input.js +116 -17
- package/src/phaser/core/input_handler.js +242 -42
- package/src/phaser/core/input_mouse.js +68 -7
- package/src/phaser/core/input_mspointer.js +40 -9
- package/src/phaser/core/input_pointer.js +79 -17
- package/src/phaser/core/input_touch.js +42 -5
- package/src/phaser/core/loader.js +274 -101
- package/src/phaser/core/loader_parser.js +2 -14
- package/src/phaser/core/raf.js +16 -5
- package/src/phaser/core/scale_manager.js +204 -39
- package/src/phaser/core/scene.js +24 -5
- package/src/phaser/core/scene_manager.js +81 -11
- package/src/phaser/core/signal.js +88 -11
- package/src/phaser/core/signal_binding.js +35 -15
- package/src/phaser/core/sound.js +99 -10
- package/src/phaser/core/sound_manager.js +89 -13
- package/src/phaser/core/sound_sprite.js +20 -5
- package/src/phaser/core/stage.js +43 -7
- package/src/phaser/core/time.js +67 -5
- package/src/phaser/core/timer.js +107 -30
- package/src/phaser/core/timer_event.js +11 -6
- package/src/phaser/core/tween.js +124 -30
- package/src/phaser/core/tween_data.js +42 -18
- package/src/phaser/core/tween_easing.js +1 -39
- package/src/phaser/core/tween_manager.js +47 -5
- package/src/phaser/core/world.js +9 -6
- package/src/phaser/display/bitmap_text.js +92 -11
- package/src/phaser/display/button.js +64 -13
- package/src/phaser/display/canvas/buffer.js +16 -6
- package/src/phaser/display/canvas/graphics.js +1 -16
- package/src/phaser/display/canvas/masker.js +0 -8
- package/src/phaser/display/canvas/pool.js +0 -14
- package/src/phaser/display/canvas/renderer.js +28 -8
- package/src/phaser/display/canvas/tinter.js +4 -48
- package/src/phaser/display/canvas/util.js +0 -15
- package/src/phaser/display/display_object.js +192 -20
- package/src/phaser/display/graphics.js +162 -27
- package/src/phaser/display/graphics_data.js +14 -6
- package/src/phaser/display/graphics_data_util.js +2 -9
- package/src/phaser/display/group.js +75 -10
- package/src/phaser/display/image.js +86 -10
- package/src/phaser/display/sprite_batch.js +3 -9
- package/src/phaser/display/sprite_util.js +3 -28
- package/src/phaser/display/text.js +332 -32
- package/src/phaser/display/webgl/abstract_filter.js +8 -7
- package/src/phaser/display/webgl/base_texture.js +20 -12
- package/src/phaser/display/webgl/blend_manager.js +14 -7
- package/src/phaser/display/webgl/earcut.js +4 -50
- package/src/phaser/display/webgl/earcut_node.js +6 -7
- package/src/phaser/display/webgl/fast_sprite_batch.js +34 -11
- package/src/phaser/display/webgl/filter_manager.js +25 -7
- package/src/phaser/display/webgl/filter_texture.js +21 -22
- package/src/phaser/display/webgl/graphics.js +5 -40
- package/src/phaser/display/webgl/graphics_data.js +10 -7
- package/src/phaser/display/webgl/mask_manager.js +0 -8
- package/src/phaser/display/webgl/render_texture.js +33 -21
- package/src/phaser/display/webgl/renderer.js +38 -11
- package/src/phaser/display/webgl/shader/complex.js +10 -6
- package/src/phaser/display/webgl/shader/fast.js +10 -6
- package/src/phaser/display/webgl/shader/normal.js +23 -32
- package/src/phaser/display/webgl/shader/primitive.js +10 -6
- package/src/phaser/display/webgl/shader/strip.js +10 -6
- package/src/phaser/display/webgl/shader_manager.js +18 -6
- package/src/phaser/display/webgl/sprite_batch.js +41 -8
- package/src/phaser/display/webgl/stencil_manager.js +28 -6
- package/src/phaser/display/webgl/texture.js +28 -15
- package/src/phaser/display/webgl/texture_util.js +0 -8
- package/src/phaser/display/webgl/util.js +0 -11
- package/src/phaser/geom/circle.js +123 -19
- package/src/phaser/geom/ellipse.js +39 -19
- package/src/phaser/geom/line.js +148 -17
- package/src/phaser/geom/matrix.js +73 -7
- package/src/phaser/geom/point.js +152 -7
- package/src/phaser/geom/polygon.js +42 -14
- package/src/phaser/geom/rectangle.js +233 -7
- package/src/phaser/geom/rounded_rectangle.js +10 -7
- package/src/phaser/geom/util/circle.js +3 -16
- package/src/phaser/geom/util/ellipse.js +0 -8
- package/src/phaser/geom/util/line.js +5 -19
- package/src/phaser/geom/util/matrix.js +1 -10
- package/src/phaser/geom/util/point.js +0 -26
- package/src/phaser/geom/util/polygon.js +1 -8
- package/src/phaser/geom/util/rectangle.js +1 -23
- package/src/phaser/geom/util/rounded_rectangle.js +1 -8
- package/src/phaser/util/math.js +3 -43
- package/{types → typedefs}/global.d.ts +1 -1
- package/types/index.d.ts +2 -1
- package/types/index.d.ts.map +1 -1
- package/types/phaser/core/animation.d.ts +106 -5
- package/types/phaser/core/animation.d.ts.map +1 -1
- package/types/phaser/core/animation_manager.d.ts +88 -1
- package/types/phaser/core/animation_manager.d.ts.map +1 -1
- package/types/phaser/core/animation_parser.d.ts +5 -6
- package/types/phaser/core/animation_parser.d.ts.map +1 -1
- package/types/phaser/core/array_set.d.ts +53 -7
- package/types/phaser/core/array_set.d.ts.map +1 -1
- package/types/phaser/core/cache.d.ts +348 -58
- package/types/phaser/core/cache.d.ts.map +1 -1
- package/types/phaser/core/const.d.ts +143 -40
- package/types/phaser/core/const.d.ts.map +1 -1
- package/types/phaser/core/device.d.ts +2 -5
- package/types/phaser/core/device.d.ts.map +1 -1
- package/types/phaser/core/device_util.d.ts +1 -10
- package/types/phaser/core/device_util.d.ts.map +1 -1
- package/types/phaser/core/dom.d.ts +122 -3
- package/types/phaser/core/dom.d.ts.map +1 -1
- package/types/phaser/core/event_manager.d.ts +142 -15
- package/types/phaser/core/event_manager.d.ts.map +1 -1
- package/types/phaser/core/factory.d.ts +74 -7
- package/types/phaser/core/factory.d.ts.map +1 -1
- package/types/phaser/core/frame.d.ts +68 -26
- package/types/phaser/core/frame.d.ts.map +1 -1
- package/types/phaser/core/frame_data.d.ts +61 -9
- package/types/phaser/core/frame_data.d.ts.map +1 -1
- package/types/phaser/core/frame_util.d.ts +10 -10
- package/types/phaser/core/frame_util.d.ts.map +1 -1
- package/types/phaser/core/game.d.ts +54 -20
- package/types/phaser/core/game.d.ts.map +1 -1
- package/types/phaser/core/input.d.ts +132 -21
- package/types/phaser/core/input.d.ts.map +1 -1
- package/types/phaser/core/input_handler.d.ts +258 -25
- package/types/phaser/core/input_handler.d.ts.map +1 -1
- package/types/phaser/core/input_mouse.d.ts +59 -12
- package/types/phaser/core/input_mouse.d.ts.map +1 -1
- package/types/phaser/core/input_mspointer.d.ts +49 -15
- package/types/phaser/core/input_mspointer.d.ts.map +1 -1
- package/types/phaser/core/input_pointer.d.ts +80 -4
- package/types/phaser/core/input_pointer.d.ts.map +1 -1
- package/types/phaser/core/input_touch.d.ts +52 -15
- package/types/phaser/core/input_touch.d.ts.map +1 -1
- package/types/phaser/core/loader.d.ts +268 -23
- package/types/phaser/core/loader.d.ts.map +1 -1
- package/types/phaser/core/loader_parser.d.ts +0 -4
- package/types/phaser/core/loader_parser.d.ts.map +1 -1
- package/types/phaser/core/raf.d.ts +17 -7
- package/types/phaser/core/raf.d.ts.map +1 -1
- package/types/phaser/core/scale_manager.d.ts +210 -15
- package/types/phaser/core/scale_manager.d.ts.map +1 -1
- package/types/phaser/core/scene.d.ts +21 -5
- package/types/phaser/core/scene.d.ts.map +1 -1
- package/types/phaser/core/scene_manager.d.ts +90 -10
- package/types/phaser/core/scene_manager.d.ts.map +1 -1
- package/types/phaser/core/signal.d.ts +95 -11
- package/types/phaser/core/signal.d.ts.map +1 -1
- package/types/phaser/core/signal_binding.d.ts +35 -6
- package/types/phaser/core/signal_binding.d.ts.map +1 -1
- package/types/phaser/core/sound.d.ts +111 -14
- package/types/phaser/core/sound.d.ts.map +1 -1
- package/types/phaser/core/sound_manager.d.ts +94 -8
- package/types/phaser/core/sound_manager.d.ts.map +1 -1
- package/types/phaser/core/sound_sprite.d.ts +22 -8
- package/types/phaser/core/sound_sprite.d.ts.map +1 -1
- package/types/phaser/core/stage.d.ts +32 -3
- package/types/phaser/core/stage.d.ts.map +1 -1
- package/types/phaser/core/time.d.ts +73 -6
- package/types/phaser/core/time.d.ts.map +1 -1
- package/types/phaser/core/timer.d.ts +103 -2
- package/types/phaser/core/timer.d.ts.map +1 -1
- package/types/phaser/core/timer_event.d.ts +11 -5
- package/types/phaser/core/timer_event.d.ts.map +1 -1
- package/types/phaser/core/tween.d.ts +123 -3
- package/types/phaser/core/tween.d.ts.map +1 -1
- package/types/phaser/core/tween_data.d.ts +42 -3
- package/types/phaser/core/tween_data.d.ts.map +1 -1
- package/types/phaser/core/tween_easing.d.ts +0 -36
- package/types/phaser/core/tween_easing.d.ts.map +1 -1
- package/types/phaser/core/tween_manager.d.ts +49 -2
- package/types/phaser/core/tween_manager.d.ts.map +1 -1
- package/types/phaser/core/world.d.ts +9 -1
- package/types/phaser/core/world.d.ts.map +1 -1
- package/types/phaser/display/bitmap_text.d.ts +89 -12
- package/types/phaser/display/bitmap_text.d.ts.map +1 -1
- package/types/phaser/display/button.d.ts +68 -11
- package/types/phaser/display/button.d.ts.map +1 -1
- package/types/phaser/display/canvas/buffer.d.ts +21 -5
- package/types/phaser/display/canvas/buffer.d.ts.map +1 -1
- package/types/phaser/display/canvas/graphics.d.ts +0 -3
- package/types/phaser/display/canvas/graphics.d.ts.map +1 -1
- package/types/phaser/display/canvas/masker.d.ts +0 -2
- package/types/phaser/display/canvas/masker.d.ts.map +1 -1
- package/types/phaser/display/canvas/pool.d.ts +0 -13
- package/types/phaser/display/canvas/pool.d.ts.map +1 -1
- package/types/phaser/display/canvas/renderer.d.ts +30 -3
- package/types/phaser/display/canvas/renderer.d.ts.map +1 -1
- package/types/phaser/display/canvas/tinter.d.ts +0 -5
- package/types/phaser/display/canvas/tinter.d.ts.map +1 -1
- package/types/phaser/display/canvas/util.d.ts +0 -9
- package/types/phaser/display/canvas/util.d.ts.map +1 -1
- package/types/phaser/display/display_object.d.ts +196 -9
- package/types/phaser/display/display_object.d.ts.map +1 -1
- package/types/phaser/display/graphics.d.ts +142 -16
- package/types/phaser/display/graphics.d.ts.map +1 -1
- package/types/phaser/display/graphics_data.d.ts +15 -1
- package/types/phaser/display/graphics_data.d.ts.map +1 -1
- package/types/phaser/display/graphics_data_util.d.ts +3 -3
- package/types/phaser/display/graphics_data_util.d.ts.map +1 -1
- package/types/phaser/display/group.d.ts +68 -6
- package/types/phaser/display/group.d.ts.map +1 -1
- package/types/phaser/display/image.d.ts +77 -15
- package/types/phaser/display/image.d.ts.map +1 -1
- package/types/phaser/display/sprite_batch.d.ts +4 -4
- package/types/phaser/display/sprite_batch.d.ts.map +1 -1
- package/types/phaser/display/sprite_util.d.ts +0 -5
- package/types/phaser/display/sprite_util.d.ts.map +1 -1
- package/types/phaser/display/text.d.ts +373 -53
- package/types/phaser/display/text.d.ts.map +1 -1
- package/types/phaser/display/webgl/abstract_filter.d.ts +8 -6
- package/types/phaser/display/webgl/abstract_filter.d.ts.map +1 -1
- package/types/phaser/display/webgl/base_texture.d.ts +20 -1
- package/types/phaser/display/webgl/base_texture.d.ts.map +1 -1
- package/types/phaser/display/webgl/blend_manager.d.ts +11 -6
- package/types/phaser/display/webgl/blend_manager.d.ts.map +1 -1
- package/types/phaser/display/webgl/earcut.d.ts +0 -27
- package/types/phaser/display/webgl/earcut.d.ts.map +1 -1
- package/types/phaser/display/webgl/earcut_node.d.ts +9 -9
- package/types/phaser/display/webgl/earcut_node.d.ts.map +1 -1
- package/types/phaser/display/webgl/fast_sprite_batch.d.ts +33 -6
- package/types/phaser/display/webgl/fast_sprite_batch.d.ts.map +1 -1
- package/types/phaser/display/webgl/filter_manager.d.ts +23 -7
- package/types/phaser/display/webgl/filter_manager.d.ts.map +1 -1
- package/types/phaser/display/webgl/filter_texture.d.ts +21 -3
- package/types/phaser/display/webgl/filter_texture.d.ts.map +1 -1
- package/types/phaser/display/webgl/graphics.d.ts +0 -12
- package/types/phaser/display/webgl/graphics.d.ts.map +1 -1
- package/types/phaser/display/webgl/graphics_data.d.ts +12 -8
- package/types/phaser/display/webgl/graphics_data.d.ts.map +1 -1
- package/types/phaser/display/webgl/mask_manager.d.ts +0 -2
- package/types/phaser/display/webgl/mask_manager.d.ts.map +1 -1
- package/types/phaser/display/webgl/render_texture.d.ts +31 -4
- package/types/phaser/display/webgl/render_texture.d.ts.map +1 -1
- package/types/phaser/display/webgl/renderer.d.ts +42 -5
- package/types/phaser/display/webgl/renderer.d.ts.map +1 -1
- package/types/phaser/display/webgl/shader/complex.d.ts +12 -2
- package/types/phaser/display/webgl/shader/complex.d.ts.map +1 -1
- package/types/phaser/display/webgl/shader/fast.d.ts +12 -2
- package/types/phaser/display/webgl/shader/fast.d.ts.map +1 -1
- package/types/phaser/display/webgl/shader/normal.d.ts +21 -1
- package/types/phaser/display/webgl/shader/normal.d.ts.map +1 -1
- package/types/phaser/display/webgl/shader/primitive.d.ts +12 -2
- package/types/phaser/display/webgl/shader/primitive.d.ts.map +1 -1
- package/types/phaser/display/webgl/shader/strip.d.ts +12 -2
- package/types/phaser/display/webgl/shader/strip.d.ts.map +1 -1
- package/types/phaser/display/webgl/shader_manager.d.ts +20 -5
- package/types/phaser/display/webgl/shader_manager.d.ts.map +1 -1
- package/types/phaser/display/webgl/sprite_batch.d.ts +38 -1
- package/types/phaser/display/webgl/sprite_batch.d.ts.map +1 -1
- package/types/phaser/display/webgl/stencil_manager.d.ts +25 -0
- package/types/phaser/display/webgl/stencil_manager.d.ts.map +1 -1
- package/types/phaser/display/webgl/texture.d.ts +22 -1
- package/types/phaser/display/webgl/texture.d.ts.map +1 -1
- package/types/phaser/display/webgl/texture_util.d.ts +0 -2
- package/types/phaser/display/webgl/texture_util.d.ts.map +1 -1
- package/types/phaser/display/webgl/util.d.ts +0 -10
- package/types/phaser/display/webgl/util.d.ts.map +1 -1
- package/types/phaser/geom/circle.d.ts +130 -10
- package/types/phaser/geom/circle.d.ts.map +1 -1
- package/types/phaser/geom/ellipse.d.ts +42 -6
- package/types/phaser/geom/ellipse.d.ts.map +1 -1
- package/types/phaser/geom/line.d.ts +159 -14
- package/types/phaser/geom/line.d.ts.map +1 -1
- package/types/phaser/geom/matrix.d.ts +84 -12
- package/types/phaser/geom/matrix.d.ts.map +1 -1
- package/types/phaser/geom/point.d.ts +170 -19
- package/types/phaser/geom/point.d.ts.map +1 -1
- package/types/phaser/geom/polygon.d.ts +45 -5
- package/types/phaser/geom/polygon.d.ts.map +1 -1
- package/types/phaser/geom/rectangle.d.ts +253 -21
- package/types/phaser/geom/rectangle.d.ts.map +1 -1
- package/types/phaser/geom/rounded_rectangle.d.ts +11 -2
- package/types/phaser/geom/rounded_rectangle.d.ts.map +1 -1
- package/types/phaser/geom/util/circle.d.ts +3 -10
- package/types/phaser/geom/util/circle.d.ts.map +1 -1
- package/types/phaser/geom/util/ellipse.d.ts +0 -7
- package/types/phaser/geom/util/ellipse.d.ts.map +1 -1
- package/types/phaser/geom/util/line.d.ts +5 -10
- package/types/phaser/geom/util/line.d.ts.map +1 -1
- package/types/phaser/geom/util/matrix.d.ts +0 -3
- package/types/phaser/geom/util/matrix.d.ts.map +1 -1
- package/types/phaser/geom/util/point.d.ts +0 -20
- package/types/phaser/geom/util/point.d.ts.map +1 -1
- package/types/phaser/geom/util/polygon.d.ts +0 -1
- package/types/phaser/geom/util/polygon.d.ts.map +1 -1
- package/types/phaser/geom/util/rectangle.d.ts +0 -16
- package/types/phaser/geom/util/rectangle.d.ts.map +1 -1
- package/types/phaser/geom/util/rounded_rectangle.d.ts +0 -1
- package/types/phaser/geom/util/rounded_rectangle.d.ts.map +1 -1
- package/types/phaser/util/math.d.ts +0 -27
- package/types/phaser/util/math.d.ts.map +1 -1
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @copyright Copyright (c) 2018-present Richard Davey, Photon Storm Ltd., Andras Csizmadia <andras@vpmedia.hu> (www.vpmedia.hu)
|
|
3
|
-
* @author Andras Csizmadia <andras@vpmedia.hu>
|
|
4
|
-
* @author Richard Davey <rich@photonstorm.com>
|
|
5
|
-
*/
|
|
6
1
|
import { Point } from '../geom/point';
|
|
7
2
|
import { GROUP } from './const';
|
|
8
3
|
import { distance } from '../util/math';
|
|
4
|
+
import { Pointer } from './input_pointer';
|
|
5
|
+
import { Rectangle } from '../geom/rectangle';
|
|
6
|
+
import { DisplayObject } from '../display/display_object';
|
|
9
7
|
|
|
10
8
|
export class InputHandler {
|
|
9
|
+
/**
|
|
10
|
+
* TBD.
|
|
11
|
+
* @param sprite
|
|
12
|
+
*/
|
|
11
13
|
constructor(sprite) {
|
|
12
14
|
this.sprite = sprite;
|
|
13
15
|
this.game = sprite.game;
|
|
@@ -69,6 +71,12 @@ export class InputHandler {
|
|
|
69
71
|
});
|
|
70
72
|
}
|
|
71
73
|
|
|
74
|
+
/**
|
|
75
|
+
* TBD.
|
|
76
|
+
* @param {number} priority - TBD.
|
|
77
|
+
* @param {boolean} useHandCursor - TBD.
|
|
78
|
+
* @returns {DisplayObject} TBD.
|
|
79
|
+
*/
|
|
72
80
|
start(priority = 0, useHandCursor = false) {
|
|
73
81
|
// Turning on
|
|
74
82
|
if (this.enabled === false) {
|
|
@@ -102,6 +110,9 @@ export class InputHandler {
|
|
|
102
110
|
return this.sprite;
|
|
103
111
|
}
|
|
104
112
|
|
|
113
|
+
/**
|
|
114
|
+
* TBD.
|
|
115
|
+
*/
|
|
105
116
|
addedToGroup() {
|
|
106
117
|
if (this._dragPhase) {
|
|
107
118
|
return;
|
|
@@ -111,6 +122,9 @@ export class InputHandler {
|
|
|
111
122
|
}
|
|
112
123
|
}
|
|
113
124
|
|
|
125
|
+
/**
|
|
126
|
+
* TBD.
|
|
127
|
+
*/
|
|
114
128
|
removedFromGroup() {
|
|
115
129
|
if (this._dragPhase) {
|
|
116
130
|
return;
|
|
@@ -123,6 +137,9 @@ export class InputHandler {
|
|
|
123
137
|
}
|
|
124
138
|
}
|
|
125
139
|
|
|
140
|
+
/**
|
|
141
|
+
* TBD.
|
|
142
|
+
*/
|
|
126
143
|
reset() {
|
|
127
144
|
this.enabled = false;
|
|
128
145
|
for (let i = 0; i < 10; i += 1) {
|
|
@@ -144,6 +161,9 @@ export class InputHandler {
|
|
|
144
161
|
}
|
|
145
162
|
}
|
|
146
163
|
|
|
164
|
+
/**
|
|
165
|
+
* TBD.
|
|
166
|
+
*/
|
|
147
167
|
stop() {
|
|
148
168
|
if (this.enabled) {
|
|
149
169
|
this.enabled = false;
|
|
@@ -151,6 +171,9 @@ export class InputHandler {
|
|
|
151
171
|
}
|
|
152
172
|
}
|
|
153
173
|
|
|
174
|
+
/**
|
|
175
|
+
* TBD.
|
|
176
|
+
*/
|
|
154
177
|
destroy() {
|
|
155
178
|
if (this.sprite) {
|
|
156
179
|
if (this._setHandCursor) {
|
|
@@ -166,6 +189,13 @@ export class InputHandler {
|
|
|
166
189
|
}
|
|
167
190
|
}
|
|
168
191
|
|
|
192
|
+
/**
|
|
193
|
+
* TBD.
|
|
194
|
+
* @param {number} highestID - TBD.
|
|
195
|
+
* @param {number} highestRenderID - TBD.
|
|
196
|
+
* @param {boolean} includePixelPerfect - TBD.
|
|
197
|
+
* @returns {boolean} TBD.
|
|
198
|
+
*/
|
|
169
199
|
validForInput(highestID, highestRenderID, includePixelPerfect = true) {
|
|
170
200
|
if (
|
|
171
201
|
!this.enabled ||
|
|
@@ -180,43 +210,79 @@ export class InputHandler {
|
|
|
180
210
|
if (!includePixelPerfect && (this.pixelPerfectClick || this.pixelPerfectOver)) {
|
|
181
211
|
return false;
|
|
182
212
|
}
|
|
183
|
-
if (
|
|
184
|
-
this.priorityID > highestID ||
|
|
185
|
-
(this.priorityID === highestID && this.sprite.renderOrderID > highestRenderID)
|
|
186
|
-
) {
|
|
213
|
+
if (this.priorityID > highestID || (this.priorityID === highestID && this.sprite.renderOrderID > highestRenderID)) {
|
|
187
214
|
return true;
|
|
188
215
|
}
|
|
189
216
|
return false;
|
|
190
217
|
}
|
|
191
218
|
|
|
219
|
+
/**
|
|
220
|
+
* TBD.
|
|
221
|
+
* @returns {boolean} TBD.
|
|
222
|
+
*/
|
|
192
223
|
isPixelPerfect() {
|
|
193
224
|
return this.pixelPerfectClick || this.pixelPerfectOver;
|
|
194
225
|
}
|
|
195
226
|
|
|
227
|
+
/**
|
|
228
|
+
* TBD.
|
|
229
|
+
* @param {number} pointerId - TBD.
|
|
230
|
+
* @returns {number} TBD.
|
|
231
|
+
*/
|
|
196
232
|
pointerX(pointerId = 0) {
|
|
197
233
|
return this._pointerData[pointerId].x;
|
|
198
234
|
}
|
|
199
235
|
|
|
236
|
+
/**
|
|
237
|
+
* TBD.
|
|
238
|
+
* @param {number} pointerId - TBD.
|
|
239
|
+
* @returns {number} TBD.
|
|
240
|
+
*/
|
|
200
241
|
pointerY(pointerId = 0) {
|
|
201
242
|
return this._pointerData[pointerId].y;
|
|
202
243
|
}
|
|
203
244
|
|
|
245
|
+
/**
|
|
246
|
+
* TBD.
|
|
247
|
+
* @param {number} pointerId - TBD.
|
|
248
|
+
* @returns {boolean} TBD.
|
|
249
|
+
*/
|
|
204
250
|
pointerDown(pointerId = 0) {
|
|
205
251
|
return this._pointerData[pointerId].isDown;
|
|
206
252
|
}
|
|
207
253
|
|
|
254
|
+
/**
|
|
255
|
+
* TBD.
|
|
256
|
+
* @param {number} pointerId - TBD.
|
|
257
|
+
* @returns {boolean} TBD.
|
|
258
|
+
*/
|
|
208
259
|
pointerUp(pointerId = 0) {
|
|
209
260
|
return this._pointerData[pointerId].isUp;
|
|
210
261
|
}
|
|
211
262
|
|
|
263
|
+
/**
|
|
264
|
+
* TBD.
|
|
265
|
+
* @param {number} pointerId - TBD.
|
|
266
|
+
* @returns {number} TBD.
|
|
267
|
+
*/
|
|
212
268
|
pointerTimeDown(pointerId = 0) {
|
|
213
269
|
return this._pointerData[pointerId].timeDown;
|
|
214
270
|
}
|
|
215
271
|
|
|
272
|
+
/**
|
|
273
|
+
* TBD.
|
|
274
|
+
* @param {number} pointerId - TBD.
|
|
275
|
+
* @returns {number} TBD.
|
|
276
|
+
*/
|
|
216
277
|
pointerTimeUp(pointerId = 0) {
|
|
217
278
|
return this._pointerData[pointerId].timeUp;
|
|
218
279
|
}
|
|
219
280
|
|
|
281
|
+
/**
|
|
282
|
+
* TBD.
|
|
283
|
+
* @param {number} pointerId - TBD.
|
|
284
|
+
* @returns {boolean} TBD.
|
|
285
|
+
*/
|
|
220
286
|
pointerOver(pointerId) {
|
|
221
287
|
if (!this.enabled) {
|
|
222
288
|
return false;
|
|
@@ -232,6 +298,11 @@ export class InputHandler {
|
|
|
232
298
|
return this._pointerData[pointerId].isOver;
|
|
233
299
|
}
|
|
234
300
|
|
|
301
|
+
/**
|
|
302
|
+
* TBD.
|
|
303
|
+
* @param {number} pointerId - TBD.
|
|
304
|
+
* @returns {boolean} TBD.
|
|
305
|
+
*/
|
|
235
306
|
pointerOut(pointerId) {
|
|
236
307
|
if (!this.enabled) {
|
|
237
308
|
return false;
|
|
@@ -246,19 +317,40 @@ export class InputHandler {
|
|
|
246
317
|
return this._pointerData[pointerId].isOut;
|
|
247
318
|
}
|
|
248
319
|
|
|
320
|
+
/**
|
|
321
|
+
* TBD.
|
|
322
|
+
* @param {number} pointerId - TBD.
|
|
323
|
+
* @returns {number} TBD.
|
|
324
|
+
*/
|
|
249
325
|
pointerTimeOver(pointerId = 0) {
|
|
250
326
|
return this._pointerData[pointerId].timeOver;
|
|
251
327
|
}
|
|
252
328
|
|
|
329
|
+
/**
|
|
330
|
+
* TBD.
|
|
331
|
+
* @param {number} pointerId - TBD.
|
|
332
|
+
* @returns {number} TBD.
|
|
333
|
+
*/
|
|
253
334
|
pointerTimeOut(pointerId = 0) {
|
|
254
335
|
return this._pointerData[pointerId].timeOut;
|
|
255
336
|
}
|
|
256
337
|
|
|
338
|
+
/**
|
|
339
|
+
* TBD.
|
|
340
|
+
* @param {number} pointerId - TBD.
|
|
341
|
+
* @returns {boolean} TBD.
|
|
342
|
+
*/
|
|
257
343
|
pointerDragged(pointerId = 0) {
|
|
258
344
|
return this._pointerData[pointerId].isDragged;
|
|
259
345
|
}
|
|
260
346
|
|
|
261
|
-
|
|
347
|
+
/**
|
|
348
|
+
* TBD.
|
|
349
|
+
* @param {Pointer} pointer - TBD.
|
|
350
|
+
* @param {boolean} fastTest - TBD.
|
|
351
|
+
* @returns {boolean} TBD.
|
|
352
|
+
*/
|
|
353
|
+
checkPointerDown(pointer, fastTest = false) {
|
|
262
354
|
if (
|
|
263
355
|
!pointer.isDown ||
|
|
264
356
|
!this.enabled ||
|
|
@@ -281,7 +373,13 @@ export class InputHandler {
|
|
|
281
373
|
return false;
|
|
282
374
|
}
|
|
283
375
|
|
|
284
|
-
|
|
376
|
+
/**
|
|
377
|
+
* TBD.
|
|
378
|
+
* @param {Pointer} pointer - TBD.
|
|
379
|
+
* @param {boolean} fastTest - TBD.
|
|
380
|
+
* @returns {boolean} TBD.
|
|
381
|
+
*/
|
|
382
|
+
checkPointerOver(pointer, fastTest = false) {
|
|
285
383
|
if (
|
|
286
384
|
!this.enabled ||
|
|
287
385
|
!this.sprite ||
|
|
@@ -303,6 +401,13 @@ export class InputHandler {
|
|
|
303
401
|
return false;
|
|
304
402
|
}
|
|
305
403
|
|
|
404
|
+
/**
|
|
405
|
+
* TBD.
|
|
406
|
+
* @param {number} x - TBD.
|
|
407
|
+
* @param {number} y - TBD.
|
|
408
|
+
* @param {Pointer} pointer - TBD.
|
|
409
|
+
* @returns {boolean} TBD.
|
|
410
|
+
*/
|
|
306
411
|
checkPixel(x, y, pointer) {
|
|
307
412
|
// Grab a pixel from our image into the hitCanvas and then test it
|
|
308
413
|
if (this.sprite.texture.baseTexture.source) {
|
|
@@ -338,17 +443,7 @@ export class InputHandler {
|
|
|
338
443
|
this._dx = x;
|
|
339
444
|
this._dy = y;
|
|
340
445
|
this.game.input.hitContext.clearRect(0, 0, 1, 1);
|
|
341
|
-
this.game.input.hitContext.drawImage(
|
|
342
|
-
this.sprite.texture.baseTexture.source,
|
|
343
|
-
x,
|
|
344
|
-
y,
|
|
345
|
-
1,
|
|
346
|
-
1,
|
|
347
|
-
0,
|
|
348
|
-
0,
|
|
349
|
-
1,
|
|
350
|
-
1
|
|
351
|
-
);
|
|
446
|
+
this.game.input.hitContext.drawImage(this.sprite.texture.baseTexture.source, x, y, 1, 1, 0, 0, 1, 1);
|
|
352
447
|
const rgb = this.game.input.hitContext.getImageData(0, 0, 1, 1);
|
|
353
448
|
if (rgb.data[3] >= this.pixelPerfectAlpha) {
|
|
354
449
|
return true;
|
|
@@ -357,6 +452,11 @@ export class InputHandler {
|
|
|
357
452
|
return false;
|
|
358
453
|
}
|
|
359
454
|
|
|
455
|
+
/**
|
|
456
|
+
* TBD.
|
|
457
|
+
* @param {Pointer} pointer - TBD.
|
|
458
|
+
* @returns {boolean} TBD.
|
|
459
|
+
*/
|
|
360
460
|
update(pointer) {
|
|
361
461
|
if (this.sprite === null || this.sprite.parent === undefined) {
|
|
362
462
|
// Abort. We've been destroyed.
|
|
@@ -369,8 +469,7 @@ export class InputHandler {
|
|
|
369
469
|
if (this._pendingDrag) {
|
|
370
470
|
if (!this._dragDistancePass) {
|
|
371
471
|
this._dragDistancePass =
|
|
372
|
-
distance(pointer.x, pointer.y, this.downPoint.x, this.downPoint.y) >=
|
|
373
|
-
this.dragDistanceThreshold;
|
|
472
|
+
distance(pointer.x, pointer.y, this.downPoint.x, this.downPoint.y) >= this.dragDistanceThreshold;
|
|
374
473
|
}
|
|
375
474
|
if (this._dragDistancePass && this._dragTimePass) {
|
|
376
475
|
this.startDrag(pointer);
|
|
@@ -390,6 +489,11 @@ export class InputHandler {
|
|
|
390
489
|
return false;
|
|
391
490
|
}
|
|
392
491
|
|
|
492
|
+
/**
|
|
493
|
+
* TBD.
|
|
494
|
+
* @param {Pointer} pointer - TBD.
|
|
495
|
+
* @param {boolean} silent - TBD.
|
|
496
|
+
*/
|
|
393
497
|
_pointerOverHandler(pointer, silent) {
|
|
394
498
|
if (this.sprite === null) {
|
|
395
499
|
// Abort. We've been destroyed.
|
|
@@ -416,6 +520,11 @@ export class InputHandler {
|
|
|
416
520
|
}
|
|
417
521
|
}
|
|
418
522
|
|
|
523
|
+
/**
|
|
524
|
+
* TBD.
|
|
525
|
+
* @param {Pointer} pointer - TBD.
|
|
526
|
+
* @param {boolean} silent - TBD.
|
|
527
|
+
*/
|
|
419
528
|
_pointerOutHandler(pointer, silent) {
|
|
420
529
|
if (this.sprite === null) {
|
|
421
530
|
// Abort. We've been destroyed.
|
|
@@ -437,6 +546,10 @@ export class InputHandler {
|
|
|
437
546
|
}
|
|
438
547
|
}
|
|
439
548
|
|
|
549
|
+
/**
|
|
550
|
+
* TBD.
|
|
551
|
+
* @param {Pointer} pointer - TBD.
|
|
552
|
+
*/
|
|
440
553
|
_touchedHandler(pointer) {
|
|
441
554
|
if (this.sprite === null) {
|
|
442
555
|
// Abort. We've been destroyed.
|
|
@@ -485,6 +598,10 @@ export class InputHandler {
|
|
|
485
598
|
}
|
|
486
599
|
}
|
|
487
600
|
|
|
601
|
+
/**
|
|
602
|
+
* TBD.
|
|
603
|
+
* @param {Pointer} pointer - TBD.
|
|
604
|
+
*/
|
|
488
605
|
dragTimeElapsed(pointer) {
|
|
489
606
|
this._dragTimePass = true;
|
|
490
607
|
if (this._pendingDrag && this.sprite) {
|
|
@@ -494,6 +611,10 @@ export class InputHandler {
|
|
|
494
611
|
}
|
|
495
612
|
}
|
|
496
613
|
|
|
614
|
+
/**
|
|
615
|
+
* TBD.
|
|
616
|
+
* @param {Pointer} pointer - TBD.
|
|
617
|
+
*/
|
|
497
618
|
_releasedHandler(pointer) {
|
|
498
619
|
if (this.sprite === null) {
|
|
499
620
|
// Abort. We've been destroyed.
|
|
@@ -511,8 +632,7 @@ export class InputHandler {
|
|
|
511
632
|
if (this.sprite && this.sprite.events) {
|
|
512
633
|
if (
|
|
513
634
|
!this.dragStopBlocksInputUp ||
|
|
514
|
-
(this.dragStopBlocksInputUp &&
|
|
515
|
-
!(this.draggable && this.isDragged && this._draggedPointerID === pointer.id))
|
|
635
|
+
(this.dragStopBlocksInputUp && !(this.draggable && this.isDragged && this._draggedPointerID === pointer.id))
|
|
516
636
|
) {
|
|
517
637
|
this.sprite.events.onInputUp$dispatch(this.sprite, pointer, isOver);
|
|
518
638
|
}
|
|
@@ -539,6 +659,12 @@ export class InputHandler {
|
|
|
539
659
|
}
|
|
540
660
|
}
|
|
541
661
|
|
|
662
|
+
/**
|
|
663
|
+
* TBD.
|
|
664
|
+
* @param {Pointer} pointer - TBD.
|
|
665
|
+
* @param {boolean} fromStart - TBD.
|
|
666
|
+
* @returns {boolean} TBD.
|
|
667
|
+
*/
|
|
542
668
|
updateDrag(pointer, fromStart = false) {
|
|
543
669
|
if (pointer.isUp) {
|
|
544
670
|
this.stopDrag(pointer);
|
|
@@ -569,39 +695,55 @@ export class InputHandler {
|
|
|
569
695
|
(this.snapOffsetY % this.snapY);
|
|
570
696
|
this.snapPoint.set(this.sprite.x, this.sprite.y);
|
|
571
697
|
}
|
|
572
|
-
this.sprite.events.onDragUpdate.dispatch(
|
|
573
|
-
this.sprite,
|
|
574
|
-
pointer,
|
|
575
|
-
px,
|
|
576
|
-
py,
|
|
577
|
-
this.snapPoint,
|
|
578
|
-
fromStart
|
|
579
|
-
);
|
|
698
|
+
this.sprite.events.onDragUpdate.dispatch(this.sprite, pointer, px, py, this.snapPoint, fromStart);
|
|
580
699
|
return true;
|
|
581
700
|
}
|
|
582
701
|
|
|
702
|
+
/**
|
|
703
|
+
* TBD.
|
|
704
|
+
* @param {number} pointerId - TBD.
|
|
705
|
+
* @param {number} delay - TBD.
|
|
706
|
+
* @returns {boolean} TBD.
|
|
707
|
+
*/
|
|
583
708
|
justOver(pointerId = 0, delay = 500) {
|
|
584
709
|
return this._pointerData[pointerId].isOver && this.overDuration(pointerId) < delay;
|
|
585
710
|
}
|
|
586
711
|
|
|
712
|
+
/**
|
|
713
|
+
* TBD.
|
|
714
|
+
* @param {number} pointerId - TBD.
|
|
715
|
+
* @param {number} delay - TBD.
|
|
716
|
+
* @returns {boolean} TBD.
|
|
717
|
+
*/
|
|
587
718
|
justOut(pointerId = 0, delay = 500) {
|
|
588
|
-
return
|
|
589
|
-
this._pointerData[pointerId].isOut &&
|
|
590
|
-
this.game.time.time - this._pointerData[pointerId].timeOut < delay
|
|
591
|
-
);
|
|
719
|
+
return this._pointerData[pointerId].isOut && this.game.time.time - this._pointerData[pointerId].timeOut < delay;
|
|
592
720
|
}
|
|
593
721
|
|
|
722
|
+
/**
|
|
723
|
+
* TBD.
|
|
724
|
+
* @param {number} pointerId - TBD.
|
|
725
|
+
* @param {number} delay - TBD.
|
|
726
|
+
* @returns {boolean} TBD.
|
|
727
|
+
*/
|
|
594
728
|
justPressed(pointerId = 0, delay = 500) {
|
|
595
729
|
return this._pointerData[pointerId].isDown && this.downDuration(pointerId) < delay;
|
|
596
730
|
}
|
|
597
731
|
|
|
732
|
+
/**
|
|
733
|
+
* TBD.
|
|
734
|
+
* @param {number} pointerId - TBD.
|
|
735
|
+
* @param {number} delay - TBD.
|
|
736
|
+
* @returns {boolean} TBD.
|
|
737
|
+
*/
|
|
598
738
|
justReleased(pointerId = 0, delay = 500) {
|
|
599
|
-
return
|
|
600
|
-
this._pointerData[pointerId].isUp &&
|
|
601
|
-
this.game.time.time - this._pointerData[pointerId].timeUp < delay
|
|
602
|
-
);
|
|
739
|
+
return this._pointerData[pointerId].isUp && this.game.time.time - this._pointerData[pointerId].timeUp < delay;
|
|
603
740
|
}
|
|
604
741
|
|
|
742
|
+
/**
|
|
743
|
+
* TBD.
|
|
744
|
+
* @param {number} pointerId - TBD.
|
|
745
|
+
* @returns {number} TBD.
|
|
746
|
+
*/
|
|
605
747
|
overDuration(pointerId = 0) {
|
|
606
748
|
if (this._pointerData[pointerId].isOver) {
|
|
607
749
|
return this.game.time.time - this._pointerData[pointerId].timeOver;
|
|
@@ -609,6 +751,11 @@ export class InputHandler {
|
|
|
609
751
|
return -1;
|
|
610
752
|
}
|
|
611
753
|
|
|
754
|
+
/**
|
|
755
|
+
* TBD.
|
|
756
|
+
* @param {number} pointerId - TBD.
|
|
757
|
+
* @returns {number} TBD.
|
|
758
|
+
*/
|
|
612
759
|
downDuration(pointerId = 0) {
|
|
613
760
|
if (this._pointerData[pointerId].isDown) {
|
|
614
761
|
return this.game.time.time - this._pointerData[pointerId].timeDown;
|
|
@@ -616,6 +763,15 @@ export class InputHandler {
|
|
|
616
763
|
return -1;
|
|
617
764
|
}
|
|
618
765
|
|
|
766
|
+
/**
|
|
767
|
+
* TBD.
|
|
768
|
+
* @param {boolean} lockCenter - TBD.
|
|
769
|
+
* @param {boolean} bringToTop - TBD.
|
|
770
|
+
* @param {boolean} pixelPerfect - TBD.
|
|
771
|
+
* @param {number} alphaThreshold - TBD.
|
|
772
|
+
* @param {Rectangle} boundsRect - TBD.
|
|
773
|
+
* @param {DisplayObject} boundsSprite - TBD.
|
|
774
|
+
*/
|
|
619
775
|
enableDrag(
|
|
620
776
|
lockCenter = false,
|
|
621
777
|
bringToTop = false,
|
|
@@ -639,6 +795,9 @@ export class InputHandler {
|
|
|
639
795
|
}
|
|
640
796
|
}
|
|
641
797
|
|
|
798
|
+
/**
|
|
799
|
+
* TBD.
|
|
800
|
+
*/
|
|
642
801
|
disableDrag() {
|
|
643
802
|
if (this._pointerData) {
|
|
644
803
|
for (let i = 0; i < 10; i += 1) {
|
|
@@ -651,6 +810,10 @@ export class InputHandler {
|
|
|
651
810
|
this._pendingDrag = false;
|
|
652
811
|
}
|
|
653
812
|
|
|
813
|
+
/**
|
|
814
|
+
* TBD.
|
|
815
|
+
* @param {Pointer} pointer - TBD.
|
|
816
|
+
*/
|
|
654
817
|
startDrag(pointer) {
|
|
655
818
|
const x = this.sprite.x;
|
|
656
819
|
const y = this.sprite.y;
|
|
@@ -678,6 +841,11 @@ export class InputHandler {
|
|
|
678
841
|
this._pendingDrag = false;
|
|
679
842
|
}
|
|
680
843
|
|
|
844
|
+
/**
|
|
845
|
+
* TBD.
|
|
846
|
+
* @param {number} x - TBD.
|
|
847
|
+
* @returns {number} TBD.
|
|
848
|
+
*/
|
|
681
849
|
globalToLocalX(x) {
|
|
682
850
|
if (this.scaleLayer) {
|
|
683
851
|
x -= this.game.scale.grid.boundsFluid.x;
|
|
@@ -686,6 +854,11 @@ export class InputHandler {
|
|
|
686
854
|
return x;
|
|
687
855
|
}
|
|
688
856
|
|
|
857
|
+
/**
|
|
858
|
+
* TBD.
|
|
859
|
+
* @param {number} y - TBD.
|
|
860
|
+
* @returns {number} TBD.
|
|
861
|
+
*/
|
|
689
862
|
globalToLocalY(y) {
|
|
690
863
|
if (this.scaleLayer) {
|
|
691
864
|
y -= this.game.scale.grid.boundsFluid.y;
|
|
@@ -694,6 +867,10 @@ export class InputHandler {
|
|
|
694
867
|
return y;
|
|
695
868
|
}
|
|
696
869
|
|
|
870
|
+
/**
|
|
871
|
+
* TBD.
|
|
872
|
+
* @param {Pointer} pointer - TBD.
|
|
873
|
+
*/
|
|
697
874
|
stopDrag(pointer) {
|
|
698
875
|
this.isDragged = false;
|
|
699
876
|
this._draggedPointerID = -1;
|
|
@@ -714,11 +891,25 @@ export class InputHandler {
|
|
|
714
891
|
}
|
|
715
892
|
}
|
|
716
893
|
|
|
894
|
+
/**
|
|
895
|
+
* TBD.
|
|
896
|
+
* @param {boolean} allowHorizontal - TBD.
|
|
897
|
+
* @param {boolean} allowVertical - TBD.
|
|
898
|
+
*/
|
|
717
899
|
setDragLock(allowHorizontal = true, allowVertical = true) {
|
|
718
900
|
this.allowHorizontalDrag = allowHorizontal;
|
|
719
901
|
this.allowVerticalDrag = allowVertical;
|
|
720
902
|
}
|
|
721
903
|
|
|
904
|
+
/**
|
|
905
|
+
* TBD.
|
|
906
|
+
* @param {number} snapX - TBD.
|
|
907
|
+
* @param {number} snapY - TBD.
|
|
908
|
+
* @param {boolean} onDrag - TBD.
|
|
909
|
+
* @param {boolean} onRelease - TBD.
|
|
910
|
+
* @param {number} snapOffsetX - TBD.
|
|
911
|
+
* @param {number} snapOffsetY - TBD.
|
|
912
|
+
*/
|
|
722
913
|
enableSnap(snapX, snapY, onDrag = true, onRelease = false, snapOffsetX = 0, snapOffsetY = 0) {
|
|
723
914
|
this.snapX = snapX;
|
|
724
915
|
this.snapY = snapY;
|
|
@@ -728,11 +919,17 @@ export class InputHandler {
|
|
|
728
919
|
this.snapOnRelease = onRelease;
|
|
729
920
|
}
|
|
730
921
|
|
|
922
|
+
/**
|
|
923
|
+
* TBD.
|
|
924
|
+
*/
|
|
731
925
|
disableSnap() {
|
|
732
926
|
this.snapOnDrag = false;
|
|
733
927
|
this.snapOnRelease = false;
|
|
734
928
|
}
|
|
735
929
|
|
|
930
|
+
/**
|
|
931
|
+
* TBD.
|
|
932
|
+
*/
|
|
736
933
|
checkBoundsRect() {
|
|
737
934
|
if (this.sprite.left < this.boundsRect.left) {
|
|
738
935
|
this.sprite.x = this.boundsRect.x + this.sprite.offsetX;
|
|
@@ -746,6 +943,9 @@ export class InputHandler {
|
|
|
746
943
|
}
|
|
747
944
|
}
|
|
748
945
|
|
|
946
|
+
/**
|
|
947
|
+
* TBD.
|
|
948
|
+
*/
|
|
749
949
|
checkBoundsSprite() {
|
|
750
950
|
if (this.sprite.left < this.boundsSprite.left) {
|
|
751
951
|
this.sprite.x = this.boundsSprite.left + this.sprite.offsetX;
|