ProcessComponent
Defined in: ProcessComponent.ts:20
A component that holds a set of processes on an entity.
Each process or slot is registered on one of two clocks (see
ProcessClock): "frame" processes are ticked by ProcessSystem every
rendered frame, "fixed" processes by ProcessFixedUpdateSystem once per
fixed step. The default is "frame". Both clocks share pause gating and
time scaling; they differ only in which dt advances them.
All processes are cancelled when the entity is destroyed.
Extends
Section titled “Extends”Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new ProcessComponent():
ProcessComponent
Returns
Section titled “Returns”ProcessComponent
Inherited from
Section titled “Inherited from”Properties
Section titled “Properties”entity
Section titled “entity”entity:
Entity
Defined in: Component.ts:26
Back-reference to the owning entity. Set by the engine when the component is added to an entity. Do not set manually.
Inherited from
Section titled “Inherited from”inspectExclude?
Section titled “inspectExclude?”
staticoptionalinspectExclude?: readonlystring[]
Defined in: Component.ts:462
Own fields and getters the Inspector leaves out of this component’s reflected state. Use it for bulk data that is not worth a diagnostic copy — a parsed tilemap, a large lookup table. Lists merge down the class chain, so a subclass adds to its base class’s exclusions.
class TilemapComponent extends VisualComponent { static inspectExclude = ["data"];}Inherited from
Section titled “Inherited from”updatePriority?
Section titled “updatePriority?”
staticoptionalupdatePriority?:number
Defined in: Component.ts:448
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}Inherited from
Section titled “Inherited from”Accessors
Section titled “Accessors”context
Section titled “context”Get Signature
Section titled “Get Signature”get context():
EngineContext
Defined in: Component.ts:114
Access the EngineContext from the entity’s scene. Throws if the entity is not in a scene.
Returns
Section titled “Returns”Inherited from
Section titled “Inherited from”Get Signature
Section titled “Get Signature”get count():
number
Defined in: ProcessComponent.ts:129
Number of active (non-completed) processes and slots across both clocks.
Returns
Section titled “Returns”number
effectiveEnabled
Section titled “effectiveEnabled”Get Signature
Section titled “Get Signature”get effectiveEnabled():
boolean
Defined in: Component.ts:61
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.
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”enabled
Section titled “enabled”Get Signature
Section titled “Get Signature”get enabled():
boolean
Defined in: Component.ts:45
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.
Returns
Section titled “Returns”boolean
Set Signature
Section titled “Set Signature”set enabled(
value):void
Defined in: Component.ts:49
Parameters
Section titled “Parameters”boolean
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”Get Signature
Section titled “Get Signature”get scene():
Scene
Defined in: Component.ts:100
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.
Returns
Section titled “Returns”Inherited from
Section titled “Inherited from”updatePriority
Section titled “updatePriority”Get Signature
Section titled “Get Signature”get updatePriority():
number
Defined in: Component.ts:82
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 }}Returns
Section titled “Returns”number
Set Signature
Section titled “Set Signature”set updatePriority(
value):void
Defined in: Component.ts:90
Parameters
Section titled “Parameters”number
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”KeyframeAnimator.updatePriority
Methods
Section titled “Methods”_applyEnabled()
Section titled “_applyEnabled()”_applyEnabled(
effective):void
Defined in: Component.ts:376
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.
Parameters
Section titled “Parameters”effective
Section titled “effective”boolean
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”_isTornDown()
Section titled “_isTornDown()”_isTornDown():
boolean
Defined in: Component.ts:347
Internal
Internal: true once this component has been removed or its entity
destroyed. Components are terminal — Entity.add uses this to reject
re-attaching an instance whose cleanups and onDestroy already ran.
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”_markTornDown()
Section titled “_markTornDown()”_markTornDown():
void
Defined in: Component.ts:356
Internal
Internal: mark this component torn down. Called by Entity.remove() and
Entity._performDestroy() after onDestroy runs.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”_refreshEnabled()
Section titled “_refreshEnabled()”_refreshEnabled():
void
Defined in: Component.ts:365
Internal
Recompute effective enabled-ness from enabled and the entity’s
activeness, firing the hook on a flip.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”_runCleanups()
Section titled “_runCleanups()”_runCleanups(
onError?):void
Defined in: Component.ts:319
Internal
Run and clear all registered cleanups. Called by Entity.remove() and Entity._performDestroy() before onDestroy.
Parameters
Section titled “Parameters”onError?
Section titled “onError?”(error) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”_tick()
Section titled “_tick()”_tick(
dt,scene?,clock?):void
Defined in: ProcessComponent.ts:151
Internal
Advance all processes and slots on clock by dt seconds and remove
completed one-offs, via the same tickProcessGuarded path
ProcessSystem uses for its pools.
— called by ProcessSystem ("frame") and
ProcessFixedUpdateSystem ("fixed")
Parameters
Section titled “Parameters”number
scene?
Section titled “scene?”string
clock?
Section titled “clock?”ProcessClock = "frame"
Returns
Section titled “Returns”void
addCleanup()
Section titled “addCleanup()”
protectedaddCleanup(fn):void
Defined in: Component.ts:277
Register a cleanup function to run when this component is removed or
destroyed, before onDestroy. Use it for what listen, listenScene
and listenBus do not cover, such as an unsubscribe from a custom
emitter.
Parameters
Section titled “Parameters”() => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”cancel()
Section titled “cancel()”cancel(
tag?):void
Defined in: ProcessComponent.ts:103
Cancel all processes and slots on both clocks, or only those matching a tag.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”void
destroy()
Section titled “destroy()”destroy():
void
Defined in: Component.ts:335
End this component’s life on its own — the same as
entity.remove(SomeClass), without having to name its own class from
inside itself, which breaks under subclassing.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”fixedUpdate()?
Section titled “fixedUpdate()?”
optionalfixedUpdate(dt):void
Defined in: Component.ts:432
Called every fixed timestep by the built-in ComponentUpdateSystem.
Parameters
Section titled “Parameters”number
Fixed timestep in seconds, scaled by scene and entity timeScale.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”listen()
Section titled “listen()”
protectedlisten<T>(source,token,handler):void
Defined in: Component.ts:237
Subscribe to events from an entity or a state machine, auto-unsubscribe on removal.
this.listen(this.entity, Hurt, ({ dir }) => this.knockback(dir));this.listen(brain.mode, brain.mode.events.entered, ({ state }) => this.anim.play(state),);Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”source
Section titled “source”EventToken<T>
handler
Section titled “handler”(data) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”listenBus()
Section titled “listenBus()”
protectedlistenBus<K>(event,handler):void
Defined in: Component.ts:263
Subscribe to an engine EventBus event, auto-unsubscribe on removal.
Throws when the entity is not in a scene, like listenScene.
Type Parameters
Section titled “Type Parameters”K extends keyof EngineEvents
Parameters
Section titled “Parameters”K
handler
Section titled “handler”(data) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”listenScene()
Section titled “listenScene()”
protectedlistenScene<T>(token,handler):void
Defined in: Component.ts:251
Subscribe to scene-level events, auto-unsubscribe on removal. Handlers
fire for bubbled entity events (entity = source) and scene.emit
events (entity = undefined).
Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”EventToken<T>
handler
Section titled “handler”(data, entity?) => void
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”onAdd()?
Section titled “onAdd()?”
optionalonAdd():void
Defined in: Component.ts:398
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.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”onDestroy()
Section titled “onDestroy()”onDestroy():
void
Defined in: ProcessComponent.ts:188
Cancel all processes and slots on entity destroy.
Returns
Section titled “Returns”void
Overrides
Section titled “Overrides”onDisable()?
Section titled “onDisable()?”
optionalonDisable():void
Defined in: Component.ts:417
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.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”onEnable()?
Section titled “onEnable()?”
optionalonEnable():void
Defined in: Component.ts:408
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.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”removeSlot()
Section titled “removeSlot()”removeSlot(
slot):boolean
Defined in: ProcessComponent.ts:94
Stop managing a slot, cancelling it first when active.
Parameters
Section titled “Parameters”Returns
Section titled “Returns”boolean
run(
process,options?):Process
Defined in: ProcessComponent.ts:50
Run a one-off process (tween, sequence, delay).
Optionally apply tags for cancel-by-tag, and pick the clock that
advances it (default "frame"; see ProcessClock). Re-running a
process that is already scheduled here is a no-op that keeps its
original clock.
Parameters
Section titled “Parameters”process
Section titled “process”options?
Section titled “options?”clock?
Section titled “clock?”string[]
Returns
Section titled “Returns”service()
Section titled “service()”
protectedservice<T>(key):T
Defined in: Component.ts:177
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.
Type Parameters
Section titled “Type Parameters”T extends object
Parameters
Section titled “Parameters”ServiceKey<T>
Returns
Section titled “Returns”T
Inherited from
Section titled “Inherited from”sibling()
Section titled “sibling()”
protectedsibling<C>(cls):C
Defined in: Component.ts:205
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. The
reference passes instanceof cls before it resolves, so an engine API
that checks the type of what it is handed (camera.follow(this.transform))
accepts it.
Type Parameters
Section titled “Type Parameters”C extends Component
Parameters
Section titled “Parameters”Returns
Section titled “Returns”C
Inherited from
Section titled “Inherited from”slot()
Section titled “slot()”slot(
config?):ProcessSlot
Defined in: ProcessComponent.ts:72
Create a reusable, restartable process slot. config.clock picks the clock (default "frame").
Parameters
Section titled “Parameters”config?
Section titled “config?”Returns
Section titled “Returns”stateMachine()
Section titled “stateMachine()”
protectedstateMachine<S>(states,initial,options?):StateMachine<S>
Defined in: Component.ts:287
Create a state machine whose hooks and event handlers are attributed to this component when they throw. The machine can be declared as a field because service lookup waits until a hook runs.
Type Parameters
Section titled “Type Parameters”S extends string
Parameters
Section titled “Parameters”states
Section titled “states”initial
Section titled “initial”NoInfer<S>
options?
Section titled “options?”Returns
Section titled “Returns”StateMachine<S>
Inherited from
Section titled “Inherited from”update()?
Section titled “update()?”
optionalupdate(dt):void
Defined in: Component.ts:426
Called every frame by the built-in ComponentUpdateSystem.
Parameters
Section titled “Parameters”number
Frame delta in seconds, scaled by scene and entity timeScale.
Returns
Section titled “Returns”void
Inherited from
Section titled “Inherited from”
protecteduse<T>(key):T
Defined in: Component.ts:125
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.
Type Parameters
Section titled “Type Parameters”T
Parameters
Section titled “Parameters”ServiceKey<T>
Returns
Section titled “Returns”T
Inherited from
Section titled “Inherited from”Coding agents: fetch https://yage.dev/llms.txt first and prefer the Markdown references it links over these HTML pages. This page's Markdown counterpart is /llms/packages/core.md.