Class: Phaser.BitmapText
Constructor
new BitmapText(game, x, y, font, text, size, align)
BitmapText objects work by taking a texture file and an XML or JSON file that describes the font structure.
It then generates a new Sprite object for each letter of the text, proportionally spaced out and aligned to
match the font structure.
BitmapText objects are less flexible than Text objects, in that they have less features such as shadows, fills and the ability
to use Web Fonts, however you trade this flexibility for rendering speed. You can also create visually compelling BitmapTexts by
processing the font texture in an image editor, applying fills and any other effects required.
To create multi-line text insert \r, \n or \r\n escape codes into the text string.
If you are having performance issues due to the volume of sprites being rendered, and do not require the text to be constantly
updating, you can use BitmapText.generateTexture to create a static texture from this BitmapText.
To create a BitmapText data files you can use:
BMFont (Windows, free): http://www.angelcode.com/products/bmfont/
Glyph Designer (OS X, commercial): http://www.71squared.com/en/glyphdesigner
Littera (Web-based, free): http://kvazars.com/littera/
For most use cases it is recommended to use XML. If you wish to use JSON, the formatting should be equal to the result of
converting a valid XML file through the popular X2JS library. An online tool for conversion can be found here: http://codebeautify.org/xmltojson
If you were using an older version of Phaser (< 2.4) and using the DOMish parser hack, please remove this. It isn't required any longer.
Parameters
Name | Type | Argument | Default | Description |
---|---|---|---|---|
game | Phaser.Game | A reference to the currently running game. | ||
x | number | X coordinate to display the BitmapText object at. | ||
y | number | Y coordinate to display the BitmapText object at. | ||
font | string | The key of the BitmapText as stored in Phaser.Cache. | ||
text | string | <optional> | '' | The text that will be rendered. This can also be set later via BitmapText.text. |
size | number | <optional> | 32 | The size the font will be rendered at in pixels. |
align | string | <optional> | 'left' | The alignment of multi-line text. Has no effect if there is only one line of text. |
- Source code: gameobjects/BitmapText.js (Line 54)
Extends
- PIXI.DisplayObjectContainer
- Phaser.Component.Core
- Phaser.Component.Angle
- Phaser.Component.AutoCull
- Phaser.Component.Bounds
- Phaser.Component.Destroy
- Phaser.Component.FixedToCamera
- Phaser.Component.InputEnabled
- Phaser.Component.InWorld
- Phaser.Component.LifeSpan
- Phaser.Component.PhysicsBody
- Phaser.Component.Reset
Public Properties
- Source code: gameobjects/BitmapText.js (Line 535)
- Inherited From
- Default Value
- true
- Source code: gameobjects/components/LifeSpan.js (Line 50)
- Source code: gameobjects/BitmapText.js (Line 92)
- Inherited From
- Source code: gameobjects/components/Angle.js (Line 29)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 193)
- See
- Inherited From
- Source code: gameobjects/components/AutoCull.js (Line 28)
- Inherited From
- Source code: gameobjects/components/PhysicsBody.js (Line 91)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 168)
- Inherited From
- Source code: gameobjects/components/FixedToCamera.js (Line 86)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 58)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 80)
- Inherited From
- Source code: gameobjects/components/InWorld.js (Line 98)
- Array.<DisplayObject>
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 17)
- Inherited From
- Internal:
- This member is internal (protected) and may be modified or removed in the future.
- Source code: gameobjects/components/Core.js (Line 167)
- Inherited From
- Default Value
- {}
- Source code: gameobjects/components/Core.js (Line 160)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 218)
- Inherited From
- Source code: gameobjects/components/Destroy.js (Line 22)
- Source code: gameobjects/BitmapText.js (Line 153)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 185)
- See
- Inherited From
- Source code: gameobjects/components/Core.js (Line 284)
- Inherited From
- Source code: gameobjects/components/FixedToCamera.js (Line 56)
- Source code: gameobjects/BitmapText.js (Line 579)
- Source code: gameobjects/BitmapText.js (Line 602)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 248)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 142)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 600)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 26)
- Inherited From
- Source code: gameobjects/components/AutoCull.js (Line 37)
- Phaser.InputHandler | null
- Inherited From
- Source code: gameobjects/components/InputEnabled.js (Line 24)
- Inherited From
- Source code: gameobjects/components/InputEnabled.js (Line 42)
- Inherited From
- Source code: gameobjects/components/InWorld.js (Line 129)
- string | Phaser.RenderTexture | Phaser.BitmapData | Phaser.Video | PIXI.Texture
- Inherited From
- Source code: gameobjects/components/Core.js (Line 203)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 102)
- Inherited From
- Source code: gameobjects/components/LifeSpan.js (Line 65)
- Source code: gameobjects/BitmapText.js (Line 648)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 150)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 24)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 42)
- Inherited From
- Source code: gameobjects/components/InWorld.js (Line 106)
- Inherited From
- Source code: gameobjects/components/InWorld.js (Line 115)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 259)
- Source code: gameobjects/BitmapText.js (Line 75)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 225)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 232)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 240)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 124)
- Source code: gameobjects/BitmapText.js (Line 681)
- Source code: gameobjects/BitmapText.js (Line 626)
- Source code: gameobjects/BitmapText.js (Line 87)
- Source code: gameobjects/BitmapText.js (Line 81)
- Source code: gameobjects/BitmapText.js (Line 557)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 146)
- Source code: gameobjects/BitmapText.js (Line 69)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 571)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 211)
- Inherited From
- Source code: gameobjects/components/PhysicsBody.js (Line 98)
- Inherited From
- Source code: gameobjects/components/PhysicsBody.js (Line 124)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 177)
align : string
Alignment for multi-line text ('left', 'center' or 'right'), does not affect single lines of text.
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.
anchor : Phaser.Point
The anchor value of this BitmapText.
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.
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.
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.
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 be null
.
To enable this Game Object for physics you need to call game.physics.enable(object, system)
where object
is this object
and system
is the Physics system you are using. If none is given it defaults to Phaser.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
bottom : number
The sum of the y and height properties.
This is the same as y + height - offsetY
.
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.
centerX : number
The center x coordinate of the Game Object.
This is the same as (x - offsetX) + (width / 2)
.
centerY : number
The center y coordinate of the Game Object.
This is the same as (y - offsetY) + (height / 2)
.
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
is true
.
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.
[readonly] children : Array.<DisplayObject>
[read-only] The array of children of this container.
Type
<internal> components : Object
The components this Game Object has installed.
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.
debug : boolean
A debug flag designed for use with Game.enableStep
.
[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.
dirty : boolean
The dirty state of this object.
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.
exists : boolean
Controls if this Game Object is processed by the core game loop.
If this Game Object has a physics body it also controls if its physics body is updated or not.
When exists
is set to false
it will remove its physics body from the physics world if it has one.
It also toggles the visible
property to false as well.
Setting exists
to true will add its physics body back in to the physics world, if it has one.
It will also set the visible
property to true
.
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.
font : string
The font the text will be rendered in, i.e. 'Arial'. Must be loaded in the browser before use.
fontSize : number
The size of the font in pixels.
[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.
game : Phaser.Game
A reference to the currently running Game.
height : number
The height of the displayObjectContainer, setting this will actually modify the scale to achieve the value set
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.
[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.
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
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 setinput.enabled = false
, as it won't reset any of the Input Handlers internal properties.
You can then toggle this back on as needed.
[readonly] inWorld : boolean
Checks if the Game Objects bounds are within, or intersect at any point with the Game World bounds.
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
left : number
The left coordinate of the Game Object.
This is the same as x - offsetX
.
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.
maxWidth : number
The maximum display width of this BitmapText in pixels.
If BitmapText.text is longer than maxWidth then the lines will be automatically wrapped
based on the last whitespace character found in the line.
If no whitespace was found then no wrapping will take place and consequently the maxWidth value will not be honored.
Disable maxWidth by setting the value to 0. The maximum width of this BitmapText in pixels.
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.
[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.
[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.
outOfBoundsKill : boolean
If this and the checkWorldBounds
property are both set to true
then the kill
method is called as soon as inWorld
returns false.
outOfCameraBoundsKill : boolean
If this and the autoCull
property are both set to true
, then the kill
method
is called as soon as the Game Object leaves the camera bounds.
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.
[readonly] physicsType : number
The const physics body type of this object.
[readonly] previousPosition : Phaser.Point
The position the Game Object was located in the previous frame.
[readonly] previousRotation : number
The rotation the Game Object was in set to in the previous frame. Value is in radians.
[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.
right : number
The right coordinate of the Game Object.
This is the same as x + width - offsetX
.
smoothed : boolean
Enable or disable texture smoothing for this BitmapText.
The smoothing is applied to the BaseTexture of this font, which all letters of the text reference.
Smoothing is enabled by default.
text : string
The text to be displayed by this BitmapText object.
[readonly] textHeight : number
The height in pixels of the overall text area, taking into consideration multi-line text.
[readonly] textWidth : number
The width in pixels of the overall text area, taking into consideration multi-line text.
tint : number
The tint applied to the BitmapText. This is a hex value. Set to white to disable (0xFFFFFF)
top : number
The y coordinate of the Game Object.
This is the same as y - offsetY
.
[readonly] type : number
The const type of this object.
width : number
The width of the displayObjectContainer, setting this will actually modify the scale to achieve the value set
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.
x : number
The position of the Game Object on the x axis relative to the local coordinates of the parent.
y : number
The position of the Game Object on the y axis relative to the local coordinates of the parent.
[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.
Public Methods
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 42)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 55)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 223)
- Inherited From
- Source code: gameobjects/components/Bounds.js (Line 321)
- Source code: gameobjects/BitmapText.js (Line 312)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 449)
- Inherited From
- Source code: gameobjects/components/Destroy.js (Line 37)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 280)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 153)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 112)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 437)
- Inherited From
- Source code: gameobjects/components/LifeSpan.js (Line 113)
- Source code: gameobjects/BitmapText.js (Line 198)
- Source code: gameobjects/BitmapText.js (Line 187)
- Source code: gameobjects/BitmapText.js (Line 477)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 171)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 191)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 213)
- Inherited From
- Source code: gameobjects/components/Reset.js (Line 30)
- Inherited From
- Source code: gameobjects/components/LifeSpan.js (Line 78)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 132)
- Source code: gameobjects/BitmapText.js (Line 217)
- Inherited From
- Source code: pixi/display/DisplayObjectContainer.js (Line 85)
- Inherited From
- Source code: gameobjects/components/Core.js (Line 328)
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.
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.
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 | ||
position | integer | <optional> | The position constant. One of | |
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
This Game Object.
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 | ||
position | integer | <optional> | The position constant. One of | |
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
This Game Object.
cleanText(text, replace) → {string}
Given a text string this will scan each character in the string to ensure it exists
in the BitmapText font data. If it doesn't the character is removed, or replaced with the replace
argument.
If no font data has been loaded at all this returns an empty string, as nothing can be rendered.
Parameters
Name | Type | Argument | Default | Description |
---|---|---|---|---|
text | string | The text to parse. | ||
replace | string | <optional> | '' | The replacement string for any missing characters. |
Returns
The cleaned text string.
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
destroy(destroyChildren, destroyTexture)
Destroys the Game Object. This removes it from its parent group, destroys the input, event and animation handlers if present
and nulls its reference to game
, freeing it up for garbage collection.
If this Game Object has the Events component it will also dispatch the onDestroy
event.
You can optionally also destroy the BaseTexture this Game Object is using. Be careful if you've
more than one Game Object sharing the same BaseTexture.
Parameters
Name | Type | Argument | Default | Description |
---|---|---|---|---|
destroyChildren | boolean | <optional> | true | Should every child of this object have its destroy method called as well? |
destroyTexture | boolean | <optional> | false | Destroy the BaseTexture this Game Object is using? Note that if another Game Object is sharing the same BaseTexture it will invalidate it. |
getBounds(targetCoordinateSpace) → {Rectangle}
Retrieves the global bounds of the displayObjectContainer as a rectangle. The bounds calculation takes all visible children into consideration.
Parameters
Name | Type | Argument | Description |
---|---|---|---|
targetCoordinateSpace | PIXIDisplayObject | PIXIMatrix | <optional> | Returns a rectangle that defines the area of the display object relative to the coordinate system of the targetCoordinateSpace object. |
Returns
The rectangular bounding area
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.
getChildIndex(child) → {Number}
Returns the index position of a child DisplayObject instance
Parameters
Name | Type | Description |
---|---|---|
child | DisplayObject | The DisplayObject instance to identify |
Returns
The index position of the child display object to identify
getLocalBounds() → {Rectangle}
Retrieves the non-global local bounds of the displayObjectContainer as a rectangle without any transformations. The calculation takes all visible children into consideration.
Returns
The rectangular bounding area
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.
postUpdate()
Automatically called by World.preUpdate.
preUpdate() → {boolean}
Automatically called by World.preUpdate.
Returns
True if the BitmapText was rendered, otherwise false.
purgeGlyphs() → {integer}
If a BitmapText changes from having a large number of characters to having very few characters it will cause lots of
Sprites to be retained in the BitmapText._glyphs array. Although they are not attached to the display list they
still take up memory while sat in the glyphs pool waiting to be re-used in the future.
If you know that the BitmapText will not grow any larger then you can purge out the excess glyphs from the pool
by calling this method.
Calling this doesn't prevent you from increasing the length of the text again in the future.
Returns
The amount of glyphs removed from the pool.
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.
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.
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. |
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.
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.
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 |
setText(text)
The text to be displayed by this BitmapText object.
It's faster to use BitmapText.text = string
, but this is kept for backwards compatibility.
Parameters
Name | Type | Description |
---|---|---|
text | string | The text to be displayed by this BitmapText object. |
swapChildren(child, child2)
Swaps the position of 2 Display Objects within this container.
Parameters
Name | Type | Description |
---|---|---|
child | DisplayObject | - |
child2 | DisplayObject | - |
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.
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.BitmapText.html