Skip to content

1681-engine / index / PrefabLibrary

Class: PrefabLibrary ​

Defined in: src/ecs/prefab.ts:112

Prefabs by name, loadable from data a designer edits. Components are named through component(name, type); a value in the data is plain JSON, so factories (a sprite, a brain) are given in code with factory.

Constructors ​

Constructor ​

ts
new PrefabLibrary(): PrefabLibrary;

Returns ​

PrefabLibrary

Methods ​

add() ​

ts
add(prefab): this;

Defined in: src/ecs/prefab.ts:132

Adds a prefab made in code.

Parameters ​

ParameterType
prefabPrefab

Returns ​

this


component() ​

ts
component(name, type): this;

Defined in: src/ecs/prefab.ts:118

Lets data name a component type.

Parameters ​

ParameterType
namestring
typeComponentType<unknown>

Returns ​

this


factory() ​

ts
factory<T>(
   prefab, 
   type, 
   make
): this;

Defined in: src/ecs/prefab.ts:124

A value made in code for a prefab loaded from data (and its variants): the data cannot hold a function.

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterType
prefabstring
typeComponentType<T>
make(ctx) => T

Returns ​

this


get() ​

ts
get(name): Prefab;

Defined in: src/ecs/prefab.ts:169

Parameters ​

ParameterType
namestring

Returns ​

Prefab


has() ​

ts
has(name): boolean;

Defined in: src/ecs/prefab.ts:175

Parameters ​

ParameterType
namestring

Returns ​

boolean


load() ​

ts
load(data): this;

Defined in: src/ecs/prefab.ts:141

Builds the prefabs of data, bases before their variants (in any order in the data), and adds them. Throws, naming the prefab, on an unknown component or base, or a prefab that extends itself.

Parameters ​

ParameterType
dataPrefabData

Returns ​

this


names() ​

ts
names(): string[];

Defined in: src/ecs/prefab.ts:179

Returns ​

string[]


spawn() ​

ts
spawn<A>(
   world, 
   name, 
   options?
): number;

Defined in: src/ecs/prefab.ts:184

spawnPrefab by name.

Type Parameters ​

Type ParameterDefault type
Aunknown

Parameters ​

ParameterType
worldWorld
namestring
optionsSpawnOptions<A>

Returns ​

number

Released under the MIT License.