jecs/docs/api/world.md

3.4 KiB

World

World.new

World.new(): World

Create a new world.

Returns

A new world


World.entity

World.entity(world: World): Entity

Creates an entity in the world.

Returns

A new entiity id


World.target

World.target(world: World, entity: Entity, rel: Entity): Entity

Get the target of a relationship.

This will return a target (second element of a pair) of the entity for the specified relationship.

Parameters

world	The world.
entity  The entity.
rel     The relationship between the entity and the target.

Returns

The first target for the relationship


World.add

World.add(world: World, entity: Entity, id: Entity): Entity

Add a (component) id to an entity.

This operation adds a single (component) id to an entity. If the entity already has the id, this operation will have no side effects.

Parameters

world   The world.
entity  The entity.
id      The id to add. 

World.remove

World.remove(world: World, entity: Entity, id: Entity): Entity

Remove a (component) id to an entity.

This operation removes a single (component) id to an entity. If the entity already has the id, this operation will have no side effects.

Parameters

world   The world.
entity  The entity.
id      The id to add. 

World.get

World.get(world: World, entity: Entity, id: Entity): any

Gets the component data.

Parameters

world	The world.
entity  The entity.
id      The id of component to get. 

Returns

The component data, nil if the entity does not have the componnet.


World.set

World.set(world: World, entity: Entity, id: Entity data: any)

Set the value of a component.

Parameters

world   The world.
entity  The entity.
id      The id of the componment set. 
data    The data to the component.

World.query

World.query(world: World, ...: Entity): QueryIter

Create a QueryIter from the list of filters.

Parameters

world   The world.
...     The collection of components to match entities against.

Returns

The query iterator.


Pair

pair

pair(first: Entity, second: Entity): Entity

Creates a composite key.

Parameters

first   The first element.
second  The second element.

Returns

The pair of the two elements


IS_PAIR

jecs.IS_PAIR(id: Entity): boolean

Creates a composite key.

Parameters

id  The id to check.

Returns

If id is a pair.


Constants

OnAdd


OnRemove


Rest


OnSet


Wildcard

Matches any id, returns all matches.