PhaseFactory
pixi-reels / index / PhaseFactory
Class: PhaseFactory
Defined in: spin/phases/PhaseFactory.ts:23
Factory for creating reel phase instances.
Ships with all four default phases pre-registered. Users can override any phase by registering a custom constructor or factory function. Use registerFactory() when the phase needs extra construction-time config (e.g. cascade drop settings baked in via closure).
Constructors
Constructor
new PhaseFactory(): PhaseFactory;
Defined in: spin/phases/PhaseFactory.ts:26
Returns
PhaseFactory
Methods
create()
create<T>(
name: string,
reel: Reel,
speed: SpeedProfile): T;
Defined in: spin/phases/PhaseFactory.ts:53
Create a phase instance for a reel.
Type Parameters
| Type Parameter | Default type |
|---|---|
T extends ReelPhase<any> | ReelPhase<any> |
Parameters
| Parameter | Type |
|---|---|
name | string |
reel | Reel |
speed | SpeedProfile |
Returns
T
has()
has(name: string): boolean;
Defined in: spin/phases/PhaseFactory.ts:67
Parameters
| Parameter | Type |
|---|---|
name | string |
Returns
boolean
register()
register<T>(name: string, PhaseClass: PhaseConstructor<T>): void;
Defined in: spin/phases/PhaseFactory.ts:34
Register or override a phase type by constructor.
Type Parameters
| Type Parameter |
|---|
T extends ReelPhase<any> |
Parameters
| Parameter | Type |
|---|---|
name | string |
PhaseClass | PhaseConstructor<T> |
Returns
void
registerFactory()
registerFactory<T>(name: string, factory: PhaseCreatorFn<T>): void;
Defined in: spin/phases/PhaseFactory.ts:45
Register or override a phase type by factory function. Use this when the phase needs extra args at construction time.
Type Parameters
| Type Parameter |
|---|
T extends ReelPhase<any> |
Parameters
| Parameter | Type |
|---|---|
name | string |
factory | PhaseCreatorFn<T> |
Returns
void
Example
factory.registerFactory('cascade:dropIn', (reel, speed) => new CascadeDropInPhase(reel, speed, dropConfig));