Skip to content

Transform

Defined in: Transform.ts:15

Mutable transform component for entity positioning.

new Transform(options?): Transform

Defined in: Transform.ts:33

Vec2Like

number

Vec2Like

Transform

Component.constructor

entity: Entity

Defined in: Component.ts:22

Back-reference to the owning entity. Set by the engine when the component is added to an entity. Do not set manually.

Component.entity


static restorePriority: number = 0

Defined in: Transform.ts:16

Snapshot restore order. On load, an entity’s components are re-added in ascending priority, so a component whose onAdd() reads a sibling can rely on lower-priority siblings being present and initialized. Undeclared = 100. Engine components reserve 0-99; game and addon components declare a value only when a sibling onAdd() dependency requires it. Equal priorities restore in save-time add order. Subclasses inherit their base class’s priority unless they declare their own.

Component.restorePriority


static optional updatePriority?: number

Defined in: Component.ts:361

Class-level default for updatePriority: every instance runs at this priority unless its own updatePriority is written. Undeclared = 0. Subclasses inherit their base class’s value unless they declare their own. Declare it on a component whose behavior depends on running after (or before) a sibling, so the entity that adds it does not have to control the add order.

class BoundsClamp extends Component {
static updatePriority = 10; // after the follow that moves the camera
}

Component.updatePriority

get context(): EngineContext

Defined in: Component.ts:109

Access the EngineContext from the entity’s scene. Throws if the entity is not in a scene.

EngineContext

Component.context


get effectiveEnabled(): boolean

Defined in: Component.ts:56

Whether the component is actually running: enabled, on an active entity, and past onAdd. This is the state onEnable and onDisable track — read it when a method has to behave one way live and another way dormant.

boolean

Component.effectiveEnabled


get enabled(): boolean

Defined in: Component.ts:40

Whether this component runs. Disabled components are skipped by ComponentUpdateSystem.

Writing this fires onEnable / onDisable when the effective state changes — enabled && entity.isActive. A component disabled here stays disabled through a setActive(false) / setActive(true) cycle on its entity.

boolean

set enabled(value): void

Defined in: Component.ts:44

boolean

void

KeyframeAnimator.enabled


get position(): Vec2

Defined in: Transform.ts:54

Local position (relative to parent, or world if no parent).

Vec2

set position(v): void

Defined in: Transform.ts:58

Vec2

void


get rotation(): number

Defined in: Transform.ts:64

Local rotation in radians.

number

set rotation(v): void

Defined in: Transform.ts:68

number

void


get scale(): Vec2

Defined in: Transform.ts:74

Local scale factor.

Vec2

set scale(v): void

Defined in: Transform.ts:78

Vec2

void


get scene(): Scene

Defined in: Component.ts:95

Access the entity’s scene. Throws if the entity is not in a scene. Prefer this over threading through this.entity.scene in component code.

Scene

Component.scene


get updatePriority(): number

Defined in: Component.ts:77

Where this component runs among its siblings. ComponentUpdateSystem calls update / fixedUpdate on an entity’s components in ascending priority; equal priorities run in add order. Undeclared = 0, so a negative value runs before siblings that keep the default and a positive value runs after them. Writable at any time, before or after add(). Defaults to the class’s static updatePriority.

class Player extends Entity {
setup() {
this.add(new Mover());
this.add(new Brain()).updatePriority = -1; // decides before Mover moves
}
}

number

set updatePriority(value): void

Defined in: Component.ts:85

number

void

KeyframeAnimator.updatePriority


get worldPosition(): Vec2

Defined in: Transform.ts:84

Computed world position. Recomputed lazily when dirty.

Vec2

set worldPosition(v): void

Defined in: Transform.ts:90

Set position in world space. Back-computes the local position from the parent chain.

Vec2

void


get worldRotation(): number

Defined in: Transform.ts:103

Computed world rotation. Recomputed lazily when dirty.

number

set worldRotation(v): void

Defined in: Transform.ts:109

Set rotation in world space. Back-computes the local rotation from the parent chain.

number

void


get worldScale(): Vec2

Defined in: Transform.ts:120

Computed world scale. Recomputed lazily when dirty.

Vec2

_applyEnabled(effective): void

Defined in: Component.ts:274

Internal

Force an effective-enabled transition, firing the hook on a flip. Used by Entity for teardown, where enabled and the entity’s activeness both still read true.

boolean

void

Component._applyEnabled


_markDirty(): void

Defined in: Transform.ts:159

Internal

Mark this transform and all descendant transforms as dirty.

void


_refreshEnabled(): void

Defined in: Component.ts:263

Internal

Recompute effective enabled-ness from enabled and the entity’s activeness, firing the hook on a flip.

void

Component._refreshEnabled


_runCleanups(): void

Defined in: Component.ts:249

Internal

Run and clear all registered cleanups. Called by Entity.remove() and Entity._performDestroy() before onRemove/onDestroy.

void

Component._runCleanups


protected addCleanup(fn): void

Defined in: Component.ts:239

Register a cleanup function to run when this component is removed or destroyed.

() => void

void

Component.addCleanup


optional afterRestore(data, resolve): void

Defined in: Component.ts:367

Called after onAdd() during save/load restoration. Apply state that depends on onAdd() having run.

unknown

SnapshotResolver

void

Component.afterRestore


optional fixedUpdate(dt): void

Defined in: Component.ts:333

Called every fixed timestep by the built-in ComponentUpdateSystem.

number

Fixed timestep in seconds, scaled by scene and entity timeScale.

void

Component.fixedUpdate


protected listen<T>(entity, token, handler): void

Defined in: Component.ts:216

Subscribe to events on any entity, auto-unsubscribe on removal.

T

Entity

EventToken<T>

(data) => void

void

Component.listen


protected listenScene<T>(token, handler): void

Defined in: Component.ts:230

Subscribe to scene-level events, auto-unsubscribe on removal. Handlers fire for bubbled entity events (entity = source) and scene.emit events (entity = undefined).

T

EventToken<T>

(data, entity?) => void

void

Component.listenScene


optional onAdd(): void

Defined in: Component.ts:296

Called when the component is added to an entity. Validate dependencies here — a service, a sibling component, a render layer — and throw when one is missing. The throw is attributed to this component, recorded in Inspector.getErrors().callbackErrors, and rethrown, so it reaches the caller of entity.add() unchanged.

void

Component.onAdd


optional onDestroy(): void

Defined in: Component.ts:321

Called when the component is destroyed (entity destroyed or component removed).

void

Component.onDestroy


optional onDisable(): void

Defined in: Component.ts:315

Called when the component stops being effectively enabled — enabled went false, the entity (or an ancestor) was deactivated, or the component is being removed or destroyed. Put live resources to sleep here; the component is reused afterwards, so do not free anything onEnable cannot rebuild.

void

Component.onDisable


optional onEnable(): void

Defined in: Component.ts:306

Called when the component becomes effectively enabled — enabled is true and the entity is active. Fires right after onAdd() for a component added to an active entity, and again on every later flip. Bring live resources back online here (unpause a sound, show a display object, re-enable a physics body). Game-state reset does not belong here: the hook sees whatever state the component held while dormant.

void

Component.onEnable


optional onRemove(): void

Defined in: Component.ts:318

Called when the component is removed from an entity.

void

Component.onRemove


rotate(deltaRadians): void

Defined in: Transform.ts:144

Rotate by a delta in radians.

number

void


serialize(): TransformData

Defined in: Transform.ts:188

Return a JSON-serializable snapshot of this component’s state. Used by the save system.

TransformData

Component.serialize


protected service<T>(key): T

Defined in: Component.ts:172

Lazy proxy-based service resolution. Can be used at field-declaration time:

readonly input = this.service(InputManagerKey);

The actual resolution is deferred until first property access.

T extends object

ServiceKey<T>

T

Component.service


setPosition(x, y): void

Defined in: Transform.ts:126

Set position directly.

number

number

void


setRotation(radians): void

Defined in: Transform.ts:138

Set rotation in radians.

number

void


setScale(x, y): void

Defined in: Transform.ts:150

Set scale.

number

number

void


protected sibling<C>(cls): C

Defined in: Component.ts:197

Lazy proxy-based sibling component resolution. Can be used at field-declaration time:

readonly anim = this.sibling(AnimatedSpriteComponent);

The actual resolution is deferred until first property access.

C extends Component

ComponentClass<C>

C

Component.sibling


translate(dx, dy): void

Defined in: Transform.ts:132

Translate by an offset.

number

number

void


optional update(dt): void

Defined in: Component.ts:327

Called every frame by the built-in ComponentUpdateSystem.

number

Frame delta in seconds, scaled by scene and entity timeScale.

void

Component.update


protected use<T>(key): T

Defined in: Component.ts:120

Resolve a service by key, cached after first lookup. Scene-scoped values (registered via scene._registerScoped) take precedence over engine scope. A key declared with scope: "scene" that falls back to engine scope emits a one-shot dev warning — almost always signals a missed beforeEnter hook.

T

ServiceKey<T>

T

Component.use


static fromSnapshot(data): Transform

Defined in: Transform.ts:196

TransformData

Transform