SystemHandle
One system of a plugin, as before, after, replaces, requires
and omit name it: siege.systems.spawn, behaviours.systems.chase
for an engine plugin’s, core.systems.physics for the core’s. Typed by
its phase, so an anchor across phases fails to typecheck, as Unity’s
[UpdateAfter(typeof(X))] and Bevy’s .after(x) name a system by its
type or its function rather than by a string; and by whether it is
predicted and where it runs, which a replacement must match.
A handle names a system by its plugin’s name and its key, not by the
plugin object that made it: the composer finds the system of that name
among the plugins the game lists. An engine factory’s systems never
depend on its options, so abilities.systems.cast names the system of
whichever call the game lists. Holding a handle never adds its plugin
to a world: the game lists the plugin, or the composer throws as the
world is made.
Type Parameters
Section titled “Type Parameters”| Type Parameter | Default type |
|---|---|
Of extends PhaseName |
PhaseName |
Predicted extends boolean |
boolean |
RunsOn extends RunContext |
RunContext |