These docs are for an outdated version of Phaser The documentation on this page is for Phaser 2.4.4. The latest release is 2.9.2.

Constructor

Phaser. Creature

new Creature(game, x, y, key, mesh, animation)

Creature is a custom Game Object used in conjunction with the Creature Runtime libraries by Kestrel Moon Studios.

It allows you to display animated Game Objects that were created with the Creature Automated Animation Tool.

Note 1: You can only use Phaser.Creature objects in WebGL enabled games. They do not work in Canvas mode games.

Note 2: You must use a build of Phaser that includes the CreatureMeshBone.js runtime and gl-matrix.js, or have them loaded before your Phaser game boots.

See the Phaser custom build process for more details.

By default the Creature runtimes are NOT included in any pre-configured version of Phaser.

So you'll need to do grunt custom to create a build that includes them.

Parameters
Name Type Argument Default Description
game Phaser.Game

A reference to the currently running game.

x number

The x coordinate of the Game Object. The coordinate is relative to any parent container this Game Object may be in.

y number

The y coordinate of the Game Object. The coordinate is relative to any parent container this Game Object may be in.

key string | PIXI.Texture

The texture used by the Creature Object during rendering. It can be a string which is a reference to the Cache entry, or an instance of a PIXI.Texture.

mesh string

The mesh data for the Creature Object. It should be a string which is a reference to the Cache JSON entry.

animation string <optional>
'default'

The animation within the mesh data to play.

Source code: gameobjects/Creature.js (Line 42)

Extends

Public Properties

alive : boolean

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

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

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

Inherited From
Default Value
  • true
Source code: gameobjects/components/LifeSpan.js (Line 50)

alpha : number

The opacity of the object.

Inherited From
Source code: pixi/display/DisplayObject.js (Line 46)

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 code: gameobjects/components/Angle.js (Line 29)

animation :CreatureAnimation

The CreatureAnimation instance.

Source code: gameobjects/Creature.js (Line 69)

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 code: gameobjects/components/Core.js (Line 186)
See

autoCull : boolean

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

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

Inherited From
Source code: gameobjects/components/AutoCull.js (Line 28)

cacheAsBitmap : boolean

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 355)

cameraOffset : Phaser.Point

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

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

Inherited From
Source code: gameobjects/components/FixedToCamera.js (Line 86)

[readonly] children : Array.<DisplayObject>

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

Type
Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 17)

<internal> colors :PIXI.Uint16Array

The vertices colors

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source code: gameobjects/Creature.js (Line 142)

<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 code: gameobjects/components/Core.js (Line 160)

<internal> creatureBoundsMax : Phaser.Point

The maximum bounds point.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source code: gameobjects/Creature.js (Line 111)

<internal> creatureBoundsMin : Phaser.Point

The minimum bounds point.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source code: gameobjects/Creature.js (Line 105)

debug : boolean

A debug flag designed for use with Game.enableStep.

Inherited From
Source code: gameobjects/components/Core.js (Line 211)

[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 code: gameobjects/components/Destroy.js (Line 22)

events : Phaser.Events

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

Inherited From
Source code: gameobjects/components/Core.js (Line 178)
See

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.

Inherited From
Source code: gameobjects/components/Core.js (Line 277)

filterArea :Rectangle

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 164)

filters : Array.<Filter>

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

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

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

Type
  • Array.<Filter>
Inherited From
Source code: pixi/display/DisplayObject.js (Line 307)

fixedToCamera : boolean

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

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

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

The offsets are stored in the cameraOffset property.

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

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

Inherited From
Source code: gameobjects/components/FixedToCamera.js (Line 56)

[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 code: gameobjects/components/Core.js (Line 241)

game : Phaser.Game

A reference to the currently running Game.

Inherited From
Source code: gameobjects/components/Core.js (Line 145)

height : number

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

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 61)

hitArea :Rectangle | Circle | Ellipse | Polygon

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

Type
  • Rectangle | Circle | Ellipse | Polygon
Inherited From
Source code: pixi/display/DisplayObject.js (Line 62)

[readonly] inCamera : boolean

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

Inherited From
Source code: gameobjects/components/AutoCull.js (Line 37)

<internal> indices :PIXI.Uint16Array

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source code: gameobjects/Creature.js (Line 131)

isPlaying : boolean

Is the current animation playing?

Source code: gameobjects/Creature.js (Line 443)

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

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

Type
Inherited From
Source code: gameobjects/components/Core.js (Line 196)

lifespan : number

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

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

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

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

Inherited From
Source code: gameobjects/components/LifeSpan.js (Line 65)

loop : boolean

Should the current animation loop or not?

Source code: gameobjects/Creature.js (Line 463)

manager :CreatureManager

The CreatureManager instance for this object.

Source code: gameobjects/Creature.js (Line 74)

mask : PIXI.Graphics

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 282)

name : string

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

Inherited From
Source code: gameobjects/components/Core.js (Line 153)

[readonly] parent : PIXI.DisplayObjectContainer

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 79)

pendingDestroy : boolean

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

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

Inherited From
Source code: gameobjects/components/Core.js (Line 252)

pivot :Point

The pivot point of the displayObject that it rotates around

Inherited From
Source code: pixi/display/DisplayObject.js (Line 30)

position :Point

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 14)

[readonly] previousPosition : Phaser.Point

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

Inherited From
Source code: gameobjects/components/Core.js (Line 218)

[readonly] previousRotation : number

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

Inherited From
Source code: gameobjects/components/Core.js (Line 225)

renderable : boolean

Can this object be rendered

Inherited From
Source code: pixi/display/DisplayObject.js (Line 71)

[readonly] renderOrderID : number

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

Inherited From
Source code: gameobjects/components/Core.js (Line 233)

rotation : number

The rotation of the object in radians.

Inherited From
Source code: pixi/display/DisplayObject.js (Line 38)

scale :Point

The scale factor of the object.

Inherited From
Source code: pixi/display/DisplayObject.js (Line 22)

[readonly] stage :Stage

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 88)

texture : PIXI.Texture

The texture the animation is using.

Source code: gameobjects/Creature.js (Line 94)

timeDelta : number

How quickly the animation advances.

Default Value
  • 0.05
Source code: gameobjects/Creature.js (Line 80)

[readonly] type : number

The const type of this object.

Source code: gameobjects/Creature.js (Line 50)

<internal> uvs :PIXI.Float32Array

The UV data.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source code: gameobjects/Creature.js (Line 125)

<internal> vertices :PIXI.Float32Array

The vertices data.

Internal:
  • This member is internal (protected) and may be modified or removed in the future.
Source code: gameobjects/Creature.js (Line 119)

visible : boolean

The visibility of the object.

Inherited From
Source code: pixi/display/DisplayObject.js (Line 54)

width : number

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

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 32)

world : Phaser.Point

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

Inherited From
Source code: gameobjects/components/Core.js (Line 204)

[readonly] worldAlpha : number

[read-only] The multiplied alpha of the displayObject

Inherited From
Source code: pixi/display/DisplayObject.js (Line 97)

[readonly] worldPosition :Point

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 116)

[readonly] worldRotation : number

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 136)

[readonly] worldScale :Point

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 126)

worldVisible : boolean

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 258)

x : number

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 719)

y : number

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 737)

[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 code: gameobjects/components/Core.js (Line 170)

Public Methods

addChild(child) → {PIXI.DisplayObject}

Adds a child to the container.

Parameters
Name Type Description
child PIXI.DisplayObject

The DisplayObject to add to the container

Returns

The child that was added.

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 91)

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

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

Parameters
Name Type Description
child PIXI.DisplayObject

The child to add

index Number

The index to place the child in

Returns

The child that was added.

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 103)

bringToTop() → {PIXI.DisplayObject}

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

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

Returns

This instance.

Inherited From
Source code: gameobjects/components/BringToTop.js (Line 24)

destroy()

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

Inherited From
Source code: pixi/display/DisplayObject.js (Line 223)

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

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

Parameters
Name Type Description
resolution Number

The resolution of the texture being generated

scaleMode Number

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

renderer PIXI.CanvasRenderer | PIXI.WebGLRenderer

The renderer used to generate the texture.

Returns

a texture of the graphics object

Inherited From
Source code: pixi/display/DisplayObject.js (Line 542)

getBounds() → {Rectangle}

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

Returns
Rectangle -

The rectangular bounding area

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 307)

getChildAt(index) → {PIXI.DisplayObject}

Returns the child at the specified index

Parameters
Name Type Description
index Number

The index to get the child from

Returns

The child at the given index, if any.

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 194)

getChildIndex(child) → {Number}

Returns the index position of a child DisplayObject instance

Parameters
Name Type Description
child PIXI.DisplayObject

The DisplayObject instance to identify

Returns
Number -

The index position of the child display object to identify

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 159)

getLocalBounds() → {Rectangle}

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

Returns
Rectangle -

The rectangular bounding area

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 367)

kill() → {PIXI.DisplayObject}

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

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

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

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

Returns

This instance.

Inherited From
Source code: gameobjects/components/LifeSpan.js (Line 113)

moveDown() → {PIXI.DisplayObject}

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

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

Returns

This instance.

Inherited From
Source code: gameobjects/components/BringToTop.js (Line 87)

moveUp() → {PIXI.DisplayObject}

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

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

Returns

This instance.

Inherited From
Source code: gameobjects/components/BringToTop.js (Line 66)

play(loop)

Plays the currently set animation.

Parameters
Name Type Argument Default Description
loop boolean <optional>
false

Should the animation loop?

Source code: gameobjects/Creature.js (Line 413)

<internal> postUpdate()

Internal method called by the World postUpdate cycle.

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

preUpdate()

Automatically called by World.preUpdate.

Source code: gameobjects/Creature.js (Line 169)

removeChild(child) → {PIXI.DisplayObject}

Removes a child from the container.

Parameters
Name Type Description
child PIXI.DisplayObject

The DisplayObject to remove

Returns

The child that was removed.

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 211)

removeChildAt(index) → {PIXI.DisplayObject}

Removes a child from the specified index position.

Parameters
Name Type Description
index Number

The index to get the child from

Returns

The child that was removed.

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 226)

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 code: pixi/display/DisplayObjectContainer.js (Line 244)

removeStageReference()

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

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 407)

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

Resets the Game Object.

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

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

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

Parameters
Name Type Argument Default Description
x number

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

y number

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

health number <optional>
1

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

Returns

This instance.

Inherited From
Source code: gameobjects/components/Reset.js (Line 30)

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>
1

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

Returns

This instance.

Inherited From
Source code: gameobjects/components/LifeSpan.js (Line 78)

sendToBack() → {PIXI.DisplayObject}

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

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

Returns

This instance.

Inherited From
Source code: gameobjects/components/BringToTop.js (Line 45)

setAnimation(key)

Sets the Animation this Creature object will play, as defined in the mesh data.

Parameters
Name Type Description
key string

The key of the animation to set, as defined in the mesh data.

Source code: gameobjects/Creature.js (Line 400)

setChildIndex(child, index)

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

Parameters
Name Type Description
child PIXI.DisplayObject

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

index Number

The resulting index number for the child display object

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 176)

setStageReference(stage)

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

Parameters
Name Type Description
stage Stage

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

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 391)

stop()

Stops the currently playing animation.

Source code: gameobjects/Creature.js (Line 431)

swapChildren(child, child2)

Swaps the position of 2 Display Objects within this container.

Parameters
Name Type Description
child PIXI.DisplayObject

-

child2 PIXI.DisplayObject

-

Inherited From
Source code: pixi/display/DisplayObjectContainer.js (Line 134)

toGlobal(position) → {Point}

Calculates the global position of the display object

Parameters
Name Type Description
position Point

The world origin to calculate from

Returns
Point -

A point object representing the position of this object

Inherited From
Source code: pixi/display/DisplayObject.js (Line 576)

toLocal(position, from) → {Point}

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

Parameters
Name Type Argument Description
position Point

The world origin to calculate from

from PIXI.DisplayObject <optional>

The DisplayObject to calculate the global position from

Returns
Point -

A point object representing the position of this object

Inherited From
Source code: pixi/display/DisplayObject.js (Line 590)

update()

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

Inherited From
Source code: gameobjects/components/Core.js (Line 321)

updateCache()

Generates and updates the cached sprite for this object.

Inherited From
Source code: pixi/display/DisplayObject.js (Line 566)