EntityHandle
Defined in: src/handle.ts:466
A handle for entities spawned with entity().
Currently, it has no unique methods, so it only serves as a marker.
Extends
Section titled “Extends”Properties
Section titled “Properties”
readonlyid:RawId
Defined in: src/handle.ts:130
The numeric ID underlying this handle.
Meant to be used when one cannot use the higher-level abstractions provided by Toucan, such as storing an entity’s ID in an instance’s attribute, which cannot hold complex data structures.
In order to get back the high-level handle from an ID, use the
resolveId function.
Inherited from
Section titled “Inherited from”Methods
Section titled “Methods”children()
Section titled “children()”children():
Handle[]
Defined in: src/handle.ts:347
Gets all children (the sources of ChildOf relationships) for this entity.
Returns
Section titled “Returns”Handle[]
Example
Section titled “Example”const alice = entity()const charlie = entity().set(pair(ChildOf, alice))const bob = entity().set(pair(ChildOf, alice))
const children = alice.children() // [charlie, bob]Inherited from
Section titled “Inherited from”clear()
Section titled “clear()”clear():
this
Defined in: src/handle.ts:262
Clears all components and relationship pairs from this entity, but does not despawn the entity.
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”components()
Section titled “components()”components():
ComponentHandle<unknown>[]
Defined in: src/handle.ts:271
Returns all components associated with this entity.
Returns
Section titled “Returns”ComponentHandle<unknown>[]
Inherited from
Section titled “Inherited from”despawn()
Section titled “despawn()”despawn():
void
Defined in: src/handle.ts:449
Completely deletes this entity from the world.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”exists()
Section titled “exists()”exists():
boolean
Defined in: src/handle.ts:358
Returns true if this entity exists.
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”get<
Args>(…componentsOrPairs):Flatten<Nullable<InferValues<Args>>>
Defined in: src/handle.ts:216
Retrieves the values of up to 4 components or relationship pairs on this entity.
Missing components or pairs will return undefined.
Type Parameters
Section titled “Type Parameters”Args extends OneUpToFour<Pair<unknown> | ComponentHandle<unknown>>
Parameters
Section titled “Parameters”componentsOrPairs
Section titled “componentsOrPairs”…Args
Returns
Section titled “Returns”Flatten<Nullable<InferValues<Args>>>
Example
Section titled “Example”const name = myEntity.get(Name)
const [position, velocity] = myEntity.get(Position, Velocity)
const carCount = myEntity.get(pair(Owns, car))Inherited from
Section titled “Inherited from”has(…
componentsOrPairs):boolean
Defined in: src/handle.ts:245
Returns true if this entity has all of the specified components or
relationship pairs.
A maximum of 4 components or pairs can be checked at once.
Parameters
Section titled “Parameters”componentsOrPairs
Section titled “componentsOrPairs”…OneUpToFour<Pair<unknown> | ComponentHandle<unknown>>
Returns
Section titled “Returns”boolean
Example
Section titled “Example”const IsDead = component()const Owns = component()
const house = entity()const bob = entity() .set(IsDead) .set(pair(Owns, house))
if (bob.has(IsDead, pair(Owns, house))) { // Why don't we rob Bob's house?}Inherited from
Section titled “Inherited from”parent()
Section titled “parent()”parent():
Handle|undefined
Defined in: src/handle.ts:330
Gets the parent (the target of a ChildOf relationship) for this entity, if such a relationship exists.
Returns
Section titled “Returns”Handle | undefined
Example
Section titled “Example”const alice = entity()const charlie = entity().set(pair(ChildOf, alice))
const parent = charlie.parent() // aliceInherited from
Section titled “Inherited from”relationships()
Section titled “relationships()”relationships():
Pair<unknown>[]
Defined in: src/handle.ts:292
Returns all relationship pairs associated with this entity.
Returns
Section titled “Returns”Pair<unknown>[]
Inherited from
Section titled “Inherited from”remove()
Section titled “remove()”remove(
componentOrPair):this
Defined in: src/handle.ts:252
Removes a component or relationship pair from this entity.
Parameters
Section titled “Parameters”componentOrPair
Section titled “componentOrPair”Pair<unknown> | ComponentHandle<unknown>
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”Call Signature
Section titled “Call Signature”set(
tagComponent):this
Defined in: src/handle.ts:145
Assigns a tag component to this entity.
Parameters
Section titled “Parameters”tagComponent
Section titled “tagComponent”ComponentHandle<undefined>
Returns
Section titled “Returns”this
Example
Section titled “Example”const IsAlive = component()myEntity.set(IsAlive)Inherited from
Section titled “Inherited from”Call Signature
Section titled “Call Signature”set<
V>(component,value):this
Defined in: src/handle.ts:159
Assigns a component and its value to this entity.
Type Parameters
Section titled “Type Parameters”V
Parameters
Section titled “Parameters”component
Section titled “component”NoInfer
Returns
Section titled “Returns”this
Example
Section titled “Example”const Health = component<number>()const Stamina = component<number>()
entity() .set(Health, 100) .set(Stamina, 50)Inherited from
Section titled “Inherited from”Call Signature
Section titled “Call Signature”set(
tagPair):this
Defined in: src/handle.ts:172
Assigns a relationship pair to this entity.
Parameters
Section titled “Parameters”tagPair
Section titled “tagPair”Pair<undefined>
Returns
Section titled “Returns”this
Example
Section titled “Example”const Likes = component()
const bob = entity()const alice = entity() .set(pair(Likes, bob))Inherited from
Section titled “Inherited from”Call Signature
Section titled “Call Signature”set<
P>(pair,value):this
Defined in: src/handle.ts:188
Assigns a relationship pair and its value to this entity.
Type Parameters
Section titled “Type Parameters”P extends Pair<unknown>
Parameters
Section titled “Parameters”P
InferValue<P>
Returns
Section titled “Returns”this
Example
Section titled “Example”const Owns = component<number>()
const car = entity()const perfume = entity()
const alice = entity() .set(pair(Owns, car), 2) .set(pair(Owns, perfume), 5)Inherited from
Section titled “Inherited from”targetOf()
Section titled “targetOf()”targetOf(
relation,nth?):Handle|undefined
Defined in: src/handle.ts:383
Returns the target entity of a relationship pair from this entity.
If there are multiple targets for the given relationship, the nth index
can be specified (starting at 0).
Parameters
Section titled “Parameters”relation
Section titled “relation”number = 0
Returns
Section titled “Returns”Handle | undefined
Example
Section titled “Example”const Likes = component()
const bob = entity()const charlie = entity()const alice = entity() .set(pair(Likes, bob)) .set(pair(Likes, charlie))
// The order of targets is not guaranteed.const maybeBob = alice.targetOf(Likes, 0)const maybeCharlie = alice.targetOf(Likes, 1)Inherited from
Section titled “Inherited from”targetsOf()
Section titled “targetsOf()”targetsOf(
relation):Handle[]
Defined in: src/handle.ts:404
Returns all target entities of a relationship pair from this entity.
Parameters
Section titled “Parameters”relation
Section titled “relation”Returns
Section titled “Returns”Handle[]
Example
Section titled “Example”const Likes = component()
const bob = entity()const charlie = entity()const alice = entity() .set(pair(Likes, bob)) .set(pair(Likes, charlie))
const likedEntities = alice.targetsOf(Likes)Inherited from
Section titled “Inherited from”toString()
Section titled “toString()”toString():
string
Defined in: src/handle.ts:315
Gets the label assigned to this entity.
Returns
Section titled “Returns”string