new TilemapLayer(game, tilemap, index, width, height)
A TilemapLayer is a Phaser.Image/Sprite that renders a specific TileLayer of a Tilemap.
Since a TilemapLayer is a Sprite it can be moved around the display, added to other groups or display objects, etc.
By default TilemapLayers have fixedToCamera set to true
. Changing this will break Camera follow and scrolling behavior.
Parameters:
Name | Type | Description |
---|---|---|
game |
Phaser.Game | Game reference to the currently running game. |
tilemap |
Phaser.Tilemap | The tilemap to which this layer belongs. |
index |
integer | The index of the TileLayer to render within the Tilemap. |
width |
integer | Width of the renderable area of the layer (in pixels). |
height |
integer | Height of the renderable area of the layer (in pixels). |
- Source - tilemap/TilemapLayer.js, line 23
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 useGroup.getFirstAlive
in conjunction with this property for fast object pooling and recycling.- Inherited From:
- Default Value:
- true
- Source - gameobjects/components/LifeSpan.js, line 50
-
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 17
-
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 itsrenderable
property set tofalse
.
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 82
-
body :Phaser.Physics.Arcade.Body|Phaser.Physics.P2.Body|Phaser.Physics.Ninja.Body|null
-
body
is the Game Objects physics body. Once a Game Object is enabled for physics you access all associated
properties and methods via it.By default Game Objects won't add themselves to any physics system and their
body
property will benull
.To enable this Game Object for physics you need to call
game.physics.enable(object, system)
whereobject
is this object
andsystem
is the Physics system you are using. If none is given it defaults toPhaser.Physics.Arcade
.You can alternatively call
game.physics.arcade.enable(object)
, or add this Game Object to a physics enabled Group.Important: Enabling a Game Object for P2 or Ninja physics will automatically set its
anchor
property to 0.5,
so the physics body is centered on the Game Object.If you need a different result then adjust or re-create the Body shape offsets manually or reset the anchor after enabling physics.
Type:
- Inherited From:
- Source - gameobjects/components/PhysicsBody.js, line 91
-
bottom :number
-
The sum of the y and height properties.
This is the same asy + height - offsetY
.- Inherited From:
- Source - gameobjects/components/Bounds.js, line 168
-
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
-
<internal> canvas :HTMLCanvasElement
-
The canvas to which this TilemapLayer draws.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - tilemap/TilemapLayer.js, line 59
-
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
-
checkWorldBounds :boolean
-
If this is set to
true
the Game Object checks if it is within the World bounds each frame.When it is no longer intersecting the world bounds it dispatches the
onOutOfBounds
event.If it was previously out of bounds but is now intersecting the world bounds again it dispatches the
onEnterBounds
event.It also optionally kills the Game Object if
outOfBoundsKill
istrue
.When
checkWorldBounds
is enabled it forces the Game Object to calculate its full bounds every frame.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/InWorld.js, line 98
-
<readonly> children :Array.<DisplayObject>
-
[read-only] The array of children of this container.
Type:
- Array.<DisplayObject>
- 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 viacrop
.
If you modify this property directly you must callupdateCrop
in order to have the change take effect.- Inherited From:
- Source - gameobjects/components/Crop.js, line 24
-
damage
-
Damages the Game Object. This removes the given amount of health from the
health
property.If health is taken below or is equal to zero then the
kill
method is called.- Inherited From:
- Source - gameobjects/components/Health.js, line 46
-
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
-
Enable an additional "debug rendering" pass to display collision information.
- Source - tilemap/TilemapLayer.js, line 110
-
debugSettings
-
Settings used for debugging and diagnostics.
- Source - tilemap/TilemapLayer.js, line 133
Properties:
Name Type Argument Description missingImageFill
string <nullable>
A tile is rendered as a rectangle using the following fill if a valid tileset/image cannot be found. A value of
null
prevents additional rendering for tiles without a valid tileset image. This takes effect even when debug rendering for the layer is not enabled.debuggedTileOverfill
string <nullable>
If a Tile has
Tile#debug
true then, after normal tile image rendering, a rectangle with the following fill is drawn above/over it. This takes effect even when debug rendering for the layer is not enabled.forceFullRedraw
boolean When debug rendering (
debug
is true), and this option is enabled, the a full redraw is forced and rendering optimization is suppressed.debugAlpha
number When debug rendering (
debug
is true), the tileset is initially rendered with this alpha level. This can make the tile edges clearer.facingEdgeStroke
string <nullable>
When debug rendering (
debug
is true), this color/stroke is used to draw "face" edges. A value ofnull
disables coloring facing edges.collidingTileOverfill
string <nullable>
When debug rendering (
debug
is true), this fill is used for tiles that are collidable. A value ofnull
disables applying the additional overfill. -
<readonly> deltaX :number
-
Returns the delta x value. The difference between world.x now and in the previous frame.
The value will be positive if the Game Object has moved to the right or negative if to the left.
- Inherited From:
- Source - gameobjects/components/Delta.js, line 24
-
<readonly> deltaY :number
-
Returns the delta y value. The difference between world.y now and in the previous frame.
The value will be positive if the Game Object has moved down or negative if up.
- Inherited From:
- Source - gameobjects/components/Delta.js, line 42
-
<readonly> deltaZ :number
-
Returns the delta z value. The difference between rotation now and in the previous frame. The delta value.
- Inherited From:
- Source - gameobjects/components/Delta.js, line 58
-
<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
-
<internal> dirty :boolean
-
If true tiles will be force rendered, even if such is not believed to be required.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - tilemap/TilemapLayer.js, line 167
-
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 the core game loop and physics update this game object or not.
- Source - tilemap/TilemapLayer.js, line 115
-
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 havefixedToCamera
enabled on them.- Inherited From:
- Source - gameobjects/components/FixedToCamera.js, line 56
-
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 259
-
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 284
-
<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
-
heal
-
Heal the Game Object. This adds the given amount of health to the
health
property.- Inherited From:
- Source - gameobjects/components/Health.js, line 90
-
health :number
-
The Game Objects health value. This is a handy property for setting and manipulating health on a Game Object.
It can be used in combination with the
damage
method or modified directly.- Inherited From:
- Default Value:
- 1
- Source - gameobjects/components/Health.js, line 26
-
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 144
-
ignoreChildInput :Boolean
-
If
ignoreChildInput
isfalse
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.
Returnstrue
if they do, otherwisefalse
if fully outside of the Cameras bounds.- Inherited From:
- Source - gameobjects/components/AutoCull.js, line 37
-
<internal, readonly> index :number
-
The index of this layer within the Tilemap.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - tilemap/TilemapLayer.js, line 44
-
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:
- Phaser.InputHandler | null
- 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.
If you want to temporarily disable input for a Game Object, then it's better to set
input.enabled = false
, as it won't reset any of the Input Handlers internal properties.
You can then toggle this back on as needed.- Inherited From:
- Source - gameobjects/components/InputEnabled.js, line 42
-
<readonly> inWorld :boolean
-
Checks if the Game Objects bounds are within, or intersect at any point with the Game World bounds.
- Inherited From:
- Source - gameobjects/components/InWorld.js, line 129
-
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:
- string | Phaser.RenderTexture | Phaser.BitmapData | Phaser.Video | PIXI.Texture
- Inherited From:
- Source - gameobjects/components/Core.js, line 203
-
<internal, readonly> layer :object
-
The layer object within the Tilemap that this layer represents.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - tilemap/TilemapLayer.js, line 52
-
left :number
-
The left coordinate of the Game Object.
This is the same asx - 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 thekill
method.Very handy for particles, bullets, collectibles, or any other short-lived entity.
- Inherited From:
- Source - gameobjects/components/LifeSpan.js, line 65
-
<internal, readonly> map :Phaser.Tilemap
-
The Tilemap to which this layer is bound.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - tilemap/TilemapLayer.js, line 36
-
maxHealth :number
-
The Game Objects maximum health value. This works in combination with the
heal
method to ensure
the health value never exceeds the maximum.- Inherited From:
- Default Value:
- 100
- Source - gameobjects/components/Health.js, line 35
-
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 aswidth * 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 asheight * anchor.y
.
It will only be > 0 if anchor.y is not equal to zero.- Inherited From:
- Source - gameobjects/components/Bounds.js, line 42
-
outOfBoundsKill :boolean
-
If this and the
checkWorldBounds
property are both set totrue
then thekill
method is called as soon asinWorld
returns false.- Inherited From:
- Source - gameobjects/components/InWorld.js, line 106
-
outOfCameraBoundsKill :boolean
-
If this and the
autoCull
property are both set totrue
, then thekill
method
is called as soon as the Game Object leaves the camera bounds.- Inherited From:
- Source - gameobjects/components/InWorld.js, line 115
-
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 - tilemap/TilemapLayer.js, line 83
-
<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
-
rayStepRate :integer
-
When ray-casting against tiles this is the number of steps it will jump. For larger tile sizes you can increase this to improve performance.
- Default Value:
- 4
- Source - tilemap/TilemapLayer.js, line 174
-
<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
-
renderSettings
-
Settings that control standard (non-diagnostic) rendering.
- Default Value:
- {"enableScrollDelta":false,"overdrawRatio":0.2,"copyCanvas":null}
- Source - tilemap/TilemapLayer.js, line 98
Properties:
Name Type Argument Default Description enableScrollDelta
boolean <optional>
true Delta scroll rendering only draws tiles/edges as they come into view.
This can greatly improve scrolling rendering performance, especially when there are many small tiles.
It should only be disabled in rare cases.copyCanvas
DOMCanvasElement <optional>
<nullable>
(auto) [Internal] If set, force using a separate (shared) copy canvas.
Using a canvas bitblt/copy when the source and destinations region overlap produces unexpected behavior
in some browsers, notably Safari. -
right :number
-
The right coordinate of the Game Object.
This is the same asx + width - offsetX
.- Inherited From:
- Source - gameobjects/components/Bounds.js, line 124
-
scaleMax :Phaser.Point
-
The maximum scale this Game Object will scale up to.
It allows you to prevent a parent from scaling this Game Object higher than the given value.
Set it to
null
to remove the limit.- Inherited From:
- Source - gameobjects/components/ScaleMinMax.js, line 46
-
scaleMin :Phaser.Point
-
The minimum scale this Game Object will scale down to.
It allows you to prevent a parent from scaling this Game Object lower than the given value.
Set it to
null
to remove the limit.- Inherited From:
- Source - gameobjects/components/ScaleMinMax.js, line 36
-
scrollFactorX :number
-
Speed at which this layer scrolls horizontally, relative to the camera (e.g. scrollFactorX of 0.5 scrolls half as quickly as the 'normal' camera-locked layers do).
- Default Value:
- 1
- Source - tilemap/TilemapLayer.js, line 152
-
scrollFactorY :number
-
Speed at which this layer scrolls vertically, relative to the camera (e.g. scrollFactorY of 0.5 scrolls half as quickly as the 'normal' camera-locked layers do)
- Default Value:
- 1
- Source - tilemap/TilemapLayer.js, line 160
-
setHealth
-
Sets the health property of the Game Object to the given amount.
Will never exceed themaxHealth
value.- Inherited From:
- Source - gameobjects/components/Health.js, line 70
-
shader :PhaserFilter
-
The shader that will be used to render this Sprite.
Set to null to remove a current shader.- Inherited From:
- Default Value:
- null
- Source - pixi/display/Sprite.js, line 93
-
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
-
texture :PIXI.Texture
-
The texture that the sprite is using
- Inherited From:
- Source - pixi/display/Sprite.js, line 28
-
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 54
-
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 73
-
top :number
-
The y coordinate of the Game Object.
This is the same asy - offsetY
.- Inherited From:
- Source - gameobjects/components/Bounds.js, line 146
-
transformCallback :function
-
The callback that will apply any scale limiting to the worldTransform.
- Inherited From:
- Source - gameobjects/components/ScaleMinMax.js, line 20
-
transformCallbackContext :object
-
The context under which
transformCallback
is called.- Inherited From:
- Source - gameobjects/components/ScaleMinMax.js, line 26
-
<internal, readonly> type :number
-
The const type of this object.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Default Value:
- Phaser.TILEMAPLAYER
- Source - tilemap/TilemapLayer.js, line 77
-
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 125
-
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 fromposition
,
which contains the x/y coordinates relative to the Game Objects parent.- Inherited From:
- Source - gameobjects/components/Core.js, line 211
-
x :number
-
The position of the Game Object on the x axis relative to the local coordinates of the parent.
- Inherited From:
- Source - gameobjects/components/PhysicsBody.js, line 98
-
y :number
-
The position of the Game Object on the y axis relative to the local coordinates of the parent.
- Inherited From:
- Source - gameobjects/components/PhysicsBody.js, line 124
-
<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) → {DisplayObject}
-
Adds a child to the container.
Parameters:
Name Type Description child
DisplayObject The DisplayObject to add to the container
Returns:
The child that was added.
- Inherited From:
- Source - pixi/display/DisplayObjectContainer.js, line 42
-
addChildAt(child, index) → {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
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 55
-
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 asWorld.bounds
orCamera.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
andPhaser.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
andoffsetY
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
orCamera.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
orPhaser.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 asWorld.bounds
orCamera.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
andPhaser.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
andoffsetY
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
orCamera.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
orPhaser.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:
PIXI.DisplayObject -This instance.
- Inherited From:
- Source - gameobjects/components/BringToTop.js, line 24
-
contains(child) → {Boolean}
-
Determines whether the specified display object is a child of the DisplayObjectContainer instance or the instance itself.
Parameters:
Name Type Description child
DisplayObject -
Returns:
Boolean -- Inherited From:
- Source - pixi/display/DisplayObjectContainer.js, line 449
-
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 modifyingcropRect
property directly and then callingupdateCrop
.The rectangle object given to this method can be either a
Phaser.Rectangle
or any other object
so long as it has publicx
,y
,width
,height
,right
andbottom
properties.A reference to the rectangle is stored in
cropRect
unless thecopy
parameter istrue
,
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()
-
Destroys this TilemapLayer.
- Source - tilemap/TilemapLayer.js, line 351
-
<internal> ensureSharedCopyCanvas()
-
Create if needed (and return) a shared copy canvas that is shared across all TilemapLayers.
Code that uses the canvas is responsible to ensure the dimensions and save/restore state as appropriate.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - tilemap/TilemapLayer.js, line 253
-
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 callupdateTransform
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 199
-
getChildAt(index) → {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 153
-
getChildIndex(child) → {Number}
-
Returns the index position of a child DisplayObject instance
Parameters:
Name Type Description child
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 112
-
getLocalBounds() → {Rectangle}
-
Retrieves the non-global local bounds of the Sprite as a rectangle. The calculation takes all visible children into consideration.
Returns:
Rectangle -The rectangular bounding area
- Inherited From:
- Source - pixi/display/Sprite.js, line 315
-
getRayCastTiles(line, stepRate, collides, interestingFace) → {Array.<Phaser.Tile>}
-
Gets all tiles that intersect with the given line.
Parameters:
Name Type Argument Default Description line
Phaser.Line The line used to determine which tiles to return.
stepRate
integer <optional>
(rayStepRate) How many steps through the ray will we check? Defaults to
rayStepRate
.collides
boolean <optional>
false If true, only return tiles that collide on one or more faces.
interestingFace
boolean <optional>
false If true, only return tiles that have interesting faces.
Returns:
Array.<Phaser.Tile> -An array of Phaser.Tiles.
- Source - tilemap/TilemapLayer.js, line 551
-
getTiles(x, y, width, height, collides, interestingFace) → {array.<Phaser.Tile>}
-
Get all tiles that exist within the given area, defined by the top-left corner, width and height. Values given are in pixels, not tiles.
Parameters:
Name Type Argument Default Description x
number X position of the top left corner (in pixels).
y
number Y position of the top left corner (in pixels).
width
number Width of the area to get (in pixels).
height
number Height of the area to get (in pixels).
collides
boolean <optional>
false If true, only return tiles that collide on one or more faces.
interestingFace
boolean <optional>
false If true, only return tiles that have interesting faces.
Returns:
array.<Phaser.Tile> -An array of Tiles.
- Source - tilemap/TilemapLayer.js, line 598
-
getTileX(x) → {integer}
-
Convert a pixel value to a tile coordinate.
Parameters:
Name Type Description x
number X position of the point in target tile (in pixels).
Returns:
integer -The X map location of the tile.
- Source - tilemap/TilemapLayer.js, line 502
-
getTileXY(x, y, point) → {Phaser.Point|object}
-
Convert a pixel coordinate to a tile coordinate.
Parameters:
Name Type Description x
number X position of the point in target tile (in pixels).
y
number Y position of the point in target tile (in pixels).
point
Phaser.Point | object The Point/object to update.
Returns:
Phaser.Point | object -A Point/object with its
x
andy
properties set.- Source - tilemap/TilemapLayer.js, line 532
-
getTileY(y) → {integer}
-
Convert a pixel value to a tile coordinate.
Parameters:
Name Type Description y
number Y position of the point in target tile (in pixels).
Returns:
integer -The Y map location of the tile.
- Source - tilemap/TilemapLayer.js, line 517
-
kill() → {PIXI.DisplayObject}
-
Kills a Game Object. A killed Game Object has its
alive
,exists
andvisible
properties all set to false.It will dispatch the
onKilled
event. You can listen toevents.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:
PIXI.DisplayObject -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
orframeName
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 theframe
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:
PIXI.DisplayObject -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:
PIXI.DisplayObject -This instance.
- Inherited From:
- Source - gameobjects/components/BringToTop.js, line 66
-
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 agetBounds
method and result.This check ignores the
hitArea
property if set and runs agetBounds
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 viaAnimationManager.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()
-
Automatically called by World.postUpdate. Handles cache updates.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - tilemap/TilemapLayer.js, line 284
-
preUpdate()
-
Automatically called by World.preUpdate.
- Source - tilemap/TilemapLayer.js, line 273
-
removeChild(child) → {DisplayObject}
-
Removes a child from the container.
Parameters:
Name Type Description child
DisplayObject The DisplayObject to remove
Returns:
The child that was removed.
- Inherited From:
- Source - pixi/display/DisplayObjectContainer.js, line 171
-
removeChildAt(index) → {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 191
-
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 213
-
<internal> render()
-
Renders the tiles to the layer canvas and pushes to the display.
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source - tilemap/TilemapLayer.js, line 1045
-
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
andrenderable
to true.If this Game Object has the LifeSpan component it will also set
alive
to true andhealth
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:
PIXI.DisplayObject -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 237
-
resetTilesetCache()
-
The TilemapLayer caches tileset look-ups.
Call this method of clear the cache if tilesets have been added or updated after the layer has been rendered.
- Source - tilemap/TilemapLayer.js, line 693
-
resize(width, height)
-
Resizes the internal canvas and texture frame used by this TilemapLayer.
This is an expensive call, so don't bind it to a window resize event! But instead call it at carefully
selected times.Be aware that no validation of the new sizes takes place and the current map scroll coordinates are not
modified either. You will have to handle both of these things from your game code if required.Parameters:
Name Type Description width
number The new width of the TilemapLayer
height
number The new height of the TilemapLayer
- Source - tilemap/TilemapLayer.js, line 364
-
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 225
-
resizeWorld()
-
Sets the world size to match the size of this layer.
- Source - tilemap/TilemapLayer.js, line 402
-
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
andvisible
properties all set to true.It will dispatch the
onRevived
event. Listen toevents.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:
PIXI.DisplayObject -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:
PIXI.DisplayObject -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
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 132
-
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
-
setScale(xScale, yScale)
-
This method will set the scale of the tilemap as well as update the underlying block data of this layer.
Parameters:
Name Type Argument Default Description xScale
number <optional>
1 The scale factor along the X-plane
yScale
number <optional>
The scale factor along the Y-plane
- Source - tilemap/TilemapLayer.js, line 712
-
setScaleMinMax(minX, minY, maxX, maxY)
-
Sets the scaleMin and scaleMax values. These values are used to limit how far this Game Object will scale based on its parent.
For example if this Game Object has a
minScale
value of 1 and its parent has ascale
value of 0.5, the 0.5 will be ignored
and the scale value of 1 will be used, as the parents scale is lower than the minimum scale this Game Object should adhere to.By setting these values you can carefully control how Game Objects deal with responsive scaling.
If only one parameter is given then that value will be used for both scaleMin and scaleMax:
setScaleMinMax(1)
= scaleMin.x, scaleMin.y, scaleMax.x and scaleMax.y all = 1If only two parameters are given the first is set as scaleMin.x and y and the second as scaleMax.x and y:
setScaleMinMax(0.5, 2)
= scaleMin.x and y = 0.5 and scaleMax.x and y = 2If you wish to set
scaleMin
with different values for x and y then either modify Game Object.scaleMin directly,
or passnull
for themaxX
andmaxY
parameters.Call
setScaleMinMax(null)
to clear all previously set values.Parameters:
Name Type Description minX
number | null The minimum horizontal scale value this Game Object can scale down to.
minY
number | null The minimum vertical scale value this Game Object can scale down to.
maxX
number | null The maximum horizontal scale value this Game Object can scale up to.
maxY
number | null The maximum vertical scale value this Game Object can scale up to.
- Inherited From:
- Source - gameobjects/components/ScaleMinMax.js, line 110
-
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 163
-
swapChildren(child, child2)
-
Swaps the position of 2 Display Objects within this container.
Parameters:
Name Type Description child
DisplayObject -
child2
DisplayObject -
- Inherited From:
- Source - pixi/display/DisplayObjectContainer.js, line 85
-
update()
-
Override this method in your own custom objects to handle any update requirements.
It is called immediately afterpreUpdate
and beforepostUpdate
.
Remember if this Game Object has any children you should call update on those too.- Inherited From:
- Source - gameobjects/components/Core.js, line 328
-
updateCrop()
-
If you have set a crop rectangle on this Game Object via
crop
and since modified thecropRect
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