Phaser. Button

new Button(game, x, y, key, callback, callbackContext, overFrame, outFrame, downFrame, upFrame)

Create a new Button object. A Button is a special type of Sprite that is set-up to handle Pointer events automatically.

The four states a Button responds to are:

  • 'Over' - when the Pointer moves over the Button. This is also commonly known as 'hover'.
  • 'Out' - when the Pointer that was previously over the Button moves out of it.
  • 'Down' - when the Pointer is pressed down on the Button. I.e. touched on a touch enabled device or clicked with the mouse.
  • 'Up' - when the Pointer that was pressed down on the Button is released again.

A different texture/frame and activation sound can be specified for any of the states.

Frames can be specified as either an integer (the frame ID) or a string (the frame name); the same values that can be used with a Sprite constructor.

Parameters:
Name Type Argument Default Description
game Phaser.Game

Current game instance.

x number <optional>
0

X position of the Button.

y number <optional>
0

Y position of the Button.

key string <optional>

The image key (in the Game.Cache) to use as the texture for this Button.

callback function <optional>

The function to call when this Button is pressed.

callbackContext object <optional>

The context in which the callback will be called (usually 'this').

overFrame string | integer <optional>

The frame / frameName when the button is in the Over state.

outFrame string | integer <optional>

The frame / frameName when the button is in the Out state.

downFrame string | integer <optional>

The frame / frameName when the button is in the Down state.

upFrame string | integer <optional>

The frame / frameName when the button is in the Up state.

Source - gameobjects/Button.js, line 35

Extends

Members

alive :boolean

A useful flag to control if the Game Object is alive or dead.

This is set automatically by the Health components damage method should the object run out of health. Or you can toggle it via your game code.

This property is mostly just provided to be used by your game - it doesn't effect rendering or logic updates. However you can use Group.getFirstAlive in conjunction with this property for fast object pooling and recycling.

Inherited From:
Default Value:
  • true
Source - gameobjects/components/LifeSpan.js, line 50

alpha :Number

The opacity of the object.

Inherited From:
Source - pixi/display/DisplayObject.js, line 46

anchor :Point

The anchor sets the origin point of the texture. The default is 0,0 this means the texture's origin is the top left Setting than anchor to 0.5,0.5 means the textures origin is centered Setting the anchor to 1,1 would mean the textures origin points will be the bottom right corner

Inherited From:
Source - pixi/display/Sprite.js, line 22

angle :number

The angle property is the rotation of the Game Object in degrees from its original orientation.

Values from 0 to 180 represent clockwise rotation; values from 0 to -180 represent counterclockwise rotation.

Values outside this range are added to or subtracted from 360 to obtain a value within the range. For example, the statement player.angle = 450 is the same as player.angle = 90.

If you wish to work in radians instead of degrees you can use the property rotation instead. Working in radians is slightly faster as it doesn't have to perform any calculations.

Inherited From:
Source - gameobjects/components/Angle.js, line 29

animations :Phaser.AnimationManager

If the Game Object is enabled for animation (such as a Phaser.Sprite) this is a reference to its AnimationManager instance. Through it you can create, play, pause and stop animations.

Inherited From:
Source - gameobjects/components/Core.js, line 193
See:

autoCull :boolean

A Game Object with autoCull set to true will check its bounds against the World Camera every frame. If it is not intersecting the Camera bounds at any point then it has its renderable property set to false. This keeps the Game Object alive and still processing updates, but forces it to skip the render step entirely.

This is a relatively expensive operation, especially if enabled on hundreds of Game Objects. So enable it only if you know it's required, or you have tested performance and find it acceptable.

Inherited From:
Source - gameobjects/components/AutoCull.js, line 28

blendMode :Number

The blend mode to be applied to the sprite. Set to PIXI.blendModes.NORMAL to remove any blend mode.

Warning: You cannot have a blend mode and a filter active on the same Sprite. Doing so will render the sprite invisible.

Inherited From:
Default Value:
  • PIXI.blendModes.NORMAL;
Source - pixi/display/Sprite.js, line 87

bottom :number

The sum of the y and height properties. This is the same as y + height - offsetY.

Inherited From:
Source - gameobjects/components/Bounds.js, line 168

cacheAsBitmap :Boolean

Set if this display object is cached as a bitmap. This basically takes a snap shot of the display object as it is at that moment. It can provide a performance benefit for complex static displayObjects. To remove simply set this property to 'null'

Inherited From:
Source - pixi/display/DisplayObject.js, line 355

cameraOffset :Phaser.Point

The x/y coordinate offset applied to the top-left of the camera that this Game Object will be drawn at if fixedToCamera is true.

The values are relative to the top-left of the camera view and in addition to any parent of the Game Object on the display list.

Inherited From:
Source - gameobjects/components/FixedToCamera.js, line 86

centerX :number

The center x coordinate of the Game Object. This is the same as (x - offsetX) + (width / 2).

Inherited From:
Source - gameobjects/components/Bounds.js, line 58

centerY :number

The center y coordinate of the Game Object. This is the same as (y - offsetY) + (height / 2).

Inherited From:
Source - gameobjects/components/Bounds.js, line 80

<readonly> children :Array.<DisplayObject>

[read-only] The array of children of this container.

Type:
Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 17

<internal> components :object

The components this Game Object has installed.

Inherited From:
Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source - gameobjects/components/Core.js, line 167

cropRect :Phaser.Rectangle

The Rectangle used to crop the texture this Game Object uses. Set this property via crop. If you modify this property directly you must call updateCrop in order to have the change take effect.

Inherited From:
Source - gameobjects/components/Crop.js, line 24

data :Object

An empty Object that belongs to this Game Object. This value isn't ever used internally by Phaser, but may be used by your own code, or by Phaser Plugins, to store data that needs to be associated with the Game Object, without polluting the Game Object directly.

Inherited From:
Default Value:
  • {}
Source - gameobjects/components/Core.js, line 160

debug :boolean

A debug flag designed for use with Game.enableStep.

Inherited From:
Source - gameobjects/components/Core.js, line 218

<readonly> destroyPhase :boolean

As a Game Object runs through its destroy method this flag is set to true, and can be checked in any sub-systems or plugins it is being destroyed from.

Inherited From:
Source - gameobjects/components/Destroy.js, line 22

events :Phaser.Events

All Phaser Game Objects have an Events class which contains all of the events that are dispatched when certain things happen to this Game Object, or any of its components.

Inherited From:
Source - gameobjects/components/Core.js, line 185
See:

exists :Boolean

Controls if this Sprite is processed by the core Phaser game loops and Group loops.

Inherited From:
Default Value:
  • true
Source - pixi/display/Sprite.js, line 107

filterArea :Rectangle

The area the filter is applied to like the hitArea this is used as more of an optimisation rather than figuring out the dimensions of the displayObject each frame you can set this rectangle

Inherited From:
Source - pixi/display/DisplayObject.js, line 164

filters :Array.<Filter>

Sets the filters for the displayObject. IMPORTANT: This is a webGL only feature and will be ignored by the Canvas renderer.

To remove filters simply set this property to 'null'.

You cannot have a filter and a multiply blend mode active at the same time. Setting a filter will reset this objects blend mode to NORMAL.

Type:
  • Array.<Filter>
Inherited From:
Source - pixi/display/DisplayObject.js, line 307

fixedToCamera :boolean

A Game Object that is "fixed" to the camera uses its x/y coordinates as offsets from the top left of the camera during rendering.

The values are adjusted at the rendering stage, overriding the Game Objects actual world position.

The end result is that the Game Object will appear to be 'fixed' to the camera, regardless of where in the game world the camera is viewing. This is useful if for example this Game Object is a UI item that you wish to be visible at all times regardless where in the world the camera is.

The offsets are stored in the cameraOffset property.

Note that the cameraOffset values are in addition to any parent of this Game Object on the display list.

Be careful not to set fixedToCamera on Game Objects which are in Groups that already have fixedToCamera enabled on them.

Inherited From:
Source - gameobjects/components/FixedToCamera.js, line 56

forceOut :boolean|Phaser.PointerMode

When the Button is touched / clicked and then released you can force it to enter a state of "out" instead of "up".

This can also accept a pointer mode bitmask for more refined control.

Type:
Source - gameobjects/Button.js, line 199

frame :integer

Gets or sets the current frame index of the texture being used to render this Game Object.

To change the frame set frame to the index of the new frame in the sprite sheet you wish this Game Object to use, for example: player.frame = 4.

If the frame index given doesn't exist it will revert to the first frame found in the texture.

If you are using a texture atlas then you should use the frameName property instead.

If you wish to fully replace the texture being used see loadTexture.

Inherited From:
Source - gameobjects/components/LoadTexture.js, line 254

frameName :string

Gets or sets the current frame name of the texture being used to render this Game Object.

To change the frame set frameName to the name of the new frame in the texture atlas you wish this Game Object to use, for example: player.frameName = "idle".

If the frame name given doesn't exist it will revert to the first frame found in the texture and throw a console warning.

If you are using a sprite sheet then you should use the frame property instead.

If you wish to fully replace the texture being used see loadTexture.

Inherited From:
Source - gameobjects/components/LoadTexture.js, line 279

freezeFrames :boolean

When true the the texture frame will not be automatically switched on up/down/over/out events.

Source - gameobjects/Button.js, line 189

<readonly> fresh :boolean

A Game Object is considered fresh if it has just been created or reset and is yet to receive a renderer transform update. This property is mostly used internally by the physics systems, but is exposed for the use of plugins.

Inherited From:
Source - gameobjects/components/Core.js, line 248

game :Phaser.Game

A reference to the currently running Game.

Inherited From:
Source - gameobjects/components/Core.js, line 142

height :Number

The height of the sprite, setting this will actually modify the scale to achieve the value set

Inherited From:
Source - pixi/display/Sprite.js, line 148

hitArea :Rectangle|Circle|Ellipse|Polygon

This is the defined area that will pick up mouse / touch events. It is null by default. Setting it is a neat way of optimising the hitTest function that the interactionManager will use (as it will not need to hit test all the children)

Type:
  • Rectangle | Circle | Ellipse | Polygon
Inherited From:
Source - pixi/display/DisplayObject.js, line 62

ignoreChildInput :Boolean

If ignoreChildInput is false it will allow this objects children to be considered as valid for Input events.

If this property is true then the children will not be considered as valid for Input events.

Note that this property isn't recursive: only immediate children are influenced, it doesn't scan further down.

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 26

<readonly> inCamera :boolean

Checks if the Game Objects bounds intersect with the Game Camera bounds. Returns true if they do, otherwise false if fully outside of the Cameras bounds.

Inherited From:
Source - gameobjects/components/AutoCull.js, line 37

input :Phaser.InputHandler|null

The Input Handler for this Game Object.

By default it is disabled. If you wish this Game Object to process input events you should enable it with: inputEnabled = true.

After you have done this, this property will be a reference to the Phaser InputHandler.

Type:
Inherited From:
Source - gameobjects/components/InputEnabled.js, line 24

inputEnabled :boolean

By default a Game Object won't process any input events. By setting inputEnabled to true a Phaser.InputHandler is created for this Game Object and it will then start to process click / touch events and more.

You can then access the Input Handler via this.input.

Note that Input related events are dispatched from this.events, i.e.: events.onInputDown.

If you set this property to false it will stop the Input Handler from processing any more input events.

Inherited From:
Source - gameobjects/components/InputEnabled.js, line 38

justReleasedPreventsOver :Phaser.PointerMode

Suppresse the over event if a pointer was just released and it matches the given pointer mode bitmask.

This behavior was introduced in Phaser 2.3.1; this property is a soft-revert of the change.

Source - gameobjects/Button.js, line 182

key :string|Phaser.RenderTexture|Phaser.BitmapData|Phaser.Video|PIXI.Texture

The key of the image or texture used by this Game Object during rendering. If it is a string it's the string used to retrieve the texture from the Phaser Image Cache. It can also be an instance of a RenderTexture, BitmapData, Video or PIXI.Texture. If a Game Object is created without a key it is automatically assigned the key __default which is a 32x32 transparent PNG stored within the Cache. If a Game Object is given a key which doesn't exist in the Image Cache it is re-assigned the key __missing which is a 32x32 PNG of a green box with a line through it.

Type:
Inherited From:
Source - gameobjects/components/Core.js, line 203

left :number

The left coordinate of the Game Object. This is the same as x - offsetX.

Inherited From:
Source - gameobjects/components/Bounds.js, line 102

lifespan :number

The lifespan allows you to give a Game Object a lifespan in milliseconds.

Once the Game Object is 'born' you can set this to a positive value.

It is automatically decremented by the millisecond equivalent of game.time.physicsElapsed each frame. When it reaches zero it will call the kill method.

Very handy for particles, bullets, collectibles, or any other short-lived entity.

Inherited From:
Source - gameobjects/components/LifeSpan.js, line 65

mask :PIXI.Graphics

Sets a mask for the displayObject. A mask is an object that limits the visibility of an object to the shape of the mask applied to it. In PIXI a regular mask must be a PIXI.Graphics object. This allows for much faster masking in canvas as it utilises shape clipping. To remove a mask, set this property to null.

Inherited From:
Source - pixi/display/DisplayObject.js, line 282

name :string

A user defined name given to this Game Object. This value isn't ever used internally by Phaser, it is meant as a game level property.

Inherited From:
Source - gameobjects/components/Core.js, line 150

<readonly> offsetX :number

The amount the Game Object is visually offset from its x coordinate. This is the same as width * anchor.x. It will only be > 0 if anchor.x is not equal to zero.

Inherited From:
Source - gameobjects/components/Bounds.js, line 24

<readonly> offsetY :number

The amount the Game Object is visually offset from its y coordinate. This is the same as height * anchor.y. It will only be > 0 if anchor.y is not equal to zero.

Inherited From:
Source - gameobjects/components/Bounds.js, line 42

<readonly> onDownSound :Phaser.Sound|Phaser.AudioSprite|null

The Sound to be played when this Buttons Down state is activated.

Type:
Source - gameobjects/Button.js, line 105

<readonly> onDownSoundMarker :string

The Sound Marker used in conjunction with the onDownSound.

Source - gameobjects/Button.js, line 133

onInputDown :Phaser.Signal

The Signal (or event) dispatched when this Button is in an Down state.

Source - gameobjects/Button.js, line 158

onInputOut :Phaser.Signal

The Signal (or event) dispatched when this Button is in an Out state.

Source - gameobjects/Button.js, line 152

onInputOver :Phaser.Signal

The Signal (or event) dispatched when this Button is in an Over state.

Source - gameobjects/Button.js, line 146

onInputUp :Phaser.Signal

The Signal (or event) dispatched when this Button is in an Up state.

Source - gameobjects/Button.js, line 164

<readonly> onOutSound :Phaser.Sound|Phaser.AudioSprite|null

The Sound to be played when this Buttons Out state is activated.

Type:
Source - gameobjects/Button.js, line 98

<readonly> onOutSoundMarker :string

The Sound Marker used in conjunction with the onOutSound.

Source - gameobjects/Button.js, line 126

onOverMouseOnly :boolean

If true then onOver events (such as onOverSound) will only be triggered if the Pointer object causing them was the Mouse Pointer. The frame will still be changed as applicable.

Default Value:
  • true
Source - gameobjects/Button.js, line 173

<readonly> onOverSound :Phaser.Sound|Phaser.AudioSprite|null

The Sound to be played when this Buttons Over state is activated.

Type:
Source - gameobjects/Button.js, line 91

<readonly> onOverSoundMarker :string

The Sound Marker used in conjunction with the onOverSound.

Source - gameobjects/Button.js, line 119

<readonly> onUpSound :Phaser.Sound|Phaser.AudioSprite|null

The Sound to be played when this Buttons Up state is activated.

Type:
Source - gameobjects/Button.js, line 112

<readonly> onUpSoundMarker :string

The Sound Marker used in conjunction with the onUpSound.

Source - gameobjects/Button.js, line 140

<readonly> parent :PIXI.DisplayObjectContainer

[read-only] The display object container that contains this display object.

Inherited From:
Source - pixi/display/DisplayObject.js, line 79

pendingDestroy :boolean

A Game Object is that is pendingDestroy is flagged to have its destroy method called on the next logic update. You can set it directly to allow you to flag an object to be destroyed on its next update.

This is extremely useful if you wish to destroy an object from within one of its own callbacks such as with Buttons or other Input events.

Inherited From:
Source - gameobjects/components/Core.js, line 259

<readonly> physicsType :number

The const physics body type of this object.

Source - gameobjects/Button.js, line 56

pivot :Point

The pivot point of the displayObject that it rotates around

Inherited From:
Source - pixi/display/DisplayObject.js, line 30

position :Point

The coordinate of the object relative to the local coordinates of the parent.

Inherited From:
Source - pixi/display/DisplayObject.js, line 14

<readonly> previousPosition :Phaser.Point

The position the Game Object was located in the previous frame.

Inherited From:
Source - gameobjects/components/Core.js, line 225

<readonly> previousRotation :number

The rotation the Game Object was in set to in the previous frame. Value is in radians.

Inherited From:
Source - gameobjects/components/Core.js, line 232

renderable :Boolean

Can this object be rendered

Inherited From:
Source - pixi/display/DisplayObject.js, line 71

<readonly> renderOrderID :number

The render order ID is used internally by the renderer and Input Manager and should not be modified. This property is mostly used internally by the renderers, but is exposed for the use of plugins.

Inherited From:
Source - gameobjects/components/Core.js, line 240

The right coordinate of the Game Object. This is the same as x + width - offsetX.

Inherited From:
Source - gameobjects/components/Bounds.js, line 124

rotation :Number

The rotation of the object in radians.

Inherited From:
Source - pixi/display/DisplayObject.js, line 38

scale :Point

The scale factor of the object.

Inherited From:
Source - pixi/display/DisplayObject.js, line 22

shader :PIXI.AbstractFilter

The shader that will be used to render the texture to the stage. Set to null to remove a current shader.

Inherited From:
Default Value:
  • null
Source - pixi/display/Sprite.js, line 98

smoothed :boolean

Enable or disable texture smoothing for this Game Object.

It only takes effect if the Game Object is using an image based texture.

Smoothing is enabled by default.

Inherited From:
Source - gameobjects/components/Smoothed.js, line 25

<readonly> stage :Stage

[read-only] The stage the display object is connected to, or undefined if it is not connected to the stage.

Inherited From:
Source - pixi/display/DisplayObject.js, line 88

texture :PIXI.Texture

The texture that the sprite is using

Inherited From:
Source - pixi/display/Sprite.js, line 33

tint :Number

The tint applied to the sprite. This is a hex value. A value of 0xFFFFFF will remove any tint effect.

Inherited From:
Default Value:
  • 0xFFFFFF
Source - pixi/display/Sprite.js, line 59

tintedTexture :Canvas

A canvas that contains the tinted version of the Sprite (in Canvas mode, WebGL doesn't populate this)

Inherited From:
Default Value:
  • null
Source - pixi/display/Sprite.js, line 78

top :number

The y coordinate of the Game Object. This is the same as y - offsetY.

Inherited From:
Source - gameobjects/components/Bounds.js, line 146

<readonly> type :number

The Phaser Object Type.

Source - gameobjects/Button.js, line 50

visible :Boolean

The visibility of the object.

Inherited From:
Source - pixi/display/DisplayObject.js, line 54

width :Number

The width of the sprite, setting this will actually modify the scale to achieve the value set

Inherited From:
Source - pixi/display/Sprite.js, line 129

world :Phaser.Point

The world coordinates of this Game Object in pixels. Depending on where in the display list this Game Object is placed this value can differ from position, which contains the x/y coordinates relative to the Game Objects parent.

Inherited From:
Source - gameobjects/components/Core.js, line 211

<readonly> worldAlpha :Number

[read-only] The multiplied alpha of the displayObject

Inherited From:
Source - pixi/display/DisplayObject.js, line 97

<readonly> worldPosition :Point

The position of the Display Object based on the world transform. This value is updated at the end of updateTransform and takes all parent transforms into account.

Inherited From:
Source - pixi/display/DisplayObject.js, line 116

<readonly> worldRotation :Number

The rotation of the Display Object, in radians, based on the world transform. This value is updated at the end of updateTransform and takes all parent transforms into account.

Inherited From:
Source - pixi/display/DisplayObject.js, line 136

<readonly> worldScale :Point

The scale of the Display Object based on the world transform. This value is updated at the end of updateTransform and takes all parent transforms into account.

Inherited From:
Source - pixi/display/DisplayObject.js, line 126

worldVisible :Boolean

[read-only] Indicates if the sprite is globally visible.

Inherited From:
Source - pixi/display/DisplayObject.js, line 258

x :Number

The position of the displayObject on the x axis relative to the local coordinates of the parent.

Inherited From:
Source - pixi/display/DisplayObject.js, line 722

y :Number

The position of the displayObject on the y axis relative to the local coordinates of the parent.

Inherited From:
Source - pixi/display/DisplayObject.js, line 740

<readonly> z :number

The z depth of this Game Object within its parent Group. No two objects in a Group can have the same z value. This value is adjusted automatically whenever the Group hierarchy changes. If you wish to re-order the layering of a Game Object then see methods like Group.moveUp or Group.bringToTop.

Inherited From:
Source - gameobjects/components/Core.js, line 177

Methods

addChild(child) → {PIXI.DisplayObject}

Adds a child to the container.

Parameters:
Name Type Description
child PIXI.DisplayObject

The DisplayObject to add to the container

Returns:

The child that was added.

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 102

addChildAt(child, index) → {PIXI.DisplayObject}

Adds a child to the container at a specified index. If the index is out of bounds an error will be thrown

Parameters:
Name Type Description
child PIXI.DisplayObject

The child to add

index Number

The index to place the child in

Returns:

The child that was added.

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 114

alignIn(container, position, offsetX, offsetY) → {Object}

Aligns this Game Object within another Game Object, or Rectangle, known as the 'container', to one of 9 possible positions.

The container must be a Game Object, or Phaser.Rectangle object. This can include properties such as World.bounds or Camera.view, for aligning Game Objects within the world and camera bounds. Or it can include other Sprites, Images, Text objects, BitmapText, TileSprites or Buttons.

Please note that aligning a Sprite to another Game Object does not make it a child of the container. It simply modifies its position coordinates so it aligns with it.

The position constants you can use are:

Phaser.TOP_LEFT, Phaser.TOP_CENTER, Phaser.TOP_RIGHT, Phaser.LEFT_CENTER, Phaser.CENTER, Phaser.RIGHT_CENTER, Phaser.BOTTOM_LEFT, Phaser.BOTTOM_CENTER and Phaser.BOTTOM_RIGHT.

The Game Objects are placed in such a way that their bounds align with the container, taking into consideration rotation, scale and the anchor property. This allows you to neatly align Game Objects, irrespective of their position value.

The optional offsetX and offsetY arguments allow you to apply extra spacing to the final aligned position of the Game Object. For example:

sprite.alignIn(background, Phaser.BOTTOM_RIGHT, -20, -20)

Would align the sprite to the bottom-right, but moved 20 pixels in from the corner. Think of the offsets as applying an adjustment to the containers bounds before the alignment takes place. So providing a negative offset will 'shrink' the container bounds by that amount, and providing a positive one expands it.

Parameters:
Name Type Argument Default Description
container Phaser.Rectangle | Phaser.Sprite | Phaser.Image | Phaser.Text | Phaser.BitmapText | Phaser.Button | Phaser.Graphics | Phaser.TileSprite

The Game Object or Rectangle with which to align this Game Object to. Can also include properties such as World.bounds or Camera.view.

position integer <optional>

The position constant. One of Phaser.TOP_LEFT (default), Phaser.TOP_CENTER, Phaser.TOP_RIGHT, Phaser.LEFT_CENTER, Phaser.CENTER, Phaser.RIGHT_CENTER, Phaser.BOTTOM_LEFT, Phaser.BOTTOM_CENTER or Phaser.BOTTOM_RIGHT.

offsetX integer <optional>
0

A horizontal adjustment of the Containers bounds, applied to the aligned position of the Game Object. Use a negative value to shrink the bounds, positive to increase it.

offsetY integer <optional>
0

A vertical adjustment of the Containers bounds, applied to the aligned position of the Game Object. Use a negative value to shrink the bounds, positive to increase it.

Returns:
Object -

This Game Object.

Inherited From:
Source - gameobjects/components/Bounds.js, line 223

alignTo(parent, position, offsetX, offsetY) → {Object}

Aligns this Game Object to the side of another Game Object, or Rectangle, known as the 'parent', in one of 11 possible positions.

The parent must be a Game Object, or Phaser.Rectangle object. This can include properties such as World.bounds or Camera.view, for aligning Game Objects within the world and camera bounds. Or it can include other Sprites, Images, Text objects, BitmapText, TileSprites or Buttons.

Please note that aligning a Sprite to another Game Object does not make it a child of the parent. It simply modifies its position coordinates so it aligns with it.

The position constants you can use are:

Phaser.TOP_LEFT (default), Phaser.TOP_CENTER, Phaser.TOP_RIGHT, Phaser.LEFT_TOP, Phaser.LEFT_CENTER, Phaser.LEFT_BOTTOM, Phaser.RIGHT_TOP, Phaser.RIGHT_CENTER, Phaser.RIGHT_BOTTOM, Phaser.BOTTOM_LEFT, Phaser.BOTTOM_CENTER and Phaser.BOTTOM_RIGHT.

The Game Objects are placed in such a way that their bounds align with the parent, taking into consideration rotation, scale and the anchor property. This allows you to neatly align Game Objects, irrespective of their position value.

The optional offsetX and offsetY arguments allow you to apply extra spacing to the final aligned position of the Game Object. For example:

sprite.alignTo(background, Phaser.BOTTOM_RIGHT, -20, -20)

Would align the sprite to the bottom-right, but moved 20 pixels in from the corner. Think of the offsets as applying an adjustment to the parents bounds before the alignment takes place. So providing a negative offset will 'shrink' the parent bounds by that amount, and providing a positive one expands it.

Parameters:
Name Type Argument Default Description
parent Phaser.Rectangle | Phaser.Sprite | Phaser.Image | Phaser.Text | Phaser.BitmapText | Phaser.Button | Phaser.Graphics | Phaser.TileSprite

The Game Object or Rectangle with which to align this Game Object to. Can also include properties such as World.bounds or Camera.view.

position integer <optional>

The position constant. One of Phaser.TOP_LEFT, Phaser.TOP_CENTER, Phaser.TOP_RIGHT, Phaser.LEFT_TOP, Phaser.LEFT_CENTER, Phaser.LEFT_BOTTOM, Phaser.RIGHT_TOP, Phaser.RIGHT_CENTER, Phaser.RIGHT_BOTTOM, Phaser.BOTTOM_LEFT, Phaser.BOTTOM_CENTER or Phaser.BOTTOM_RIGHT.

offsetX integer <optional>
0

A horizontal adjustment of the Containers bounds, applied to the aligned position of the Game Object. Use a negative value to shrink the bounds, positive to increase it.

offsetY integer <optional>
0

A vertical adjustment of the Containers bounds, applied to the aligned position of the Game Object. Use a negative value to shrink the bounds, positive to increase it.

Returns:
Object -

This Game Object.

Inherited From:
Source - gameobjects/components/Bounds.js, line 321

bringToTop() → {PIXI.DisplayObject}

Brings this Game Object to the top of its parents display list. Visually this means it will render over the top of any old child in the same Group.

If this Game Object hasn't been added to a custom Group then this method will bring it to the top of the Game World, because the World is the root Group from which all Game Objects descend.

Returns:

This instance.

Inherited From:
Source - gameobjects/components/BringToTop.js, line 24

clearFrames()

Clears all of the frames set on this Button.

Source - gameobjects/Button.js, line 233

crop(rect, copy)

Crop allows you to crop the texture being used to display this Game Object. Setting a crop rectangle modifies the core texture frame. The Game Object width and height properties will be adjusted accordingly.

Cropping takes place from the top-left and can be modified in real-time either by providing an updated rectangle object to this method, or by modifying cropRect property directly and then calling updateCrop.

The rectangle object given to this method can be either a Phaser.Rectangle or any other object so long as it has public x, y, width, height, right and bottom properties.

A reference to the rectangle is stored in cropRect unless the copy parameter is true, in which case the values are duplicated to a local object.

Parameters:
Name Type Argument Default Description
rect Phaser.Rectangle

The Rectangle used during cropping. Pass null or no parameters to clear a previously set crop rectangle.

copy boolean <optional>
false

If false cropRect will be stored as a reference to the given rect. If true it will copy the rect values into a local Phaser Rectangle object stored in cropRect.

Inherited From:
Source - gameobjects/components/Crop.js, line 49

destroy()

Destroy this DisplayObject. Removes all references to transformCallbacks, its parent, the stage, filters, bounds, mask and cached Sprites.

Inherited From:
Source - pixi/display/DisplayObject.js, line 223

generateTexture(resolution, scaleMode, renderer) → {PIXI.RenderTexture}

Useful function that returns a texture of the displayObject object that can then be used to create sprites This can be quite useful if your displayObject is static / complicated and needs to be reused multiple times.

Parameters:
Name Type Description
resolution Number

The resolution of the texture being generated

scaleMode Number

See {{#crossLink "PIXI/scaleModes:property"}}PIXI.scaleModes{{/crossLink}} for possible values

renderer PIXI.CanvasRenderer | PIXI.WebGLRenderer

The renderer used to generate the texture.

Returns:

a texture of the graphics object

Inherited From:
Source - pixi/display/DisplayObject.js, line 541

getBounds(matrix) → {Rectangle}

Returns the bounds of the Sprite as a rectangle. The bounds calculation takes the worldTransform into account.

It is important to note that the transform is not updated when you call this method. So if this Sprite is the child of a Display Object which has had its transform updated since the last render pass, those changes will not yet have been applied to this Sprites worldTransform. If you need to ensure that all parent transforms are factored into this getBounds operation then you should call updateTransform on the root most object in this Sprites display list first.

Parameters:
Name Type Description
matrix Matrix

the transformation matrix of the sprite

Returns:
Rectangle -

the framing rectangle

Inherited From:
Source - pixi/display/Sprite.js, line 203

getChildAt(index) → {PIXI.DisplayObject}

Returns the child at the specified index

Parameters:
Name Type Description
index Number

The index to get the child from

Returns:

The child at the given index, if any.

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 205

getChildIndex(child) → {Number}

Returns the index position of a child DisplayObject instance

Parameters:
Name Type Description
child PIXI.DisplayObject

The DisplayObject instance to identify

Returns:
Number -

The index position of the child display object to identify

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 170

getLocalBounds() → {Rectangle}

Retrieves the non-global local bounds of the displayObjectContainer as a rectangle. The calculation takes all visible children into consideration.

Returns:
Rectangle -

The rectangular bounding area

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 381

kill() → {PIXI.DisplayObject}

Kills a Game Object. A killed Game Object has its alive, exists and visible properties all set to false.

It will dispatch the onKilled event. You can listen to events.onKilled for the signal.

Note that killing a Game Object is a way for you to quickly recycle it in an object pool, it doesn't destroy the object or free it up from memory.

If you don't need this Game Object any more you should call destroy instead.

Returns:

This instance.

Inherited From:
Source - gameobjects/components/LifeSpan.js, line 113

loadTexture(key, frame, stopAnimation)

Changes the base texture the Game Object is using. The old texture is removed and the new one is referenced or fetched from the Cache.

If your Game Object is using a frame from a texture atlas and you just wish to change to another frame, then see the frame or frameName properties instead.

You should only use loadTexture if you want to replace the base texture entirely.

Calling this method causes a WebGL texture update, so use sparingly or in low-intensity portions of your game, or if you know the new texture is already on the GPU.

You can use the new const Phaser.PENDING_ATLAS as the texture key for any sprite. Doing this then sets the key to be the frame argument (the frame is set to zero).

This allows you to create sprites using load.image during development, and then change them to use a Texture Atlas later in development by simply searching your code for 'PENDING_ATLAS' and swapping it to be the key of the atlas data.

Note: You cannot use a RenderTexture as a texture for a TileSprite.

Parameters:
Name Type Argument Default Description
key string | Phaser.RenderTexture | Phaser.BitmapData | Phaser.Video | PIXI.Texture

This is the image or texture used by the Sprite during rendering. It can be a string which is a reference to the Cache Image entry, or an instance of a RenderTexture, BitmapData, Video or PIXI.Texture.

frame string | number <optional>

If this Sprite is using part of a sprite sheet or texture atlas you can specify the exact frame to use by giving a string or numeric index.

stopAnimation boolean <optional>
true

If an animation is already playing on this Sprite you can choose to stop it or let it carry on playing.

Inherited From:
Source - gameobjects/components/LoadTexture.js, line 51

moveDown() → {PIXI.DisplayObject}

Moves this Game Object down one place in its parents display list. This call has no effect if the Game Object is already at the bottom of the display list.

If this Game Object hasn't been added to a custom Group then this method will move it one object down within the Game World, because the World is the root Group from which all Game Objects descend.

Returns:

This instance.

Inherited From:
Source - gameobjects/components/BringToTop.js, line 87

moveUp() → {PIXI.DisplayObject}

Moves this Game Object up one place in its parents display list. This call has no effect if the Game Object is already at the top of the display list.

If this Game Object hasn't been added to a custom Group then this method will move it one object up within the Game World, because the World is the root Group from which all Game Objects descend.

Returns:

This instance.

Inherited From:
Source - gameobjects/components/BringToTop.js, line 66

<internal> onInputDownHandler(sprite, pointer)

Internal function that handles input events.

Parameters:
Name Type Description
sprite Phaser.Button

The Button that the event occurred on.

pointer Phaser.Pointer

The Pointer that activated the Button.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source - gameobjects/Button.js, line 531

<internal> onInputOutHandler(sprite, pointer)

Internal function that handles input events.

Parameters:
Name Type Description
sprite Phaser.Button

The Button that the event occurred on.

pointer Phaser.Pointer

The Pointer that activated the Button.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source - gameobjects/Button.js, line 511

<internal> onInputOverHandler(sprite, pointer)

Internal function that handles input events.

Parameters:
Name Type Description
sprite Phaser.Button

The Button that the event occurred on.

pointer Phaser.Pointer

The Pointer that activated the Button.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source - gameobjects/Button.js, line 478

<internal> onInputUpHandler(sprite, pointer)

Internal function that handles input events.

Parameters:
Name Type Description
sprite Phaser.Button

The Button that the event occurred on.

pointer Phaser.Pointer

The Pointer that activated the Button.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source - gameobjects/Button.js, line 551

overlap(displayObject) → {boolean}

Checks to see if the bounds of this Game Object overlaps with the bounds of the given Display Object, which can be a Sprite, Image, TileSprite or anything that extends those such as Button or provides a getBounds method and result.

This check ignores the hitArea property if set and runs a getBounds comparison on both objects to determine the result.

Therefore it's relatively expensive to use in large quantities, i.e. with lots of Sprites at a high frequency. It should be fine for low-volume testing where physics isn't required.

Parameters:
Name Type Description
displayObject Phaser.Sprite | Phaser.Image | Phaser.TileSprite | Phaser.Button | PIXI.DisplayObject

The display object to check against.

Returns:
boolean -

True if the bounds of this Game Object intersects at any point with the bounds of the given display object.

Inherited From:
Source - gameobjects/components/Overlap.js, line 29

play(name, frameRate, loop, killOnComplete) → {Phaser.Animation}

Plays an Animation.

The animation should have previously been created via animations.add.

If the animation is already playing calling this again won't do anything. If you need to reset an already running animation do so directly on the Animation object itself or via AnimationManager.stop.

Parameters:
Name Type Argument Default Description
name string

The name of the animation to be played, e.g. "fire", "walk", "jump". Must have been previously created via 'AnimationManager.add'.

frameRate number <optional>
null

The framerate to play the animation at. The speed is given in frames per second. If not provided the previously set frameRate of the Animation is used.

loop boolean <optional>
false

Should the animation be looped after playback. If not provided the previously set loop value of the Animation is used.

killOnComplete boolean <optional>
false

If set to true when the animation completes (only happens if loop=false) the parent Sprite will be killed.

Returns:

A reference to playing Animation.

Inherited From:
Source - gameobjects/components/Animation.js, line 31

<internal> postUpdate()

Internal method called by the World postUpdate cycle.

Inherited From:
Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source - gameobjects/components/Core.js, line 338

preUpdate()

Automatically called by World.preUpdate.

Inherited From:
Source - gameobjects/Image.js, line 77

removeChild(child) → {PIXI.DisplayObject}

Removes a child from the container.

Parameters:
Name Type Description
child PIXI.DisplayObject

The DisplayObject to remove

Returns:

The child that was removed.

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 222

removeChildAt(index) → {PIXI.DisplayObject}

Removes a child from the specified index position.

Parameters:
Name Type Description
index Number

The index to get the child from

Returns:

The child that was removed.

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 237

removeChildren(beginIndex, endIndex)

Removes all children from this container that are within the begin and end indexes.

Parameters:
Name Type Description
beginIndex Number

The beginning position. Default value is 0.

endIndex Number

The ending position. Default value is size of the container.

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 255

<internal> removedFromWorld()

Called when this Button is removed from the World.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source - gameobjects/Button.js, line 244

removeStageReference()

Removes the current stage reference from the container and all of its children.

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 426

reset(x, y, health) → {PIXI.DisplayObject}

Resets the Game Object.

This moves the Game Object to the given x/y world coordinates and sets fresh, exists, visible and renderable to true.

If this Game Object has the LifeSpan component it will also set alive to true and health to the given value.

If this Game Object has a Physics Body it will reset the Body.

Parameters:
Name Type Argument Default Description
x number

The x coordinate (in world space) to position the Game Object at.

y number

The y coordinate (in world space) to position the Game Object at.

health number <optional>
1

The health to give the Game Object if it has the Health component.

Returns:

This instance.

Inherited From:
Source - gameobjects/components/Reset.js, line 30

resetFrame()

Resets the texture frame dimensions that the Game Object uses for rendering.

Inherited From:
Source - gameobjects/components/LoadTexture.js, line 232

resizeFrame(parent, width, height)

Resizes the Frame dimensions that the Game Object uses for rendering.

You shouldn't normally need to ever call this, but in the case of special texture types such as Video or BitmapData it can be useful to adjust the dimensions directly in this way.

Parameters:
Name Type Description
parent object

The parent texture object that caused the resize, i.e. a Phaser.Video object.

width integer

The new width of the texture.

height integer

The new height of the texture.

Inherited From:
Source - gameobjects/components/LoadTexture.js, line 220

revive(health) → {PIXI.DisplayObject}

Brings a 'dead' Game Object back to life, optionally resetting its health value in the process.

A resurrected Game Object has its alive, exists and visible properties all set to true.

It will dispatch the onRevived event. Listen to events.onRevived for the signal.

Parameters:
Name Type Argument Default Description
health number <optional>
100

The health to give the Game Object. Only set if the GameObject has the Health component.

Returns:

This instance.

Inherited From:
Source - gameobjects/components/LifeSpan.js, line 78

sendToBack() → {PIXI.DisplayObject}

Sends this Game Object to the bottom of its parents display list. Visually this means it will render below all other children in the same Group.

If this Game Object hasn't been added to a custom Group then this method will send it to the bottom of the Game World, because the World is the root Group from which all Game Objects descend.

Returns:

This instance.

Inherited From:
Source - gameobjects/components/BringToTop.js, line 45

setChildIndex(child, index)

Changes the position of an existing child in the display object container

Parameters:
Name Type Description
child PIXI.DisplayObject

The child DisplayObject instance for which you want to change the index number

index Number

The resulting index number for the child display object

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 187

setDownSound(sound, marker)

The Sound to be played when a Pointer presses down on this Button.

Parameters:
Name Type Argument Description
sound Phaser.Sound | Phaser.AudioSprite

The Sound that will be played.

marker string <optional>

A Sound Marker that will be used in the playback.

Source - gameobjects/Button.js, line 450

setFrame(frame)

Sets the texture frame the Game Object uses for rendering.

This is primarily an internal method used by loadTexture, but is exposed for the use of plugins and custom classes.

Parameters:
Name Type Description
frame Phaser.Frame

The Frame to be used by the texture.

Inherited From:
Source - gameobjects/components/LoadTexture.js, line 155

setFrames(overFrame, outFrame, downFrame, upFrame)

Used to manually set the frames that will be used for the different states of the Button.

Frames can be specified as either an integer (the frame ID) or a string (the frame name); these are the same values that can be used with a Sprite constructor.

Parameters:
Name Type Argument Description
overFrame string | integer <optional>

The frame / frameName when the button is in the Over state.

outFrame string | integer <optional>

The frame / frameName when the button is in the Out state.

downFrame string | integer <optional>

The frame / frameName when the button is in the Down state.

upFrame string | integer <optional>

The frame / frameName when the button is in the Up state.

Source - gameobjects/Button.js, line 320

setOutSound(sound, marker)

The Sound to be played when a Pointer moves out of this Button.

Parameters:
Name Type Argument Description
sound Phaser.Sound | Phaser.AudioSprite

The Sound that will be played.

marker string <optional>

A Sound Marker that will be used in the playback.

Source - gameobjects/Button.js, line 436

setOverSound(sound, marker)

The Sound to be played when a Pointer moves over this Button.

Parameters:
Name Type Argument Description
sound Phaser.Sound | Phaser.AudioSprite

The Sound that will be played.

marker string <optional>

A Sound Marker that will be used in the playback.

Source - gameobjects/Button.js, line 422

setSounds(overSound, overMarker, downSound, downMarker, outSound, outMarker, upSound, upMarker)

Sets the sounds to be played whenever this Button is interacted with. Sounds can be either full Sound objects, or markers pointing to a section of a Sound object. The most common forms of sounds are 'hover' effects and 'click' effects, which is why the order of the parameters is overSound then downSound.

Call this function with no parameters to reset all sounds on this Button.

Parameters:
Name Type Argument Description
overSound Phaser.Sound | Phaser.AudioSprite <optional>

Over Button Sound.

overMarker string <optional>

Over Button Sound Marker.

downSound Phaser.Sound | Phaser.AudioSprite <optional>

Down Button Sound.

downMarker string <optional>

Down Button Sound Marker.

outSound Phaser.Sound | Phaser.AudioSprite <optional>

Out Button Sound.

outMarker string <optional>

Out Button Sound Marker.

upSound Phaser.Sound | Phaser.AudioSprite <optional>

Up Button Sound.

upMarker string <optional>

Up Button Sound Marker.

Source - gameobjects/Button.js, line 396

setStageReference(stage)

Sets the containers Stage reference. This is the Stage that this object, and all of its children, is connected to.

Parameters:
Name Type Description
stage Stage

the stage that the container will have as its current stage reference

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 410

setTexture(texture, destroy)

Sets the texture of the sprite. Be warned that this doesn't remove or destroy the previous texture this Sprite was using.

Parameters:
Name Type Argument Default Description
texture PIXI.Texture

The PIXI texture that is displayed by the sprite

destroy Boolean <optional>
false

Call Texture.destroy on the current texture before replacing it with the new one?

Inherited From:
Source - pixi/display/Sprite.js, line 167

setUpSound(sound, marker)

The Sound to be played when a Pointer has pressed down and is released from this Button.

Parameters:
Name Type Argument Description
sound Phaser.Sound | Phaser.AudioSprite

The Sound that will be played.

marker string <optional>

A Sound Marker that will be used in the playback.

Source - gameobjects/Button.js, line 464

swapChildren(child, child2)

Swaps the position of 2 Display Objects within this container.

Parameters:
Name Type Description
child PIXI.DisplayObject

-

child2 PIXI.DisplayObject

-

Inherited From:
Source - pixi/display/DisplayObjectContainer.js, line 145

toGlobal(position) → {Point}

Calculates the global position of the display object

Parameters:
Name Type Description
position Point

The world origin to calculate from

Returns:
Point -

A point object representing the position of this object

Inherited From:
Source - pixi/display/DisplayObject.js, line 575

toLocal(position, from) → {Point}

Calculates the local position of the display object relative to another point

Parameters:
Name Type Argument Description
position Point

The world origin to calculate from

from PIXI.DisplayObject <optional>

The DisplayObject to calculate the global position from

Returns:
Point -

A point object representing the position of this object

Inherited From:
Source - pixi/display/DisplayObject.js, line 589

update()

Override this method in your own custom objects to handle any update requirements. It is called immediately after preUpdate and before postUpdate. Remember if this Game Object has any children you should call update on those too.

Inherited From:
Source - gameobjects/components/Core.js, line 328

updateCache()

Generates and updates the cached sprite for this object.

Inherited From:
Source - pixi/display/DisplayObject.js, line 565

updateCrop()

If you have set a crop rectangle on this Game Object via crop and since modified the cropRect property, or the rectangle it references, then you need to update the crop frame by calling this method.

Inherited From:
Source - gameobjects/components/Crop.js, line 86
Phaser Copyright © 2012-2016 Photon Storm Ltd.
Documentation generated by JSDoc 3.3.3 on Fri Jun 17 2016 12:45:30 GMT+0100 (BST) using the DocStrap template.