Create a new game object for displaying Text.
This uses a local hidden Canvas object and renders the type into it. It then makes a texture from this for rendering to the view.
Because of this you can only display fonts that are currently loaded and available to the browser: fonts must be pre-loaded.
See this compatibility table for the available default fonts across mobile browsers.
Name | Type | Argument | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
game | Phaser.Game | Current game instance. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
x | number | X position of the new text object. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
y | number | Y position of the new text object. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
text | string | The actual text that will be written. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
style | object | <optional> |
The style properties to be set on the Text. Properties
|
Controls the horizontal alignment for multiline text.
Can be: 'left', 'center' or 'right'.
Does not affect single lines of text. For that please see setTextBounds
.
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.
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
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.
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.
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.
Should the linePositionX and Y values be automatically rounded before rendering the Text?
You may wish to enable this if you want to remove the effect of sub-pixel aliasing from text.
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.
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.
The sum of the y and height properties.
This is the same as y + height - offsetY
.
Horizontal alignment of the text within the textBounds
. Can be: 'left', 'center' or 'right'.
Vertical alignment of the text within the textBounds
. Can be: 'top', 'middle' or 'bottom'.
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.
The canvas element that the text is rendered.
The center x coordinate of the Game Object.
This is the same as (x - offsetX) + (width / 2)
.
The center y coordinate of the Game Object.
This is the same as (y - offsetY) + (height / 2)
.
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.
[read-only] The array of children of this container.
An array of the color values as specified by addColor.
The components this Game Object has installed.
The context of the canvas element that the text is rendered to.
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.
Change the font used.
This is equivalent of the font
property specified to setStyle, except
that unlike using setStyle
this will not change any current font fill/color settings.
The CSS font string can also be individually altered with the font
, fontSize
, fontWeight
, fontStyle
, and fontVariant
properties.
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.
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.
A debug flag designed for use with Game.enableStep
.
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.
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.
Returns the delta z value. The difference between rotation now and in the previous frame. The delta value.
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.
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.
Controls if this Sprite is processed by the core Phaser game loops and Group loops.
A canvas fillstyle that will be used on the text eg 'red', '#00FF00'.
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.
Change the font family that the text will be rendered in, such as 'Arial'.
Multiple CSS font families and generic fallbacks can be specified as long as
CSS font-family rules are followed.
To change the entire font string use cssFont instead: eg. text.cssFont = 'bold 20pt Arial'
.
The size of the font.
If the font size is specified in pixels (eg. 32
or '32px
') then a number (ie. 32
) representing
the font size in pixels is returned; otherwise the value with CSS unit is returned as a string (eg. '12pt'
).
The style of the font: 'normal', 'italic', 'oblique'
An array of the font styles values as specified by addFontStyle.
The variant the font: 'normal', 'small-caps'
The weight of the font: 'normal', 'bold', or a valid CSS font weight.
An array of the font weights values as specified by addFontWeight.
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
.
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
.
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.
A reference to the currently running Game.
Heal the Game Object. This adds the given amount of health to the health
property.
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.
The height of the Text. Setting this will modify the scale to achieve the value requested.
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.
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.
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.
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.
Checks if the Game Objects bounds are within, or intersect at any point with the Game World bounds.
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.
The left coordinate of the Game Object.
This is the same as x - offsetX
.
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.
Additional spacing (in pixels) between each line of text if multi-line.
The Game Objects maximum health value. This works in combination with the heal
method to ensure
the health value never exceeds the maximum.
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.
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.
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.
If this and the checkWorldBounds
property are both set to true
then the kill
method is called as soon as inWorld
returns false.
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.
Specify a padding value which is added to the line width and height when calculating the Text size.
ALlows you to add extra spacing if Phaser is unable to accurately determine the true font dimensions.
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.
The const physics body type of this object.
The position the Game Object was located in the previous frame.
The rotation the Game Object was in set to in the previous frame. Value is in radians.
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.
The resolution of the canvas the text is rendered to.
This defaults to match the resolution of the renderer, but can be changed on a per Text object basis.
The right coordinate of the Game Object.
This is the same as x + width - offsetX
.
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.
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.
Sets the health property of the Game Object to the given amount.
Will never exceed the maxHealth
value.
The shader that will be used to render this Sprite.
Set to null to remove a current shader.
The shadowBlur value. Make the shadow softer by applying a Gaussian blur to it. A number from 0 (no blur) up to approx. 10 (depending on scene).
The color of the shadow, as given in CSS rgba format. Set the alpha component to 0 to disable the shadow.
Sets if the drop shadow is applied to the Text fill.
The shadowOffsetX value in pixels. This is how far offset horizontally the shadow effect will be.
The shadowOffsetY value in pixels. This is how far offset vertically the shadow effect will be.
Sets if the drop shadow is applied to the Text stroke.
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.
A canvas fillstyle that will be used on the text stroke eg 'blue', '#FCFF00'.
An array of the stroke color values as specified by addStrokeColor.
A number that represents the thickness of the stroke. Default is 0 (no stroke)
The size (in pixels) of the tabs, for when text includes tab characters. 0 disables.
Can be an integer or an array of varying tab sizes, one tab per element.
For example if you set tabs to 100 then when Text encounters a tab it will jump ahead 100 pixels.
If you set tabs to be [100,200]
then it will set the first tab at 100px and the second at 200px.
The text to be displayed by this Text object.
Use a \n to insert a carriage return and split the text.
The text will be rendered with any style currently set.
The textBounds property allows you to specify a rectangular region upon which text alignment is based.
See Text.setTextBounds
for more details.
The texture that the sprite is using
The tint applied to the sprite. This is a hex value. A value of 0xFFFFFF will remove any tint effect.
A canvas that contains the tinted version of the Sprite (in Canvas mode, WebGL doesn't populate this)
The y coordinate of the Game Object.
This is the same as y - offsetY
.
The callback that will apply any scale limiting to the worldTransform.
The context under which transformCallback
is called.
The const type of this object.
Will this Text object use Basic or Advanced Word Wrapping?
Advanced wrapping breaks long words if they are the first of a line, and repeats the process as necessary.
White space is condensed (e.g., consecutive spaces are replaced with one).
Lines are trimmed of white space before processing.
It throws an error if wordWrapWidth is less than a single character.
The width of the Text. Setting this will modify the scale to achieve the value requested.
Indicates if word wrap should be used.
The width at which text will wrap.
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.
The position of the Game Object on the x axis relative to the local coordinates of the parent.
The position of the Game Object on the y axis relative to the local coordinates of the parent.
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.
Adds a child to the container.
Name | Type | Description |
---|---|---|
child | DisplayObject | The DisplayObject to add to the container |
The child that was added.
Adds a child to the container at a specified index. If the index is out of bounds an error will be thrown
Name | Type | Description |
---|---|---|
child | DisplayObject | The child to add |
index | Number | The index to place the child in |
The child that was added.
Set specific colors for certain characters within the Text.
It works by taking a color value, which is a typical HTML string such as #ff0000
or rgb(255,0,0)
and a position.
The position value is the index of the character in the Text string to start applying this color to.
Once set the color remains in use until either another color or the end of the string is encountered.
For example if the Text was Photon Storm
and you did Text.addColor('#ffff00', 6)
it would color in the word Storm
in yellow.
If you wish to change the stroke color see addStrokeColor instead.
Name | Type | Description |
---|---|---|
color | string | A canvas fillstyle that will be used on the text eg |
position | number | The index of the character in the string to start applying this color value from. |
This Text instance.
Set specific font styles for certain characters within the Text.
It works by taking a font style value, which is a typical string such as normal
, italic
or oblique
.
The position value is the index of the character in the Text string to start applying this font style to.
Once set the font style remains in use until either another font style or the end of the string is encountered.
For example if the Text was Photon Storm
and you did Text.addFontStyle('italic', 6)
it would font style in the word Storm
in italic.
If you wish to change the text font weight see addFontWeight instead.
Name | Type | Description |
---|---|---|
style | string | A canvas font-style that will be used on the text style eg |
position | number | The index of the character in the string to start applying this font style value from. |
This Text instance.
Set specific font weights for certain characters within the Text.
It works by taking a font weight value, which is a typical string such as normal
, bold
, bolder
, etc.
The position value is the index of the character in the Text string to start applying this font weight to.
Once set the font weight remains in use until either another font weight or the end of the string is encountered.
For example if the Text was Photon Storm
and you did Text.addFontWeight('bold', 6)
it would font weight in the word Storm
in bold.
If you wish to change the text font style see addFontStyle instead.
Name | Type | Description |
---|---|---|
style | string | A canvas font-weight that will be used on the text weight eg |
position | number | The index of the character in the string to start applying this font weight value from. |
This Text instance.
Set specific stroke colors for certain characters within the Text.
It works by taking a color value, which is a typical HTML string such as #ff0000
or rgb(255,0,0)
and a position.
The position value is the index of the character in the Text string to start applying this color to.
Once set the color remains in use until either another color or the end of the string is encountered.
For example if the Text was Photon Storm
and you did Text.addColor('#ffff00', 6)
it would color in the word Storm
in yellow.
This has no effect if stroke is disabled or has a thickness of 0.
If you wish to change the text fill color see addColor instead.
Name | Type | Description |
---|---|---|
color | string | A canvas fillstyle that will be used on the text stroke eg |
position | number | The index of the character in the string to start applying this color value from. |
This Text instance.
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.
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. |
This Game 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.
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. |
This Game Object.
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.
This instance.
Clears any text fill or stroke colors that were set by addColor
or addStrokeColor
.
This Text instance.
Clears any text styles or weights font that were set by addFontStyle
or addFontWeight
.
This Text instance.
Determines whether the specified display object is a child of the DisplayObjectContainer instance or the instance itself.
Name | Type | Description |
---|---|---|
child | DisplayObject | - |
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.
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 |
Destroy this Text object, removing it from the group it belongs to.
Name | Type | Argument | Default | Description |
---|---|---|---|---|
destroyChildren | boolean | <optional> | true | Should every child of this object have its destroy method called? |
Returns the bounds of the Text as a rectangle.
The bounds calculation takes the worldTransform into account.
Name | Type | Description |
---|---|---|
matrix | Phaser.Matrix | The transformation matrix of the Text. |
The framing rectangle
Returns the child at the specified index
Name | Type | Description |
---|---|---|
index | Number | The index to get the child from |
The child at the given index, if any.
Returns the index position of a child DisplayObject instance
Name | Type | Description |
---|---|---|
child | DisplayObject | The DisplayObject instance to identify |
The index position of the child display object to identify
Retrieves the non-global local bounds of the Sprite as a rectangle. The calculation takes all visible children into consideration.
The rectangular bounding area
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.
This instance.
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.
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. |
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.
This instance.
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.
This instance.
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.
Name | Type | Description |
---|---|---|
displayObject | Phaser.Sprite | Phaser.Image | Phaser.TileSprite | Phaser.Button | PIXI.DisplayObject | The display object to check against. |
True if the bounds of this Game Object intersects at any point with the bounds of the given display object.
Converts the given array into a tab delimited string and then updates this Text object.
This is mostly used when you want to display external data using tab stops.
The array can be either single or multi dimensional depending on the result you need:
[ 'a', 'b', 'c' ]
would convert in to "a\tb\tc"
.
Where as:
[
[ 'a', 'b', 'c' ],
[ 'd', 'e', 'f']
]
would convert in to: "a\tb\tc\nd\te\tf"
Name | Type | Description |
---|---|---|
list | array | The array of data to convert into a string. |
This Text instance.
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
.
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. |
A reference to playing Animation.
Internal method called by the World postUpdate cycle.
Runs the given text through the Text.runWordWrap function and returns
the results as an array, where each element of the array corresponds to a wrapped
line of text.
Useful if you wish to control pagination on long pieces of content.
Name | Type | Description |
---|---|---|
text | string | The text for which the wrapping will be calculated. |
An array of strings with the pieces of wrapped text.
Automatically called by World.preUpdate.
Removes a child from the container.
Name | Type | Description |
---|---|---|
child | DisplayObject | The DisplayObject to remove |
The child that was removed.
Removes a child from the specified index position.
Name | Type | Description |
---|---|---|
index | Number | The index to get the child from |
The child that was removed.
Removes all children from this container that are within the begin and end indexes.
Name | Type | Description |
---|---|---|
beginIndex | Number | The beginning position. Default value is 0. |
endIndex | Number | The ending position. Default value is size of the container. |
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.
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. |
This instance.
Resets the texture frame dimensions that the Game Object uses for rendering.
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.
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. |
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.
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. |
This instance.
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.
This instance.
Changes the position of an existing child in the display object container
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 |
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.
Name | Type | Description |
---|---|---|
frame | Phaser.Frame | The Frame to be used by the texture. |
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 a scale
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 = 1
If 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 = 2
If you wish to set scaleMin
with different values for x and y then either modify Game Object.scaleMin directly,
or pass null
for the maxX
and maxY
parameters.
Call setScaleMinMax(null)
to clear all previously set values.
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. |
Sets a drop shadow effect on the Text. You can specify the horizontal and vertical distance of the drop shadow with the x
and y
parameters.
The color controls the shade of the shadow (default is black) and can be either an rgba
or hex
value.
The blur is the strength of the shadow. A value of zero means a hard shadow, a value of 10 means a very soft shadow.
To remove a shadow already in place you can call this method with no parameters set.
Name | Type | Argument | Default | Description |
---|---|---|---|---|
x | number | <optional> | 0 | The shadowOffsetX value in pixels. This is how far offset horizontally the shadow effect will be. |
y | number | <optional> | 0 | The shadowOffsetY value in pixels. This is how far offset vertically the shadow effect will be. |
color | string | <optional> | 'rgba(0,0,0,1)' | The color of the shadow, as given in CSS rgba or hex format. Set the alpha component to 0 to disable the shadow. |
blur | number | <optional> | 0 | The shadowBlur value. Make the shadow softer by applying a Gaussian blur to it. A number from 0 (no blur) up to approx. 10 (depending on scene). |
shadowStroke | boolean | <optional> | true | Apply the drop shadow to the Text stroke (if set). |
shadowFill | boolean | <optional> | true | Apply the drop shadow to the Text fill (if set). |
This Text instance.
Set the style of the text by passing a single style object to it.
Name | Type | Argument | Default | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
style | object | <optional> |
The style properties to be set on the Text. Properties
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
update | boolean | <optional> | false | Immediately update the Text object after setting the new style? Or wait for the next frame. |
This Text instance.
The text to be displayed by this Text object.
Use a \n to insert a carriage return and split the text.
The text will be rendered with any style currently set.
Use the optional immediate
argument if you need the Text display to update immediately.
If not it will re-create the texture of this Text object during the next time the render
loop is called.
Name | Type | Argument | Default | Description |
---|---|---|---|---|
text | string | <optional> | The text to be displayed. Set to an empty string to clear text that is already present. | |
immediate | boolean | <optional> | false | Update the texture used by this Text object immediately (true) or automatically during the next render loop (false). |
This Text instance.
The Text Bounds is a rectangular region that you control the dimensions of into which the Text object itself is positioned,
regardless of the number of lines in the text, the font size or any other attribute.
Alignment is controlled via the properties boundsAlignH
and boundsAlignV
within the Text.style object, or can be directly
set through the setters Text.boundsAlignH
and Text.boundsAlignV
. Bounds alignment is independent of text alignment.
For example: If your game is 800x600 in size and you set the text bounds to be 0,0,800,600 then by setting boundsAlignH to
'center' and boundsAlignV to 'bottom' the text will render in the center and at the bottom of your game window, regardless of
how many lines of text there may be. Even if you adjust the text content or change the style it will remain at the bottom center
of the text bounds.
This is especially powerful when you need to align text against specific coordinates in your game, but the actual text dimensions
may vary based on font (say for multi-lingual games).
If Text.wordWrapWidth
is greater than the width of the text bounds it is clamped to match the bounds width.
Call this method with no arguments given to reset an existing textBounds.
It works by calculating the final position based on the Text.canvas size, which is modified as the text is updated. Some fonts
have additional padding around them which you can mitigate by tweaking the Text.padding property. It then adjusts the pivot
property based on the given bounds and canvas size. This means if you need to set the pivot property directly in your game then
you either cannot use setTextBounds
or you must place the Text object inside another DisplayObject on which you set the pivot.
Name | Type | Argument | Description |
---|---|---|---|
x | number | <optional> | The x coordinate of the Text Bounds region. |
y | number | <optional> | The y coordinate of the Text Bounds region. |
width | number | <optional> | The width of the Text Bounds region. |
height | number | <optional> | The height of the Text Bounds region. |
This Text instance.
Sets the texture of the sprite. Be warned that this doesn't remove or destroy the previous
texture this Sprite was using.
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? |
Swaps the position of 2 Display Objects within this container.
Name | Type | Description |
---|---|---|
child | DisplayObject | - |
child2 | DisplayObject | - |
Override this function to handle any special update requirements.
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.
Sets the Shadow on the Text.context based on the Style settings, or disables it if not enabled.
This is called automatically by Text.updateText.
Name | Type | Description |
---|---|---|
state | boolean | If true the shadow will be set to the Style values, otherwise it will be set to zero. |
© 2016 Richard Davey, Photon Storm Ltd.
Licensed under the MIT License.
http://phaser.io/docs/2.6.2/Phaser.Text.html