@nanoforge-dev/ecs-lib

Classes

abstract AbstractECSLibrary

Defined in: src/ecs-library.abstract.ts:18

Abstract class representing an ECS (Entity Component System) library. Extends the BaseComponentSystemLibrary to provide ECS-specific functionality. Manages a registry of systems and ensures proper initialization before use.

AbstractECSLibrary

Extends

Constructors

Constructor
protected new AbstractECSLibrary(): AbstractECSLibrary;

Defined in: src/ecs-library.abstract.ts:24

Returns

AbstractECSLibrary

Overrides
BaseComponentSystemLibrary.constructor

Properties

_registry?
protected optional _registry: Registry;

Defined in: src/ecs-library.abstract.ts:20

module?
protected optional module: MainModule;

Defined in: src/ecs-library.abstract.ts:19

path
protected path: string;

Defined in: src/ecs-library.abstract.ts:22

Accessors

__name
Get Signature
get abstract __name(): string;

Defined in: src/ecs-library.abstract.ts:31

Returns

string

registry
Get Signature
get registry(): Registry;

Defined in: src/ecs-library.abstract.ts:48

Gets the registry.

Throws

Will throw an error if the library is not initialized.

Returns

Registry

The registry.

Methods

__run()
__run(ctx): Promise<void>;

Defined in: src/ecs-library.abstract.ts:38

Runs the ECS systems using the provided context.

Parameters
ctx

Context

The context to be used for running the systems.

Returns

Promise<void>

A promise that resolves when the systems have been run.

Interfaces

Registry

Defined in: lib/libecs.d.ts:47

Extends

  • ClassHandle

Methods

[dispose]()
dispose: void;

Defined in: lib/libecs.d.ts:16

Returns

void

Inherited from
ClassHandle.[dispose]
addComponent()
addComponent(_0, _1): any;

Defined in: lib/libecs.d.ts:63

Parameters
_0

Entity

_1

Component

Returns

any

addSystem()
addSystem(_0): void;

Defined in: lib/libecs.d.ts:56

Parameters
_0

System

Returns

void

clearEntities()
clearEntities(): void;

Defined in: lib/libecs.d.ts:54

Returns

void

clearSystems()
clearSystems(): void;

Defined in: lib/libecs.d.ts:57

Returns

void

clone()
clone(): this;

Defined in: lib/libecs.d.ts:17

Returns

this

Inherited from
ClassHandle.clone
delete()
delete(): void;

Defined in: lib/libecs.d.ts:12

Returns

void

Inherited from
ClassHandle.delete
deleteLater()
deleteLater(): this;

Defined in: lib/libecs.d.ts:13

Returns

this

Inherited from
ClassHandle.deleteLater
entityFromIndex()
entityFromIndex(_0): Entity;

Defined in: lib/libecs.d.ts:58

Parameters
_0

number

Returns

Entity

getComponents()
getComponents(_0): SparseArray;

Defined in: lib/libecs.d.ts:50

Parameters
_0

Component

Returns

SparseArray

getComponentsConst()
getComponentsConst(_0): SparseArray;

Defined in: lib/libecs.d.ts:49

Parameters
_0

Component

Returns

SparseArray

getEntityComponent()
getEntityComponent(_0, _1): any;

Defined in: lib/libecs.d.ts:62

Parameters
_0

Entity

_1

Component

Returns

any

getEntityComponentConst()
getEntityComponentConst(_0, _1): any;

Defined in: lib/libecs.d.ts:61

Parameters
_0

Entity

_1

Component

Returns

any

getZipper()
getZipper(_0): any[];

Defined in: lib/libecs.d.ts:52

Parameters
_0

Component[]

Returns

any[]

isAliasOf()
isAliasOf(other): boolean;

Defined in: lib/libecs.d.ts:11

Parameters
other

ClassHandle

Returns

boolean

Inherited from
ClassHandle.isAliasOf
isDeleted()
isDeleted(): boolean;

Defined in: lib/libecs.d.ts:14

Returns

boolean

Inherited from
ClassHandle.isDeleted
killEntity()
killEntity(_0): void;

Defined in: lib/libecs.d.ts:53

Parameters
_0

Entity

Returns

void

maxEntities()
maxEntities(): number;

Defined in: lib/libecs.d.ts:60

Returns

number

registerComponent()
registerComponent(_0): SparseArray;

Defined in: lib/libecs.d.ts:48

Parameters
_0

Component

Returns

SparseArray

removeComponent()
removeComponent(_0, _1): void;

Defined in: lib/libecs.d.ts:55

Parameters
_0

Entity

_1

Component

Returns

void

removeSystem()
removeSystem(_0): void;

Defined in: lib/libecs.d.ts:59

Parameters
_0

number

Returns

void

runSystems()
runSystems(_0): void;

Defined in: lib/libecs.d.ts:64

Parameters
_0

any

Returns

void

spawnEntity()
spawnEntity(): Entity;

Defined in: lib/libecs.d.ts:51

Returns

Entity

Type Aliases

Component

type Component = object;

Defined in: lib/libecs.d.ts:3

Indexable

[key: string]: any

Properties

name
name: string;

Defined in: lib/libecs.d.ts:3


EditorComponentManifest

type EditorComponentManifest = object;

Defined in: src/editor-manifest.type.ts:100

Manifest for a component to be used in the NanoForge Editor

Properties

description?
optional description: string;

Defined in: src/editor-manifest.type.ts:109

Description of the component

name
name: string;

Defined in: src/editor-manifest.type.ts:104

Displayed name of the component

params
params: Record<string, ECSElement>;

Defined in: src/editor-manifest.type.ts:114

Parameters of the component


EditorSystemManifest

type EditorSystemManifest = object;

Defined in: src/editor-manifest.type.ts:120

Manifest for a system to be used in the NanoForge Editor

Properties

dependencies
dependencies: string[];

Defined in: src/editor-manifest.type.ts:134

Component names needed by the system

description?
optional description: string;

Defined in: src/editor-manifest.type.ts:129

Description of the system

name
name: string;

Defined in: src/editor-manifest.type.ts:124

Displayed name of the system


System()

type System = (registry, ctx) => void;

Defined in: lib/libecs.d.ts:5

Parameters

registry

Registry

ctx

Component

Returns

void