Class: Tile

Phaser.Physics.Ninja. Tile

new Tile(body, x, y, width, height [, type])

Ninja Physics Tile constructor. A Tile is defined by its width, height and type. It's type can include slope data, such as 45 degree slopes, or convex slopes. Understand that for any type including a slope (types 2 to 29) the Tile must be SQUARE, i.e. have an equal width and height. Also note that as Tiles are primarily used for levels they have gravity disabled and world bounds collision disabled by default.

Note: This class could be massively optimised and reduced in size. I leave that challenge up to you.

Parameters:
Name Type Argument Default Description
body Phaser.Physics.Ninja.Body

The body that owns this shape.

x number

The x coordinate to create this shape at.

y number

The y coordinate to create this shape at.

width number

The width of this AABB.

height number

The height of this AABB.

type number <optional>
1

The type of Ninja shape to create. 1 = AABB, 2 = Circle or 3 = Tile.

Source:
src/physics/ninja/Tile.js line 24

Members

body

Properties:
Name Type Description
system Phaser.Physics.Ninja.Body

A reference to the body that owns this shape.

Source:
src/physics/ninja/Tile.js line 32

<readonly> bottom : number

The bottom value of this Body (same as Body.y + Body.height)

Type:
  • number
Source:
src/physics/ninja/Tile.js line 712

<readonly> height : number

The height.

Type:
  • number
Source:
src/physics/ninja/Tile.js line 89

<readonly> id : number

The ID of this Tile.

Type:
  • number
Source:
src/physics/ninja/Tile.js line 43

oldpos : Phaser.Point

The position of this object in the previous update.

Type:
Source:
src/physics/ninja/Tile.js line 59

pos : Phaser.Point

The position of this object.

Type:
Source:
src/physics/ninja/Tile.js line 54

The right value of this Body (same as Body.x + Body.width)

Type:
  • number
Source:
src/physics/ninja/Tile.js line 726

system : Phaser.Physics.Ninja

A reference to the physics system.

Type:
Source:
src/physics/ninja/Tile.js line 37

<readonly> type : number

The type of this Tile.

Type:
  • number
Source:
src/physics/ninja/Tile.js line 49

velocity : Phaser.Point

The velocity of this object.

Type:
Source:
src/physics/ninja/Tile.js line 94

<readonly> width : number

The width.

Type:
  • number
Source:
src/physics/ninja/Tile.js line 83

x : number

The x position.

Type:
  • number
Source:
src/physics/ninja/Tile.js line 676

<readonly> xw : number

Half the width.

Type:
  • number
Source:
src/physics/ninja/Tile.js line 71

y : number

The y position.

Type:
  • number
Source:
src/physics/ninja/Tile.js line 694

<readonly> yw

Properties:
Name Type Description
xw number

Half the height.

Source:
src/physics/ninja/Tile.js line 77

Methods

clear()

Sets this tile to be empty.

Source:
src/physics/ninja/Tile.js line 294

collideWorldBounds()

Tiles cannot collide with the world bounds, it's up to you to keep them where you want them. But we need this API stub to satisfy the Body.

Source:
src/physics/ninja/Tile.js line 154

destroy()

Destroys this Tiles reference to Body and System.

Source:
src/physics/ninja/Tile.js line 307

integrate()

Updates this objects position.

Source:
src/physics/ninja/Tile.js line 135

reportCollisionVsWorld(px, py, dx, dy, obj)

Process a world collision and apply the resulting forces.

Parameters:
Name Type Description
px number

The tangent velocity

py number

The tangent velocity

dx number

Collision normal

dy number

Collision normal

obj number

Object this Tile collided with

Source:
src/physics/ninja/Tile.js line 196

setType(id)

Tiles cannot collide with the world bounds, it's up to you to keep them where you want them. But we need this API stub to satisfy the Body.

Parameters:
Name Type Description
id number

The type of Tile this will use, i.e. Phaser.Physics.Ninja.Tile.SLOPE_45DEGpn, Phaser.Physics.Ninja.Tile.CONVEXpp, etc.

Source:
src/physics/ninja/Tile.js line 271

phaser-ce@2.20.0 is on GitHub and NPM

Documentation generated by JSDoc 3.6.7 on 2022-12-10 using Tomorrow.