Class: ScriptSystem
Drives the Script lifecycle in Unity's order: OnAttach (Awake) once the entity is first active and fully built; OnEnable / OnDisable the moment a script starts / stops running (enabled and the entity active in the hierarchy); OnStart before its first OnUpdate, once every pending OnEnable has run; OnUpdate every tick while running; OnDisable then OnDestroy on remove. Immediate paths: the script's enabled setter and Scene.OnActiveRefreshed (SetActive, reparenting, loads, spawns). Each tick also re-checks every script, for changes that bypass both (an active field written directly). Catches throws per hook so a misbehaving script doesn't take down its neighbours.
Extends
Implements
ScriptLifecycle
Constructors
Constructor
ts
new ScriptSystem(): ScriptSystem;Returns
ScriptSystem
Inherited from
Properties
| Property | Modifier | Type | Default value | Inherited from |
|---|---|---|---|---|
enabled | public | boolean | true | System.enabled |
parallel | public | boolean | false | System.parallel |
Methods
GetName()
ts
GetName(): string;Returns
string
Overrides
GetPhase()
ts
GetPhase(): SystemPhase;Returns
Overrides
OnClose()
ts
OnClose(): void;Returns
void
Inherited from
OnInit()
ts
OnInit(_engine): void;Parameters
| Parameter | Type |
|---|---|
_engine | IEngine |
Returns
void
Inherited from
OnRender()
ts
OnRender(_scene, _renderer): void | Promise<void>;Parameters
| Parameter | Type |
|---|---|
_scene | Scene |
_renderer | IRenderer |
Returns
void | Promise<void>
Inherited from
OnRendererChanged()
ts
OnRendererChanged(_renderer): void;Parameters
| Parameter | Type |
|---|---|
_renderer | IRenderer |
Returns
void
Inherited from
OnStart()
ts
OnStart(scene, _renderer): void;Parameters
| Parameter | Type |
|---|---|
scene | Scene |
_renderer | IRenderer |
Returns
void
Overrides
OnStop()
ts
OnStop(_scene): void;Parameters
| Parameter | Type |
|---|---|
_scene | Scene |
Returns
void
Overrides
OnUpdate()
ts
OnUpdate(scene, dt): void;Every call into script code is timed as Scripts for the stats overlay (one section per pass or event, not per script).
Parameters
| Parameter | Type |
|---|---|
scene | Scene |
dt | number |
Returns
void
Overrides
RefreshScript()
ts
RefreshScript(script): void;A script's enabled changed — OnEnable / OnDisable now, unless mid-build (the load's own refresh covers it) or outside a run.
Parameters
| Parameter | Type |
|---|---|
script | Script |
Returns
void
Implementation of
ts
ScriptLifecycle.RefreshScriptRunFrame()
ts
RunFrame(dt): void;OnFrameUpdate pass — the Engine calls it once per rendered frame while the game runs.
Parameters
| Parameter | Type |
|---|---|
dt | number |
Returns
void
RunLate()
ts
RunLate(dt): void;OnLateUpdate pass — ScriptLateUpdateSystem calls it in PostUpdate, after every Update-phase system. Running state is this tick's, from OnUpdate's pass.
Parameters
| Parameter | Type |
|---|---|
dt | number |
Returns
void