Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface EntityComponentState

Represents all the entities' and components' states at a single point in time. Mutable to support in-place update by Systems.

Hierarchy

Implemented by

Index

Methods

createEntity

  • Returns Entity

deleteComponent

  • deleteComponent<T>(componentType: new () => T, ownerId: EntityId): void
  • Marks the component as deleted.

    Type parameters

    Parameters

    • componentType: new () => T
        • new (): T
        • Returns T

    • ownerId: EntityId

    Returns void

deleteEntity

  • deleteEntity(entityId: EntityId): void
  • Parameters

    Returns void

getAspect

  • getAspect<T, U>(componentTypeT: new () => T, componentTypeU: new () => U): Iterable<[Component<T>, Component<U>]>
  • getAspect<T, U, V>(componentTypeT: new () => T, componentTypeU: new () => U, componentTypeV: new () => V): Iterable<[Component<T>, Component<U>, Component<V>]>
  • Gets a tuple of components for each entity that has all the provided component types

    Type parameters

    Parameters

    • componentTypeT: new () => T
        • new (): T
        • Returns T

    • componentTypeU: new () => U
        • new (): U
        • Returns U

    Returns Iterable<[Component<T>, Component<U>]>

  • Type parameters

    Parameters

    • componentTypeT: new () => T
        • new (): T
        • Returns T

    • componentTypeU: new () => U
        • new (): U
        • Returns U

    • componentTypeV: new () => V
        • new (): V
        • Returns V

    Returns Iterable<[Component<T>, Component<U>, Component<V>]>

getComponent

  • getComponent<T>(componentType: new () => T, ownerId: EntityId): undefined | Component<T>
  • Returns a Component of the supplied type if the given entity owns one

    Type parameters

    Parameters

    • componentType: new () => T
        • new (): T
        • Returns T

    • ownerId: EntityId

    Returns undefined | Component<T>

getComponents

  • getComponents<T>(componentType: new () => T): Iterable<Component<T>>
  • Gets all the components of the given type

    Type parameters

    Parameters

    • componentType: new () => T
        • new (): T
        • Returns T

    Returns Iterable<Component<T>>

getEntity

  • Parameters

    Returns undefined | Entity

getEntityComponentDb

  • Return the underlying dynamically-typed state. NB this object will never hide deleted state.

    Returns EntityComponentDb

releaseDeletedState

  • releaseDeletedState(): void
  • Drops all components and entities marked as deleted from the data

    Returns void

serialize

setComponent

  • Sets the component data of the given owner. If entity already has component of this type, it overwrites existing component If entity does not exist, it will return undefined.

    Type parameters

    Parameters

    Returns undefined | Component<T>

withDeletedStateHidden

  • Returns this same state, but all getters will filter out deleted entities and components.

    Returns EntityComponentState

Generated using TypeDoc