new AABB(body, x, y, width, height)
Ninja Physics AABB constructor. Note: This class could be massively optimised and reduced in size. I leave that challenge up to you.
Parameters:
| Name | Type | 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. |
- Source:
Members
-
aabbTileProjections
-
- Source:
Properties:
Name Type Description aabbTileProjectionsobject All of the collision response handlers.
-
body
-
- Source:
Properties:
Name Type Description systemPhaser.Physics.Ninja.Body A reference to the body that owns this shape.
-
<readonly> height
-
- Source:
Properties:
Name Type Description heightnumber The height.
-
oldpos
-
- Source:
Properties:
Name Type Description oldposPhaser.Point The position of this object in the previous update.
-
pos
-
- Source:
Properties:
Name Type Description posPhaser.Point The position of this object.
-
system
-
- Source:
Properties:
Name Type Description systemPhaser.Physics.Ninja A reference to the physics system.
-
velocity
-
- Source:
Properties:
Name Type Description velocityPhaser.Point The velocity of this object.
-
<readonly> width
-
- Source:
Properties:
Name Type Description widthnumber The width.
-
<readonly> xw
-
- Source:
Properties:
Name Type Description xwnumber Half the width.
-
<readonly> yw
-
- Source:
Properties:
Name Type Description xwnumber Half the height.
Methods
-
collideAABBVsAABB(aabb)
-
Collides this AABB against a AABB.
Parameters:
Name Type Description aabbPhaser.Physics.Ninja.AABB The AABB to collide against.
- Source:
-
collideAABBVsTile(tile)
-
Collides this AABB against a Tile.
Parameters:
Name Type Description tilePhaser.Physics.Ninja.Tile The Tile to collide against.
- Source:
-
collideWorldBounds()
-
Collides this AABB against the world bounds.
- Source:
-
destroy()
-
Destroys this AABB's reference to Body and System
- Source:
-
integrate()
-
Updates this AABBs position.
- Source:
-
projAABB_22DegB(x, y, obj, t) → {number}
-
Resolves 22 Degree tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
projAABB_22DegS(x, y, obj, t) → {number}
-
Resolves 22 Degree tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
projAABB_45Deg(x, y, obj, t) → {number}
-
Resolves 45 Degree tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
projAABB_67DegB(x, y, obj, t) → {number}
-
Resolves 67 Degree tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
projAABB_67DegS(x, y, obj, t) → {number}
-
Resolves 67 Degree tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
projAABB_Concave(x, y, obj, t) → {number}
-
Resolves Concave tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
projAABB_Convex(x, y, obj, t) → {number}
-
Resolves Convex tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
projAABB_Full(x, y, obj, t) → {number}
-
Resolves Full tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
projAABB_Half(x, y, obj, t) → {number}
-
Resolves Half tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
objPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tPhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
The result of the collision.
- Type
- number
-
render(context, xOffset, yOffset, color, filled)
-
Render this AABB for debugging purposes.
Parameters:
Name Type Description contextobject The context to render to.
xOffsetnumber X offset from AABB's position to render at.
yOffsetnumber Y offset from AABB's position to render at.
colorstring color of the debug shape to be rendered. (format is css color string).
filledboolean Render the shape as solid (true) or hollow (false).
- Source:
-
reportCollisionVsBody(px, py, dx, dy, obj)
-
Process a body collision and apply the resulting forces. Still very much WIP and doesn't work fully. Feel free to fix!
Parameters:
Name Type Description pxnumber The tangent velocity
pynumber The tangent velocity
dxnumber Collision normal
dynumber Collision normal
objnumber Object this AABB collided with
- Source:
-
reportCollisionVsWorld(px, py, dx, dy, obj)
-
Process a world collision and apply the resulting forces.
Parameters:
Name Type Description pxnumber The tangent velocity
pynumber The tangent velocity
dxnumber Collision normal
dynumber Collision normal
objnumber Object this AABB collided with
- Source:
-
resolveTile(x, y, body, tile) → {boolean}
-
Resolves tile collision.
Parameters:
Name Type Description xnumber Penetration depth on the x axis.
ynumber Penetration depth on the y axis.
bodyPhaser.Physics.Ninja.AABB The AABB involved in the collision.
tilePhaser.Physics.Ninja.Tile The Tile involved in the collision.
- Source:
Returns:
True if the collision was processed, otherwise false.
- Type
- boolean