@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
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
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
Returns
any
addSystem()
addSystem(_0): void;
Defined in: lib/libecs.d.ts:56
Parameters
_0
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
Returns
SparseArray
getComponentsConst()
getComponentsConst(_0): SparseArray;
Defined in: lib/libecs.d.ts:49
Parameters
_0
Returns
SparseArray
getEntityComponent()
getEntityComponent(_0, _1): any;
Defined in: lib/libecs.d.ts:62
Parameters
_0
Entity
_1
Returns
any
getEntityComponentConst()
getEntityComponentConst(_0, _1): any;
Defined in: lib/libecs.d.ts:61
Parameters
_0
Entity
_1
Returns
any
getZipper()
getZipper(_0): any[];
Defined in: lib/libecs.d.ts:52
Parameters
_0
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
Returns
SparseArray
removeComponent()
removeComponent(_0, _1): void;
Defined in: lib/libecs.d.ts:55
Parameters
_0
Entity
_1
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
ctx
Returns
void