Class: State

Phaser. State

new State()

This is a base State class which can be extended if you are creating your own game. It provides quick access to common functions such as the camera, cache, input, match, sound and more.

Callbacks

start preload loaded paused stop
init
preload create paused
loadUpdate* update* pauseUpdate*
preRender*
loadRender* render* pauseRender*
resumed
shutdown

Update and render calls (*) are repeated.

Source:
src/core/State.js line 28

Members

add :Phaser.GameObjectFactory

A reference to the GameObjectFactory which can be used to add new objects to the World.

Type:
Source:
src/core/State.js line 43

cache :Phaser.Cache

A reference to the game cache which contains any loaded or generated assets, such as images, sound and more.

Type:
Source:
src/core/State.js line 58

camera :Phaser.Camera

A handy reference to World.camera.

Type:
Source:
src/core/State.js line 53

game :Phaser.Game

This is a reference to the currently running Game.

Type:
Source:
src/core/State.js line 33

input :Phaser.Input

A reference to the Input Manager.

Type:
Source:
src/core/State.js line 63

key :string

The string based identifier given to the State when added into the State Manager.

Type:
  • string
Source:
src/core/State.js line 38

load :Phaser.Loader

A reference to the Loader, which you mostly use in the preload method of your state to load external assets.

Type:
Source:
src/core/State.js line 68

make :Phaser.GameObjectCreator

A reference to the GameObjectCreator which can be used to make new objects.

Type:
Source:
src/core/State.js line 48

math :Phaser.Math

A reference to Math class with lots of helpful functions.

Type:
Source:
src/core/State.js line 73

particles :Phaser.Particles

The Particle Manager. It is called during the core gameloop and updates any Particle Emitters it has created.

Type:
Source:
src/core/State.js line 113

physics :Phaser.Physics

A reference to the physics manager which looks after the different physics systems available within Phaser.

Type:
Source:
src/core/State.js line 118

rnd :Phaser.RandomDataGenerator

A reference to the seeded and repeatable random data generator.

Type:
Source:
src/core/State.js line 123

scale :Phaser.ScaleManager

A reference to the Scale Manager which controls the way the game scales on different displays.

Type:
Source:
src/core/State.js line 83

sound :Phaser.SoundManager

A reference to the Sound Manager which can create, play and stop sounds, as well as adjust global volume.

Type:
Source:
src/core/State.js line 78

stage :Phaser.Stage

A reference to the Stage.

Type:
Source:
src/core/State.js line 88

state

Properties:
Name Type Description
stage Phaser.StateManager

A reference to the State Manager, which controls state changes.

Source:
src/core/State.js line 93

time :Phaser.Time

A reference to the game clock and timed events system.

Type:
Source:
src/core/State.js line 98

tweens :Phaser.TweenManager

A reference to the tween manager.

Type:
Source:
src/core/State.js line 103

world :Phaser.World

A reference to the game world. All objects live in the Game World and its size is not bound by the display resolution.

Type:
Source:
src/core/State.js line 108

Methods

create()

create is called once preload has completed, this includes the loading of any assets from the Loader. If you don't have a preload method then create is the first method called in your State.

Source:
src/core/State.js line 166

init()

init is the very first function called when your State starts up. It's called before preload, create or anything else. If you need to route the game away to another State you could do so here, or if you need to prepare a set of variables or objects before the preloading starts.

Source:
src/core/State.js line 129

loadRender()

loadRender is called during the Loader process. This only happens if you've set one or more assets to load in the preload method. The difference between loadRender and render is that any objects you render in this method you must be sure their assets exist.

Source:
src/core/State.js line 157

loadUpdate()

loadUpdate is called during the Loader process. This only happens if you've set one or more assets to load in the preload method.

Source:
src/core/State.js line 149

paused()

This method will be called if the core game loop is paused.

Source:
src/core/State.js line 211

pauseUpdate()

pauseUpdate is called while the game is paused instead of preUpdate, update and postUpdate.

Source:
src/core/State.js line 227

preload()

preload is called first. Normally you'd use this to load your game assets (or those needed for the current State) You shouldn't create any objects in this method that require assets that you're also loading in this method, as they won't yet be available.

Source:
src/core/State.js line 139

preRender()

The preRender method is called after all Game Objects have been updated, but before any rendering takes place.

Source:
src/core/State.js line 185

render()

Nearly all display objects in Phaser render automatically, you don't need to tell them to render. However the render method is called AFTER the game renderer and plugins have rendered, so you're able to do any final post-processing style effects here. Note that this happens before plugins postRender takes place.

Source:
src/core/State.js line 193

resize()

If your game is set to Scalemode RESIZE then each time the browser resizes it will call this function, passing in the new width and height.

Source:
src/core/State.js line 203

resumed()

This method will be called when the core game loop resumes from a paused state.

Source:
src/core/State.js line 219

shutdown()

This method will be called when the State is shutdown (i.e. you switch to another state from this one).

Source:
src/core/State.js line 235

update()

The update method is left empty for your own use. It is called during the core game loop AFTER debug, physics, plugins and the Stage have had their preUpdate methods called. It is called BEFORE Stage, Tweens, Sounds, Input, Physics, Particles and Plugins have had their postUpdate methods called.

Source:
src/core/State.js line 175