mirror of
https://github.com/photonstorm/phaser
synced 2024-11-23 05:03:37 +00:00
Added 3 new Wheel input events
This commit is contained in:
parent
700c9daaa1
commit
62cb5c68a8
4 changed files with 109 additions and 0 deletions
36
src/input/events/GAMEOBJECT_POINTER_WHEEL_EVENT.js
Normal file
36
src/input/events/GAMEOBJECT_POINTER_WHEEL_EVENT.js
Normal file
|
@ -0,0 +1,36 @@
|
|||
/**
|
||||
* @author Richard Davey <rich@photonstorm.com>
|
||||
* @copyright 2019 Photon Storm Ltd.
|
||||
* @license {@link https://opensource.org/licenses/MIT|MIT License}
|
||||
*/
|
||||
|
||||
/**
|
||||
* The Game Object Pointer Wheel Event.
|
||||
*
|
||||
* This event is dispatched by an interactive Game Object if a pointer has its wheel moved while over it.
|
||||
*
|
||||
* Listen to this event from a Game Object using: `gameObject.on('wheel', listener)`.
|
||||
* Note that the scope of the listener is automatically set to be the Game Object instance itself.
|
||||
*
|
||||
* To receive this event, the Game Object must have been set as interactive.
|
||||
* See [GameObject.setInteractive]{@link Phaser.GameObjects.GameObject#setInteractive} for more details.
|
||||
*
|
||||
* The event hierarchy is as follows:
|
||||
*
|
||||
* 1. [GAMEOBJECT_POINTER_WHEEL]{@linkcode Phaser.Input.Events#event:GAMEOBJECT_POINTER_WHEEL}
|
||||
* 2. [GAMEOBJECT_WHEEL]{@linkcode Phaser.Input.Events#event:GAMEOBJECT_WHEEL}
|
||||
* 3. [POINTER_WHEEL]{@linkcode Phaser.Input.Events#event:POINTER_WHEEL}
|
||||
*
|
||||
* With the top event being dispatched first and then flowing down the list. Note that higher-up event handlers can stop
|
||||
* the propagation of this event.
|
||||
*
|
||||
* @event Phaser.Input.Events#GAMEOBJECT_POINTER_WHEEL
|
||||
* @since 3.18.0
|
||||
*
|
||||
* @param {Phaser.Input.Pointer} pointer - The Pointer responsible for triggering this event.
|
||||
* @param {number} deltaX - The horizontal scroll amount that occurred due to the user moving a mouse wheel or similar input device.
|
||||
* @param {number} deltaY - The vertical scroll amount that occurred due to the user moving a mouse wheel or similar input device. This value will typically be less than 0 if the user scrolls up and greater than zero if scrolling down.
|
||||
* @param {number} deltaZ - The z-axis scroll amount that occurred due to the user moving a mouse wheel or similar input device.
|
||||
* @param {Phaser.Types.Input.EventData} event - The Phaser input event. You can call `stopPropagation()` to halt it from going any further in the event flow.
|
||||
*/
|
||||
module.exports = 'wheel';
|
38
src/input/events/GAMEOBJECT_WHEEL_EVENT.js
Normal file
38
src/input/events/GAMEOBJECT_WHEEL_EVENT.js
Normal file
|
@ -0,0 +1,38 @@
|
|||
/**
|
||||
* @author Richard Davey <rich@photonstorm.com>
|
||||
* @copyright 2019 Photon Storm Ltd.
|
||||
* @license {@link https://opensource.org/licenses/MIT|MIT License}
|
||||
*/
|
||||
|
||||
/**
|
||||
* The Game Object Wheel Input Event.
|
||||
*
|
||||
* This event is dispatched by the Input Plugin belonging to a Scene if a pointer has its wheel moved while over _any_ interactive Game Object.
|
||||
*
|
||||
* Listen to this event from within a Scene using: `this.input.on('gameobjectwheel', listener)`.
|
||||
*
|
||||
* To receive this event, the Game Objects must have been set as interactive.
|
||||
* See [GameObject.setInteractive]{@link Phaser.GameObjects.GameObject#setInteractive} for more details.
|
||||
*
|
||||
* To listen for this event from a _specific_ Game Object, use the [GAMEOBJECT_POINTER_WHEEL]{@linkcode Phaser.Input.Events#event:GAMEOBJECT_POINTER_WHEEL} event instead.
|
||||
*
|
||||
* The event hierarchy is as follows:
|
||||
*
|
||||
* 1. [GAMEOBJECT_POINTER_WHEEL]{@linkcode Phaser.Input.Events#event:GAMEOBJECT_POINTER_WHEEL}
|
||||
* 2. [GAMEOBJECT_WHEEL]{@linkcode Phaser.Input.Events#event:GAMEOBJECT_WHEEL}
|
||||
* 3. [POINTER_WHEEL]{@linkcode Phaser.Input.Events#event:POINTER_WHEEL}
|
||||
*
|
||||
* With the top event being dispatched first and then flowing down the list. Note that higher-up event handlers can stop
|
||||
* the propagation of this event.
|
||||
*
|
||||
* @event Phaser.Input.Events#GAMEOBJECT_WHEEL
|
||||
* @since 3.18.0
|
||||
*
|
||||
* @param {Phaser.Input.Pointer} pointer - The Pointer responsible for triggering this event.
|
||||
* @param {Phaser.GameObjects.GameObject} gameObject - The Game Object the pointer was over when the wheel changed.
|
||||
* @param {number} deltaX - The horizontal scroll amount that occurred due to the user moving a mouse wheel or similar input device.
|
||||
* @param {number} deltaY - The vertical scroll amount that occurred due to the user moving a mouse wheel or similar input device. This value will typically be less than 0 if the user scrolls up and greater than zero if scrolling down.
|
||||
* @param {number} deltaZ - The z-axis scroll amount that occurred due to the user moving a mouse wheel or similar input device.
|
||||
* @param {Phaser.Types.Input.EventData} event - The Phaser input event. You can call `stopPropagation()` to halt it from going any further in the event flow.
|
||||
*/
|
||||
module.exports = 'gameobjectwheel';
|
32
src/input/events/POINTER_WHEEL_EVENT.js
Normal file
32
src/input/events/POINTER_WHEEL_EVENT.js
Normal file
|
@ -0,0 +1,32 @@
|
|||
/**
|
||||
* @author Richard Davey <rich@photonstorm.com>
|
||||
* @copyright 2019 Photon Storm Ltd.
|
||||
* @license {@link https://opensource.org/licenses/MIT|MIT License}
|
||||
*/
|
||||
|
||||
/**
|
||||
* The Pointer Wheel Input Event.
|
||||
*
|
||||
* This event is dispatched by the Input Plugin belonging to a Scene if a pointer has its wheel updated.
|
||||
*
|
||||
* Listen to this event from within a Scene using: `this.input.on('wheel', listener)`.
|
||||
*
|
||||
* The event hierarchy is as follows:
|
||||
*
|
||||
* 1. [GAMEOBJECT_POINTER_WHEEL]{@linkcode Phaser.Input.Events#event:GAMEOBJECT_POINTER_WHEEL}
|
||||
* 2. [GAMEOBJECT_WHEEL]{@linkcode Phaser.Input.Events#event:GAMEOBJECT_WHEEL}
|
||||
* 3. [POINTER_WHEEL]{@linkcode Phaser.Input.Events#event:POINTER_WHEEL}
|
||||
*
|
||||
* With the top event being dispatched first and then flowing down the list. Note that higher-up event handlers can stop
|
||||
* the propagation of this event.
|
||||
*
|
||||
* @event Phaser.Input.Events#POINTER_WHEEL
|
||||
* @since 3.18.0
|
||||
*
|
||||
* @param {Phaser.Input.Pointer} pointer - The Pointer responsible for triggering this event.
|
||||
* @param {Phaser.GameObjects.GameObject[]} currentlyOver - An array containing all interactive Game Objects that the pointer was over when the event was created.
|
||||
* @param {number} deltaX - The horizontal scroll amount that occurred due to the user moving a mouse wheel or similar input device.
|
||||
* @param {number} deltaY - The vertical scroll amount that occurred due to the user moving a mouse wheel or similar input device. This value will typically be less than 0 if the user scrolls up and greater than zero if scrolling down.
|
||||
* @param {number} deltaZ - The z-axis scroll amount that occurred due to the user moving a mouse wheel or similar input device.
|
||||
*/
|
||||
module.exports = 'wheel';
|
|
@ -37,7 +37,9 @@ module.exports = {
|
|||
GAMEOBJECT_POINTER_OUT: require('./GAMEOBJECT_POINTER_OUT_EVENT'),
|
||||
GAMEOBJECT_POINTER_OVER: require('./GAMEOBJECT_POINTER_OVER_EVENT'),
|
||||
GAMEOBJECT_POINTER_UP: require('./GAMEOBJECT_POINTER_UP_EVENT'),
|
||||
GAMEOBJECT_POINTER_WHEEL: require('./GAMEOBJECT_POINTER_WHEEL_EVENT'),
|
||||
GAMEOBJECT_UP: require('./GAMEOBJECT_UP_EVENT'),
|
||||
GAMEOBJECT_WHEEL: require('./GAMEOBJECT_WHEEL_EVENT'),
|
||||
MANAGER_BOOT: require('./MANAGER_BOOT_EVENT'),
|
||||
MANAGER_PROCESS: require('./MANAGER_PROCESS_EVENT'),
|
||||
MANAGER_UPDATE: require('./MANAGER_UPDATE_EVENT'),
|
||||
|
@ -48,6 +50,7 @@ module.exports = {
|
|||
POINTER_OVER: require('./POINTER_OVER_EVENT'),
|
||||
POINTER_UP: require('./POINTER_UP_EVENT'),
|
||||
POINTER_UP_OUTSIDE: require('./POINTER_UP_OUTSIDE_EVENT'),
|
||||
POINTER_WHEEL: require('./POINTER_WHEEL_EVENT'),
|
||||
POINTERLOCK_CHANGE: require('./POINTERLOCK_CHANGE_EVENT'),
|
||||
PRE_UPDATE: require('./PRE_UPDATE_EVENT'),
|
||||
SHUTDOWN: require('./SHUTDOWN_EVENT'),
|
||||
|
|
Loading…
Reference in a new issue