new StateManager(game, pendingState)
The State Manager is responsible for loading, setting up and switching game states.
Parameters:
Name | Type | Argument | Default | Description |
---|---|---|---|---|
game |
Phaser.Game | A reference to the currently running game. |
||
pendingState |
Phaser.State | Object |
<optional> |
null | A State object to seed the manager with. |
- Source - core/StateManager.js, line 17
Members
-
current :string
-
The current active State object (defaults to null).
- Source - core/StateManager.js, line 67
-
game :Phaser.Game
-
A reference to the currently running game.
- Source - core/StateManager.js, line 22
-
onCreateCallback :function
-
This is called when the state preload has finished and creation begins.
- Source - core/StateManager.js, line 82
-
onInitCallback :function
-
This is called when the state is set as the active state.
- Source - core/StateManager.js, line 72
-
onLoadRenderCallback :function
-
This is called when the State is rendered during the preload phase.
- Source - core/StateManager.js, line 112
-
onLoadUpdateCallback :function
-
This is called when the State is updated during the preload phase.
- Source - core/StateManager.js, line 107
-
onPausedCallback :function
-
This is called when the game is paused.
- Source - core/StateManager.js, line 117
-
onPauseUpdateCallback :function
-
This is called every frame while the game is paused.
- Source - core/StateManager.js, line 127
-
onPreloadCallback :function
-
This is called when the state starts to load assets.
- Source - core/StateManager.js, line 77
-
onPreRenderCallback :function
-
This is called before the state is rendered and before the stage is cleared.
- Source - core/StateManager.js, line 102
-
onRenderCallback :function
-
This is called post-render. It doesn't happen during preload (see onLoadRenderCallback).
- Source - core/StateManager.js, line 92
-
onResizeCallback :function
-
This is called if ScaleManager.scalemode is RESIZE and a resize event occurs. It's passed the new width and height.
- Source - core/StateManager.js, line 97
-
onResumedCallback :function
-
This is called when the game is resumed from a paused state.
- Source - core/StateManager.js, line 122
-
onShutDownCallback :function
-
This is called when the state is shut down (i.e. swapped to another state).
- Source - core/StateManager.js, line 132
-
onUpdateCallback :function
-
This is called when the state is updated, every game loop. It doesn't happen during preload (@see onLoadUpdateCallback).
- Source - core/StateManager.js, line 87
-
states :Object
-
The object containing Phaser.States.
- Source - core/StateManager.js, line 27
Methods
-
add(key, state, autoStart)
-
Adds a new State into the StateManager. You must give each State a unique key by which you'll identify it. The State can be either a Phaser.State object (or an object that extends it), a plain JavaScript object or a function. If a function is given a new state object will be created by calling it.
Parameters:
Name Type Argument Default Description key
string A unique key you use to reference this state, i.e. "MainMenu", "Level1".
state
Phaser.State | object | function The state you want to switch to.
autoStart
boolean <optional>
false If true the State will be started immediately after adding it.
- Source - core/StateManager.js, line 161
-
checkState(key) → {boolean}
-
Checks if a given phaser state is valid. A State is considered valid if it has at least one of the core functions: preload, create, update or render.
Parameters:
Name Type Description key
string The key of the state you want to check.
Returns:
boolean -true if the State has the required functions, otherwise false.
- Source - core/StateManager.js, line 415
-
clearCurrentState()
-
This method clears the current State, calling its shutdown callback. The process also removes any active tweens, resets the camera, resets input, clears physics, removes timers and if set clears the world and cache too.
- Source - core/StateManager.js, line 365
-
destroy()
-
Removes all StateManager callback references to the State object, nulls the game reference and clears the States object. You don't recover from this without rebuilding the Phaser instance again.
- Source - core/StateManager.js, line 718
-
getCurrentState()
-
Gets the current State.
Returns:
Phaser.State
- Source - core/StateManager.js, line 563
-
<internal> link(key)
-
Links game properties to the State given by the key.
Parameters:
Name Type Description key
string State key.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 451
-
<internal> loadComplete()
-
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 574
-
<internal> pause()
-
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 595
-
<internal> pauseUpdate()
-
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 641
-
<internal> preRender()
-
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 661
-
preUpdate()
-
preUpdate is called right at the start of the game loop. It is responsible for changing to a new state that was requested previously.
- Source - core/StateManager.js, line 306
-
remove(key)
-
Delete the given state.
Parameters:
Name Type Description key
string A unique key you use to reference this state, i.e. "MainMenu", "Level1".
- Source - core/StateManager.js, line 209
-
<internal> render()
-
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 687
-
<internal> resize()
-
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 674
-
restart(clearWorld, clearCache, parameter)
-
Restarts the current State. State.shutDown will be called (if it exists) before the State is restarted.
Parameters:
Name Type Argument Default Description clearWorld
boolean <optional>
true Clear everything in the world? This clears the World display list fully (but not the Stage, so if you've added your own objects to the Stage they will need managing directly)
clearCache
boolean <optional>
false Clear the Game.Cache? This purges out all loaded assets. The default is false and you must have clearWorld=true if you want to clearCache as well.
parameter
* <repeatable>
Additional parameters that will be passed to the State.init function if it has one.
- Source - core/StateManager.js, line 273
-
<internal> resume()
-
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 608
-
start(key, clearWorld, clearCache, parameter)
-
Start the given State. If a State is already running then State.shutDown will be called (if it exists) before switching to the new State.
Parameters:
Name Type Argument Default Description key
string The key of the state you want to start.
clearWorld
boolean <optional>
true Clear everything in the world? This clears the World display list fully (but not the Stage, so if you've added your own objects to the Stage they will need managing directly)
clearCache
boolean <optional>
false Clear the Game.Cache? This purges out all loaded assets. The default is false and you must have clearWorld=true if you want to clearCache as well.
parameter
* <repeatable>
Additional parameters that will be passed to the State.init function (if it has one).
- Source - core/StateManager.js, line 239
-
<internal> unlink(key)
-
Nulls all State level Phaser properties, including a reference to Game.
Parameters:
Name Type Description key
string State key.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 481
-
<internal> update()
-
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - core/StateManager.js, line 621