phaser/src/input/events/GAMEOBJECT_WHEEL_EVENT.js
2020-01-15 12:07:09 +00:00

38 lines
2.2 KiB
JavaScript

/**
* @author Richard Davey <rich@photonstorm.com>
* @copyright 2020 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';