Swipe
Introduction¶
Get swipe events of a game object.
- Author: Rex
- Behavior of game object
Live demos¶
Usage¶
Install plugin¶
Load minify file¶
- Load plugin (minify file) in preload stage
scene.load.scenePlugin('rexgesturesplugin', 'https://raw.githubusercontent.com/rexrainbow/phaser3-rex-notes/master/dist/rexgesturesplugin.min.js', 'rexGestures', 'rexGestures'); - Add swipe input
var swipe = scene.rexGestures.add.swipe(config); // var swipe = scene.rexGestures.add.swipe(gameObject, config);
Import plugin¶
- Install rex plugins from npm
npm i phaser3-rex-plugins - Install plugin in configuration of game
import GesturesPlugin from 'phaser3-rex-plugins/plugins/gestures-plugin.js'; var config = { // ... plugins: { scene: [{ key: 'rexGestures', plugin: GesturesPlugin, mapping: 'rexGestures' }, // ... ] } // ... }; var game = new Phaser.Game(config); - Add swipe input
var swipe = scene.rexGestures.add.swipe(config); // var swipe = scene.rexGestures.add.swipe(gameObject, config);
Import class¶
- Install rex plugins from npm
npm i phaser3-rex-plugins - Import class
import { Swipe } from 'phaser3-rex-plugins/plugins/gestures.js'; - Add swipe input
var swipe = new Swipe(scene, config); // var swipe = new Swipe(gameObject, config);
Create instance¶
- Swipe input
var swipe = scene.rexGestures.add.swipe({ // enable: true, // bounds: undefined, // threshold: 10, // velocityThreshold: 1000, // dir: '8dir', });enable: Setfalseto disable input events.bounds: Touch detecting area rectangle, if game obect is not given.undefined: Ignore this feature, default behavior.
time: Max time of the pointer to be down.threshold: Minimal movement when pointer is down.velocityThreshold: Minimal dragging speed.dir:'up&down', or0: Getupordownstate only.'left&right', or1: Getleftorrightstate only.'4dir', or2: Getup,down,leftorrightstate.'8dir', or3: Getup,up/left,up/right,down,down/left,down/right,left, orrightstate.
- Swipe behavior of game object
var swipe = scene.rexGestures.add.swipe(gameObject, { // enable: true, // threshold: 10, // velocityThreshold: 1000, // direction: '8dir', });
Enable¶
- Get
var enable = swipe.enable; // enable: true, or false - Set
swipe.setEnable(enable); // enable: true, or false // swipe.enable = enable; - Toggle
swipe.toggleEnable();
Events¶
Swipe¶
swipe.on('swipe', function(swipe, gameObject, lastPointer){
}, scope);
swipe.left,swipe.right,swipe.up,swipe.down: Swipe direction states.swipe.worldX,swipe.worldY: World position of swiping start.swipe.x,swipe.y: Scene position of swiping start.swipe.dragVelocity: Velocity of dragging.gameObject,swipe.gameObject: Parent gameobject of this pan behavior.lastPointer: Last touch pointer.
Is swiping¶
var isSwiping = swipe.isSwiping;
Return true if panning.
Is pointer inside another game object¶
Under any swipe event,
swipe.on('swipe', function(swipe){
var isPointerInsideGameObject = swipe.isPointerInGameObject(anotherGameObject);
});
Other properties¶
- Drag threshold
- Get
var dragThreshold = swipe.dragThreshold; - Set
swipe.setDragThreshold(dragThreshold); // swipe.dragThreshold = dragThreshold;
- Get
- Velocity threshold
- Get
var velocityThreshold = swipe.velocityThreshold; - Set
swipe.setVelocityThreshold(velocityThreshold); // swipe.velocityThreshold = velocityThreshold;
- Get
- Direction mode
- Get
var dirMode = swipe.dirMode; // 0,1,2,3 - Set
swipe.setDirectionMode(dirMode); // 0,1,2,3,'up&down','left&right','4dir','8dir' // swipe.dirMode = dirMode; // 0,1,2,3
- Get
- Detect bounds
- Get
var bounds = swipe.bounds; - Set
swipe.setDetectBounds(bounds); // swipe.bounds = bounds;
- Get