createEntityFactory
@zylem/game-lib / entity / createEntityFactory
Function: createEntityFactory()
createEntityFactory<
E,O>(template):TemplateFactory<E,O>
Defined in: packages/game-lib/src/lib/entities/entity-factory.ts:73
Create an entity factory from a template entity.
Type Parameters
E
E extends GameEntity<O>
O
O extends GameEntityOptions = GameEntityOptions
Parameters
template
E
The entity to use as a template for cloning
Returns
TemplateFactory<E, O>
Factory object with generate() method
Example
const asteroidTemplate = createSprite({ images: [{ name: 'asteroid', file: asteroidImg }] });
const asteroidFactory = createEntityFactory(asteroidTemplate);
const asteroids = asteroidFactory.generate(10);
asteroids.forEach((asteroid) => {
asteroid.onSetup(({ me }) => {
me.setPosition(Math.random() * 20 - 10, Math.random() * 15 - 7.5, 0);
});
stage.add(asteroid);
});