Skip to content

@emile/engine


@emile/engine / physics/collider / RectangleCollider

Class: RectangleCollider

Defined in: src/physics/collider.ts:272

Represents a collider component.

See here for information on how collision filters are used.

Extends

Constructors

new RectangleCollider()

new RectangleCollider(width, height): RectangleCollider

Defined in: src/physics/collider.ts:303

Creates a new rectangle collider.

Parameters

width

number

The width of the rectangle.

height

number

The height of the rectangle.

Returns

RectangleCollider

Overrides

Collider.constructor

Properties

$callbacks

protected $callbacks: object

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:35

Index Signature

[op: number]: Function[]

Inherited from

Collider.$callbacks


$changes

protected $changes: ChangeTree

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:34

Inherited from

Collider.$changes


body?

optional body: TypedBody

Defined in: src/physics/collider.ts:62

The matter body of the collider.

Warning

DO NOT TOUCH THIS UNLESS YOU KNOW WHAT YOU ARE DOING.

Inherited from

Collider.body


category

category: number = 1

Defined in: src/physics/collider.ts:54

Inherited from

Collider.category


componentId

readonly componentId: number

Defined in: src/ecs/component.ts:26

Inherited from

Collider.componentId


group

group: number = 0

Defined in: src/physics/collider.ts:53

Inherited from

Collider.group


height

height: number

Defined in: src/physics/collider.ts:295


isSensor

isSensor: boolean = false

Defined in: src/physics/collider.ts:52

Inherited from

Collider.isSensor


mask

mask: number = 4294967295

Defined in: src/physics/collider.ts:55

Inherited from

Collider.mask


type

type: ColliderType

Defined in: src/physics/collider.ts:51

Inherited from

Collider.type


width

width: number

Defined in: src/physics/collider.ts:294


_context

static _context: Context

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:30

Inherited from

Collider._context


_definition

static _definition: SchemaDefinition

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:31

Inherited from

Collider._definition


_typeid

static _typeid: number

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:29

Inherited from

Collider._typeid


COMPONENT_ID

readonly static COMPONENT_ID: 193 = 193

Defined in: src/physics/collider.ts:273

The unique identifier of the component.

You must set this value to the unique identifier of the component.

This is required to identify the component on an entity, between the client and server.

This should be the same on the client and server across all instances of the same component.

Note

The id must be between 0 and 190 (inclusive), 191 - 255 are reserved for the engine.

Overrides

Collider.COMPONENT_ID

Accessors

_definition

Get Signature

get protected _definition(): SchemaDefinition

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:44

Returns

SchemaDefinition

Inherited from

Collider._definition

Methods

applyFilters()

applyFilters(client, encodeAll?): number[]

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:62

Parameters

client

any

encodeAll?

boolean

Returns

number[]

Inherited from

Collider.applyFilters


assign()

assign(props): this

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:41

Parameters

props

{ body: TypedBody; category: number; componentId: number; group: number; height: number; isSensor: boolean; mask: number; type: ColliderType; width: number; } | ToJSON<RectangleCollider>

Returns

this

Inherited from

Collider.assign


clone()

clone(): this

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:63

Returns

this

Inherited from

Collider.clone


decode()

decode(bytes, it?, ref?): DataChange<any, string>[]

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:59

Parameters

bytes

number[]

it?

Iterator

ref?

Ref

Returns

DataChange<any, string>[]

Inherited from

Collider.decode


deleteByIndex()

protected deleteByIndex(index): void

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:67

Parameters

index

number

Returns

void

Inherited from

Collider.deleteByIndex


discardAllChanges()

discardAllChanges(): void

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:65

Returns

void

Inherited from

Collider.discardAllChanges


encode()

encode(encodeAll?, bytes?, useFilters?): number[]

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:60

Parameters

encodeAll?

boolean

bytes?

number[]

useFilters?

boolean

Returns

number[]

Inherited from

Collider.encode


encodeAll()

encodeAll(useFilters?): number[]

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:61

Parameters

useFilters?

boolean

Returns

number[]

Inherited from

Collider.encodeAll


getByIndex()

protected getByIndex(index): any

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:66

Parameters

index

number

Returns

any

Inherited from

Collider.getByIndex


listen()

listen<K>(prop, callback, immediate?): () => boolean

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:58

Client-side: listen for changes on property.

Type Parameters

K

K extends NonFunctionPropNames<RectangleCollider>

Parameters

prop

K

the property name

callback

(value, previousValue) => void

callback to be triggered on property change

immediate?

boolean

trigger immediatelly if property has been already set.

Returns

Function

Returns

boolean

Inherited from

Collider.listen


onChange()

onChange(callback): () => void

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:38

Parameters

callback

() => void

Returns

Function

Returns

void

Inherited from

Collider.onChange


onRemove()

onRemove(callback): () => void

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:39

Parameters

callback

() => void

Returns

Function

Returns

void

Inherited from

Collider.onRemove


setDirty()

setDirty<K>(property, operation?): void

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:51

(Server-side): Flag a property to be encoded for the next patch.

Type Parameters

K

K extends NonFunctionPropNames<RectangleCollider>

Parameters

property

string representing the property name, or number representing the index of the property.

number | K

operation?

OPERATION

OPERATION to perform (detected automatically)

Returns

void

Inherited from

Collider.setDirty


toJSON()

toJSON(): ToJSON<RectangleCollider>

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:64

Returns

ToJSON<RectangleCollider>

Inherited from

Collider.toJSON


fire()

static fire(collider, event, pair, a, b): void

Defined in: src/physics/collider.ts:183

Fires a collision event.

Parameters

collider

Collider

The collider.

event

ColliderEvent

The event to fire.

pair

Pair

The matter pair

a

Entity

The first entity

b

Entity

The second entity

Returns

void

Note

This should only be called by the physics world.

Note

Entity a should be the entity that has this collider.

Inherited from

Collider.fire


getBody()

static getBody(collider): undefined | TypedBody

Defined in: src/physics/collider.ts:216

Gets the matter body of the collider.

Parameters

collider

Collider

The collider.

Returns

undefined | TypedBody

The matter body.

Note

Only use this if you know what you are doing.

Inherited from

Collider.getBody


is()

static is(type): boolean

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:33

Parameters

type

DefinitionType

Returns

boolean

Inherited from

Collider.is


off()

static off(collider, event, callback): void

Defined in: src/physics/collider.ts:154

Removes a collision event listener.

Parameters

collider

Collider

The collider.

event

ColliderEvent

The event to remove the callback from.

callback

CollisionCallback

The callback to remove.

Returns

void

Inherited from

Collider.off


on()

static on(collider, event, callback): void

Defined in: src/physics/collider.ts:135

Adds a collision event listener.

Parameters

collider

Collider

The collider.

event

ColliderEvent

The event to listen for.

callback

CollisionCallback

The callback to call when the event is triggered.

Returns

void

Inherited from

Collider.on


onComponentAdded()

static onComponentAdded(entity, component): void

Defined in: src/physics/collider.ts:275

Parameters

entity

Entity

component

Component

Returns

void

Overrides

Collider.onComponentAdded


onError()

static onError(e): void

Defined in: node_modules/.pnpm/@colyseus+schema@2.0.35/node_modules/@colyseus/schema/lib/Schema.d.ts:32

Parameters

e

any

Returns

void

Inherited from

Collider.onError


setBody()

static setBody(collider, body): void

Defined in: src/physics/collider.ts:203

Sets the matter body of the collider.

Parameters

collider

Collider

The collider.

body

The matter body to set.

undefined | TypedBody

Returns

void

Note

This should only be called by the physics world.

Inherited from

Collider.setBody


setCollisionCategory()

static setCollisionCategory(collider, category): void

Defined in: src/physics/collider.ts:106

Sets the collision category of the collider.

Parameters

collider

Collider

The collider.

category

number

The collision category to set.

Returns

void

Inherited from

Collider.setCollisionCategory


setCollisionGroup()

static setCollisionGroup(collider, group): void

Defined in: src/physics/collider.ts:92

Sets the collision category of the collider.

Parameters

collider

Collider

The collider.

group

number

The collision group to set.

Returns

void

Inherited from

Collider.setCollisionGroup


setCollisionMask()

static setCollisionMask(collider, mask): void

Defined in: src/physics/collider.ts:120

Sets the collision mask of the collider.

Parameters

collider

Collider

The collider.

mask

number

The collision mask to set.

Returns

void

Inherited from

Collider.setCollisionMask


setHeight()

static setHeight(collider, height): void

Defined in: src/physics/collider.ts:327

Sets the height of the rectangle collider.

Parameters

collider

RectangleCollider

The collider.

height

number

The height to set.

Returns

void


setSensor()

static setSensor(collider, isSensor): void

Defined in: src/physics/collider.ts:78

Sets the collider as a sensor.

Parameters

collider

Collider

The collider.

isSensor

boolean

Wether or not the collider is a sensor.

Returns

void

Inherited from

Collider.setSensor


setWidth()

static setWidth(collider, width): void

Defined in: src/physics/collider.ts:316

Sets the width of the rectangle collider.

Parameters

collider

RectangleCollider

The collider.

width

number

The width to set.

Returns

void


update()

static update(collider): void

Defined in: src/physics/collider.ts:225

Updates the collider component from the matter body.

Parameters

collider

Collider

The collider.

Returns

void

Inherited from

Collider.update