Class: SmoothedKeyControl

Phaser.Cameras.Controls. SmoothedKeyControl

A Smoothed Key Camera Control.

This allows you to control the movement and zoom of a camera using the defined keys. Unlike the Fixed Camera Control you can also provide physics values for acceleration, drag and maxSpeed for smoothing effects.


var controlConfig = {
    camera: this.cameras.main,
    left: cursors.left,
    right: cursors.right,
    up: cursors.up,
    down: cursors.down,
    zoomIn: this.input.keyboard.addKey(Phaser.Input.Keyboard.KeyCodes.Q),
    zoomOut: this.input.keyboard.addKey(Phaser.Input.Keyboard.KeyCodes.E),
    zoomSpeed: 0.02,
    acceleration: 0.06,
    drag: 0.0005,
    maxSpeed: 1.0
};

You must call the update method of this controller every frame.


new SmoothedKeyControl(config)

Parameters:
Name Type Description
config SmoothedKeyControlConfig

The Smoothed Key Control configuration object.

Since: 3.0.0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 25)

Members


accelX :number

The horizontal acceleration the camera will move.

Type:
  • number
Since: 3.0.0
Default Value:
  • 0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 144)

accelY :number

The vertical acceleration the camera will move.

Type:
  • number
Since: 3.0.0
Default Value:
  • 0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 154)

active :boolean

A flag controlling if the Controls will update the Camera or not.

Type:
  • boolean
Since: 3.0.0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 276)

<nullable> camera :Phaser.Cameras.Scene2D.Camera

The Camera that this Control will update.

Type:
Since: 3.0.0
Default Value:
  • null
Source: src/cameras/controls/SmoothedKeyControl.js (Line 64)

<nullable> down :Phaser.Input.Keyboard.Key

The Key to be pressed that will move the Camera down.

Type:
Since: 3.0.0
Default Value:
  • null
Source: src/cameras/controls/SmoothedKeyControl.js (Line 104)

dragX :number

The horizontal drag applied to the camera when it is moving.

Type:
  • number
Since: 3.0.0
Default Value:
  • 0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 177)

dragY :number

The vertical drag applied to the camera when it is moving.

Type:
  • number
Since: 3.0.0
Default Value:
  • 0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 187)

<nullable> left :Phaser.Input.Keyboard.Key

The Key to be pressed that will move the Camera left.

Type:
Since: 3.0.0
Default Value:
  • null
Source: src/cameras/controls/SmoothedKeyControl.js (Line 74)

maxSpeedX :number

The maximum horizontal speed the camera will move.

Type:
  • number
Since: 3.0.0
Default Value:
  • 0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 210)

maxSpeedY :number

The maximum vertical speed the camera will move.

Type:
  • number
Since: 3.0.0
Default Value:
  • 0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 220)

The Key to be pressed that will move the Camera right.

Type:
Since: 3.0.0
Default Value:
  • null
Source: src/cameras/controls/SmoothedKeyControl.js (Line 84)

<nullable> up :Phaser.Input.Keyboard.Key

The Key to be pressed that will move the Camera up.

Type:
Since: 3.0.0
Default Value:
  • null
Source: src/cameras/controls/SmoothedKeyControl.js (Line 94)

<nullable> zoomIn :Phaser.Input.Keyboard.Key

The Key to be pressed that will zoom the Camera in.

Type:
Since: 3.0.0
Default Value:
  • null
Source: src/cameras/controls/SmoothedKeyControl.js (Line 114)

<nullable> zoomOut :Phaser.Input.Keyboard.Key

The Key to be pressed that will zoom the Camera out.

Type:
Since: 3.0.0
Default Value:
  • null
Source: src/cameras/controls/SmoothedKeyControl.js (Line 124)

zoomSpeed :number

The speed at which the camera will zoom if the zoomIn or zoomOut keys are pressed.

Type:
  • number
Since: 3.0.0
Default Value:
  • 0.01
Source: src/cameras/controls/SmoothedKeyControl.js (Line 134)

Methods


destroy()

Destroys this Key Control.

Since: 3.0.0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 472)

setCamera(camera)

Binds this Key Control to a camera.

Parameters:
Name Type Description
camera Phaser.Cameras.Scene2D.Camera

The camera to bind this Key Control to.

Since: 3.0.0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 316)
Returns:

This Key Control instance.

Type
Phaser.Cameras.Controls.SmoothedKeyControl

start()

Starts the Key Control running, providing it has been linked to a camera.

Since: 3.0.0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 286)
Returns:

This Key Control instance.

Type
Phaser.Cameras.Controls.SmoothedKeyControl

stop()

Stops this Key Control from running. Call start to start it again.

Since: 3.0.0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 301)
Returns:

This Key Control instance.

Type
Phaser.Cameras.Controls.SmoothedKeyControl

update(delta)

Applies the results of pressing the control keys to the Camera.

You must call this every step, it is not called automatically.

Parameters:
Name Type Description
delta number

The delta time in ms since the last frame. This is a smoothed and capped value based on the FPS rate.

Since: 3.0.0
Source: src/cameras/controls/SmoothedKeyControl.js (Line 333)