Skip to main content

ActionsSystem

An Excalibur System that updates entities of certain types. Systems are scene specific

Excalibur Systems currently require at least 1 Component type to operated

Multiple types are declared as a type union For example:

class MySystem extends System {
  static priority = SystemPriority.Lowest;
  public readonly systemType = SystemType.Update;
  public query: Query<typeof TransformComponent>;
  constructor(public world: World) {
  super();
     this.query = this.world.query([TransformComponent]);
  }
  public update(elapsed: number) {
     ...
  }
}

Hierarchy

Index

Constructors

constructor

Properties

query

query: Query<typeof ActionsComponent>

systemType

systemType: SystemType = SystemType.Update

Determine whether the system is called in the SystemType.Update or the SystemType.Draw phase. Update is first, then Draw.

publicworld

world: World

staticpriority

priority: -5 = SystemPriority.Higher

System can execute in priority order, by default all systems are priority 0. Lower values indicated higher priority. For a system to execute before all other a lower priority value (-1 for example) must be set. For a system to execute after all other a higher priority value (10 for example) must be set.

Methods

optionalinitialize

  • initialize(world: World, scene: Scene<unknown>): void
  • Optionally specify an initialize handler


    Parameters

    Returns void

optionalpostupdate

  • postupdate(scene: Scene<unknown>, elapsed: number): void
  • Optionally run a postupdate after the system processes matching entities


    Parameters

    • scene: Scene<unknown>
    • elapsed: number

      Time in milliseconds since the last frame

    Returns void

optionalpreupdate

  • preupdate(scene: Scene<unknown>, elapsed: number): void
  • Optionally run a preupdate before the system processes matching entities


    Parameters

    • scene: Scene<unknown>
    • elapsed: number

      Time in milliseconds since the last frame

    Returns void

update

  • update(elapsed: number): void
  • Update all entities that match this system's types


    Parameters

    • elapsed: number

      Time in milliseconds

    Returns void