@energy8platform/game-engine 0.16.0 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core.cjs.js +62 -1
- package/dist/core.cjs.js.map +1 -1
- package/dist/core.d.ts +33 -2
- package/dist/core.esm.js +63 -3
- package/dist/core.esm.js.map +1 -1
- package/dist/debug.d.ts +1 -1
- package/dist/game-spec.cjs.js +13 -0
- package/dist/game-spec.cjs.js.map +1 -0
- package/dist/game-spec.d.ts +1 -0
- package/dist/game-spec.esm.js +2 -0
- package/dist/game-spec.esm.js.map +1 -0
- package/dist/host.cjs.js +3346 -0
- package/dist/host.cjs.js.map +1 -0
- package/dist/host.d.ts +915 -0
- package/dist/host.esm.js +3337 -0
- package/dist/host.esm.js.map +1 -0
- package/dist/index.cjs.js +13 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +7 -2
- package/dist/index.esm.js +13 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/react.cjs.js.map +1 -1
- package/dist/react.d.ts +6 -1
- package/dist/react.esm.js.map +1 -1
- package/dist/shell.cjs.js +19 -0
- package/dist/shell.cjs.js.map +1 -0
- package/dist/shell.d.ts +1 -0
- package/dist/shell.esm.js +2 -0
- package/dist/shell.esm.js.map +1 -0
- package/dist/slot.cjs.js +998 -0
- package/dist/slot.cjs.js.map +1 -0
- package/dist/slot.d.ts +333 -0
- package/dist/slot.esm.js +985 -0
- package/dist/slot.esm.js.map +1 -0
- package/package.json +26 -1
- package/src/core/GameApplication.ts +16 -1
- package/src/core/index.ts +2 -0
- package/src/debug/index.ts +1 -1
- package/src/game-spec/index.ts +1 -0
- package/src/host/autoplay.ts +78 -0
- package/src/host/balanceGate.ts +46 -0
- package/src/host/buildConfig.ts +28 -0
- package/src/host/createSlotGame.ts +423 -0
- package/src/host/fatalError.ts +104 -0
- package/src/host/freeSpinsCounter.ts +44 -0
- package/src/host/index.ts +18 -0
- package/src/host/playError.ts +64 -0
- package/src/host/preboot.ts +25 -0
- package/src/host/replay.ts +9 -0
- package/src/host/runRound.ts +63 -0
- package/src/host/sceneController.ts +31 -0
- package/src/host/sceneStart.ts +25 -0
- package/src/host/shellConfig.ts +379 -0
- package/src/host/slotPlay.ts +62 -0
- package/src/host/types.ts +71 -0
- package/src/index.ts +1 -1
- package/src/loading/index.ts +2 -0
- package/src/scenes/IntroScene.ts +66 -0
- package/src/shell/index.ts +20 -0
- package/src/slot/anim/CascadeController.ts +102 -0
- package/src/slot/anim/ReelSpinController.ts +81 -0
- package/src/slot/anim/easing-map.ts +14 -0
- package/src/slot/freeSpins/FreeSpinsSession.ts +40 -0
- package/src/slot/grid/AnimatedSymbol.ts +68 -0
- package/src/slot/grid/ReelGrid.ts +92 -0
- package/src/slot/grid/SymbolCell.ts +127 -0
- package/src/slot/grid/SymbolView.ts +13 -0
- package/src/slot/index.ts +21 -0
- package/src/slot/multiplier/MultiplierAccumulator.ts +29 -0
- package/src/slot/overlay/BigWinOverlay.ts +89 -0
- package/src/slot/overlay/CountUpDisplay.ts +56 -0
- package/src/slot/overlay/tiers.ts +29 -0
- package/src/types.ts +3 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slot.cjs.js","sources":["../src/animation/Easing.ts","../src/animation/Tween.ts","../src/animation/SpriteAnimation.ts","../src/slot/grid/AnimatedSymbol.ts","../src/slot/grid/SymbolCell.ts","../src/slot/grid/ReelGrid.ts","../src/slot/anim/easing-map.ts","../src/slot/anim/CascadeController.ts","../src/slot/anim/ReelSpinController.ts","../src/slot/overlay/tiers.ts","../src/slot/overlay/CountUpDisplay.ts","../src/slot/overlay/BigWinOverlay.ts","../src/slot/freeSpins/FreeSpinsSession.ts","../src/slot/multiplier/MultiplierAccumulator.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["Ticker","AnimatedSprite","Texture","Container","Sprite","Graphics","Text","DEFAULT_TIMINGS"],"mappings":"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"}
|
package/dist/slot.d.ts
ADDED
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
import { Container, Texture, TextStyle } from 'pixi.js';
|
|
2
|
+
import { SlotSpinResultBase } from '@energy8platform/platform-core/slot-result';
|
|
3
|
+
|
|
4
|
+
/** A symbol's visual. Any Container; optionally implements the lifecycle the cell drives. */
|
|
5
|
+
interface SymbolView extends Container {
|
|
6
|
+
playIdle?(): void;
|
|
7
|
+
playWin?(): Promise<void>;
|
|
8
|
+
showStatic?(): void;
|
|
9
|
+
/** Resize the symbol to the given cell size in pixels. */
|
|
10
|
+
resize?(size: number): void;
|
|
11
|
+
}
|
|
12
|
+
/** Game-supplied factory: build the view for a symbol id (sprite / layered sprites / Spine / composite). */
|
|
13
|
+
type SymbolResolver = (symbolId: string) => SymbolView | null;
|
|
14
|
+
|
|
15
|
+
interface SymbolTextures {
|
|
16
|
+
base: Texture;
|
|
17
|
+
idle?: Texture[];
|
|
18
|
+
win?: Texture[];
|
|
19
|
+
}
|
|
20
|
+
interface AnimatedSymbolConfig {
|
|
21
|
+
textures: SymbolTextures;
|
|
22
|
+
size: number;
|
|
23
|
+
fps?: number;
|
|
24
|
+
}
|
|
25
|
+
/** Built-in SymbolView: a static base sprite with optional idle/win spritesheet frames. */
|
|
26
|
+
declare class AnimatedSymbol extends Container implements SymbolView {
|
|
27
|
+
private _base;
|
|
28
|
+
private _anim;
|
|
29
|
+
private _textures;
|
|
30
|
+
private _size;
|
|
31
|
+
private _fps;
|
|
32
|
+
constructor(config: AnimatedSymbolConfig);
|
|
33
|
+
setTextures(t: SymbolTextures): void;
|
|
34
|
+
resize(size: number): void;
|
|
35
|
+
showStatic(): void;
|
|
36
|
+
playIdle(): void;
|
|
37
|
+
playWin(): Promise<void>;
|
|
38
|
+
private _swap;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
interface CellFrameStyle {
|
|
42
|
+
radius?: number;
|
|
43
|
+
idle?: {
|
|
44
|
+
color: number;
|
|
45
|
+
alpha: number;
|
|
46
|
+
};
|
|
47
|
+
winning?: {
|
|
48
|
+
color: number;
|
|
49
|
+
alpha: number;
|
|
50
|
+
};
|
|
51
|
+
removed?: {
|
|
52
|
+
color: number;
|
|
53
|
+
alpha: number;
|
|
54
|
+
};
|
|
55
|
+
fresh?: {
|
|
56
|
+
color: number;
|
|
57
|
+
alpha: number;
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
interface CellData {
|
|
61
|
+
symbol: string | null;
|
|
62
|
+
multiplier?: number;
|
|
63
|
+
bonus?: number;
|
|
64
|
+
sticky?: {
|
|
65
|
+
remaining: number;
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
interface CellState {
|
|
69
|
+
winning?: boolean;
|
|
70
|
+
removed?: boolean;
|
|
71
|
+
fresh?: boolean;
|
|
72
|
+
}
|
|
73
|
+
interface SymbolCellConfig {
|
|
74
|
+
size: number;
|
|
75
|
+
resolve: SymbolResolver;
|
|
76
|
+
frameStyle?: CellFrameStyle;
|
|
77
|
+
}
|
|
78
|
+
declare class SymbolCell extends Container {
|
|
79
|
+
readonly __uiComponent: true;
|
|
80
|
+
private _size;
|
|
81
|
+
private _resolve;
|
|
82
|
+
private _style;
|
|
83
|
+
private _frame;
|
|
84
|
+
private _view;
|
|
85
|
+
private _badges;
|
|
86
|
+
private _multBadge;
|
|
87
|
+
private _bonusBadge;
|
|
88
|
+
/** Last applied state key — exposed for tests/inspection. */
|
|
89
|
+
frameStyleKey: 'idle' | 'winning' | 'removed' | 'fresh';
|
|
90
|
+
constructor(config: SymbolCellConfig);
|
|
91
|
+
get view(): SymbolView | null;
|
|
92
|
+
setData(data: CellData): void;
|
|
93
|
+
setState(state: CellState): void;
|
|
94
|
+
playWin(): Promise<void>;
|
|
95
|
+
playIdle(): void;
|
|
96
|
+
hasBadge(kind: 'multiplier' | 'bonus'): boolean;
|
|
97
|
+
private _drawFrame;
|
|
98
|
+
private _setMultiplier;
|
|
99
|
+
private _setBonus;
|
|
100
|
+
private _badge;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
interface DecorationConfig {
|
|
104
|
+
texture?: Texture;
|
|
105
|
+
padding?: number;
|
|
106
|
+
}
|
|
107
|
+
interface ReelGridConfig {
|
|
108
|
+
cols: number;
|
|
109
|
+
rows: number;
|
|
110
|
+
cellSize: number;
|
|
111
|
+
gap?: number;
|
|
112
|
+
resolve: SymbolResolver;
|
|
113
|
+
frameStyle?: CellFrameStyle;
|
|
114
|
+
decoration?: DecorationConfig;
|
|
115
|
+
mask?: boolean;
|
|
116
|
+
}
|
|
117
|
+
declare class ReelGrid extends Container {
|
|
118
|
+
readonly __uiComponent: true;
|
|
119
|
+
private _cols;
|
|
120
|
+
private _rows;
|
|
121
|
+
private _cellSize;
|
|
122
|
+
private _gap;
|
|
123
|
+
private _cells;
|
|
124
|
+
private _cellLayer;
|
|
125
|
+
constructor(config: ReelGridConfig);
|
|
126
|
+
get cols(): number;
|
|
127
|
+
get rows(): number;
|
|
128
|
+
cellPosition(col: number, row: number): {
|
|
129
|
+
x: number;
|
|
130
|
+
y: number;
|
|
131
|
+
};
|
|
132
|
+
getCell(col: number, row: number): SymbolCell;
|
|
133
|
+
setGrid(cells: CellData[][]): void;
|
|
134
|
+
resize(cellSize: number): void;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
interface CascadeStepData {
|
|
138
|
+
winningCells: {
|
|
139
|
+
col: number;
|
|
140
|
+
row: number;
|
|
141
|
+
}[];
|
|
142
|
+
removedCells: {
|
|
143
|
+
col: number;
|
|
144
|
+
row: number;
|
|
145
|
+
}[];
|
|
146
|
+
newCells: {
|
|
147
|
+
col: number;
|
|
148
|
+
row: number;
|
|
149
|
+
symbol: string;
|
|
150
|
+
}[];
|
|
151
|
+
settledGrid: CellData[][];
|
|
152
|
+
}
|
|
153
|
+
interface CascadeTimings {
|
|
154
|
+
reveal: number;
|
|
155
|
+
highlight: number;
|
|
156
|
+
remove: number;
|
|
157
|
+
drop: number;
|
|
158
|
+
refill: number;
|
|
159
|
+
wait: number;
|
|
160
|
+
}
|
|
161
|
+
interface CascadeAnim {
|
|
162
|
+
col: number;
|
|
163
|
+
row: number;
|
|
164
|
+
phase: 'reveal' | 'highlight' | 'remove' | 'drop' | 'refill';
|
|
165
|
+
from?: {
|
|
166
|
+
x: number;
|
|
167
|
+
y: number;
|
|
168
|
+
};
|
|
169
|
+
to?: {
|
|
170
|
+
x: number;
|
|
171
|
+
y: number;
|
|
172
|
+
};
|
|
173
|
+
scale?: number;
|
|
174
|
+
alpha?: number;
|
|
175
|
+
duration: number;
|
|
176
|
+
easing?: string;
|
|
177
|
+
delay?: number;
|
|
178
|
+
}
|
|
179
|
+
declare class CascadeController {
|
|
180
|
+
private _grid;
|
|
181
|
+
private _t;
|
|
182
|
+
private _killed;
|
|
183
|
+
constructor(grid: ReelGrid, timings?: Partial<CascadeTimings>);
|
|
184
|
+
/** PURE: ordered animation descriptors for a cascade step. */
|
|
185
|
+
plan(step: CascadeStepData, opts?: {
|
|
186
|
+
turbo?: boolean;
|
|
187
|
+
}): CascadeAnim[];
|
|
188
|
+
/** Execute the plan via Tween. Not unit-tested (Ticker doesn't tick in node). */
|
|
189
|
+
run(step: CascadeStepData, opts?: {
|
|
190
|
+
turbo?: boolean;
|
|
191
|
+
}): Promise<void>;
|
|
192
|
+
private _killOwnTweens;
|
|
193
|
+
skip(): void;
|
|
194
|
+
kill(): void;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
interface ReelSpinData {
|
|
198
|
+
targetGrid: CellData[][];
|
|
199
|
+
strip?: (reel: number) => string[];
|
|
200
|
+
}
|
|
201
|
+
interface ReelSpinTimings {
|
|
202
|
+
spinUp: number;
|
|
203
|
+
hold: number;
|
|
204
|
+
stopStagger: number;
|
|
205
|
+
settle: number;
|
|
206
|
+
}
|
|
207
|
+
interface ReelStopPlan {
|
|
208
|
+
reel: number;
|
|
209
|
+
stopTime: number;
|
|
210
|
+
landing: CellData[];
|
|
211
|
+
settle: {
|
|
212
|
+
amp: number;
|
|
213
|
+
ms: number;
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
declare class ReelSpinController {
|
|
217
|
+
private _grid;
|
|
218
|
+
private _t;
|
|
219
|
+
private _killed;
|
|
220
|
+
constructor(grid: ReelGrid, timings?: Partial<ReelSpinTimings>);
|
|
221
|
+
/** PURE: per-reel stop timing + landing window. No Pixi mutation. */
|
|
222
|
+
plan(data: ReelSpinData, opts?: {
|
|
223
|
+
turbo?: boolean;
|
|
224
|
+
}): ReelStopPlan[];
|
|
225
|
+
/** Execute the spin: scroll each reel, decelerate, land on target, settle-bounce. Not unit-tested. */
|
|
226
|
+
run(data: ReelSpinData, opts?: {
|
|
227
|
+
turbo?: boolean;
|
|
228
|
+
}): Promise<void>;
|
|
229
|
+
private _killOwnTweens;
|
|
230
|
+
skip(): void;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
interface WinTier {
|
|
234
|
+
id: string;
|
|
235
|
+
minMultiplier: number;
|
|
236
|
+
title: string;
|
|
237
|
+
accentColor: number;
|
|
238
|
+
bannerTexture?: Texture;
|
|
239
|
+
}
|
|
240
|
+
/** Highest tier whose minMultiplier <= win/bet, or null if below the lowest. */
|
|
241
|
+
declare function pickTier(tiers: WinTier[], win: number, bet: number): WinTier | null;
|
|
242
|
+
/** Index into `tiers` for the running value (or -1 below the lowest tier). */
|
|
243
|
+
declare function tierIndexAtValue(tiers: WinTier[], runningValue: number, bet: number): number;
|
|
244
|
+
|
|
245
|
+
interface CountUpConfig {
|
|
246
|
+
format: (v: number) => string;
|
|
247
|
+
style?: Partial<TextStyle>;
|
|
248
|
+
}
|
|
249
|
+
/** PURE eased interpolation 0→target over duration (ms). Clamped to [0, target]. */
|
|
250
|
+
declare function valueAt(elapsed: number, target: number, duration: number): number;
|
|
251
|
+
declare class CountUpDisplay extends Container {
|
|
252
|
+
readonly __uiComponent: true;
|
|
253
|
+
private _text;
|
|
254
|
+
private _format;
|
|
255
|
+
private _value;
|
|
256
|
+
constructor(config: CountUpConfig);
|
|
257
|
+
get text(): string;
|
|
258
|
+
setValue(v: number): void;
|
|
259
|
+
/** Swap the value formatter and immediately re-render the current value. */
|
|
260
|
+
setFormat(format: (v: number) => string): void;
|
|
261
|
+
/** Animate the value to target over duration; fires onTier on each tier-index increase. */
|
|
262
|
+
countTo(target: number, duration: number, onTier?: (idx: number) => void): Promise<void>;
|
|
263
|
+
skip(): void;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
interface BigWinOverlayConfig {
|
|
267
|
+
tiers: WinTier[];
|
|
268
|
+
formatMoney: (v: number) => string;
|
|
269
|
+
countUpDuration?: (win: number) => number;
|
|
270
|
+
particleCount?: number;
|
|
271
|
+
width: number;
|
|
272
|
+
height: number;
|
|
273
|
+
}
|
|
274
|
+
declare class BigWinOverlay extends Container {
|
|
275
|
+
readonly __uiComponent: true;
|
|
276
|
+
private _cfg;
|
|
277
|
+
private _dim;
|
|
278
|
+
private _banner;
|
|
279
|
+
private _title;
|
|
280
|
+
private _count;
|
|
281
|
+
constructor(config: BigWinOverlayConfig);
|
|
282
|
+
/** Pure helper (testable): the tier title for a given win/bet, or null below the lowest tier. */
|
|
283
|
+
tierTitleFor(win: number, bet: number): string | null;
|
|
284
|
+
resize(width: number, height: number): void;
|
|
285
|
+
show(win: number, bet: number, format?: (v: number) => string): Promise<void>;
|
|
286
|
+
skip(): void;
|
|
287
|
+
hide(): void;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
interface FreeSpinsSessionConfig {
|
|
291
|
+
initialSpins: number;
|
|
292
|
+
/** Optional: extra spins to award from a result (retrigger). Default: none. */
|
|
293
|
+
retrigger?: (result: SlotSpinResultBase) => number;
|
|
294
|
+
/** Optional hard exit (e.g. max-win reached). */
|
|
295
|
+
isMaxWin?: () => boolean;
|
|
296
|
+
}
|
|
297
|
+
/** Headless free-spins state machine. The scene drives it; rendering/HUD reflect it. */
|
|
298
|
+
declare class FreeSpinsSession {
|
|
299
|
+
remaining: number;
|
|
300
|
+
total: number;
|
|
301
|
+
totalWin: number;
|
|
302
|
+
private readonly cfg;
|
|
303
|
+
constructor(cfg: FreeSpinsSessionConfig);
|
|
304
|
+
award(extra: number): void;
|
|
305
|
+
/** Convenience: award using the configured retrigger rule. */
|
|
306
|
+
applyRetrigger(result: SlotSpinResultBase): void;
|
|
307
|
+
addWin(amount: number): void;
|
|
308
|
+
consume(): void;
|
|
309
|
+
get isComplete(): boolean;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
/** The boundary at which a collected multiplier resets. */
|
|
313
|
+
type CarryPolicy = 'spin' | 'cascade' | 'session';
|
|
314
|
+
/**
|
|
315
|
+
* Headless sticky/collector multiplier — the unified abstraction behind
|
|
316
|
+
* kitsunebi / recipe / orb / stage multipliers. reset(boundary) clears the
|
|
317
|
+
* value only when the boundary is at or above the configured policy scope.
|
|
318
|
+
*/
|
|
319
|
+
declare class MultiplierAccumulator {
|
|
320
|
+
value: number;
|
|
321
|
+
private readonly base;
|
|
322
|
+
private readonly policy;
|
|
323
|
+
constructor(cfg: {
|
|
324
|
+
policy: CarryPolicy;
|
|
325
|
+
base?: number;
|
|
326
|
+
});
|
|
327
|
+
add(delta: number): void;
|
|
328
|
+
set(value: number): void;
|
|
329
|
+
reset(boundary: CarryPolicy): void;
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
export { AnimatedSymbol, BigWinOverlay, CascadeController, CountUpDisplay, FreeSpinsSession, MultiplierAccumulator, ReelGrid, ReelSpinController, SymbolCell, pickTier, tierIndexAtValue, valueAt };
|
|
333
|
+
export type { AnimatedSymbolConfig, BigWinOverlayConfig, CarryPolicy, CascadeAnim, CascadeStepData, CascadeTimings, CellData, CellFrameStyle, CellState, CountUpConfig, DecorationConfig, FreeSpinsSessionConfig, ReelGridConfig, ReelSpinData, ReelSpinTimings, ReelStopPlan, SymbolCellConfig, SymbolResolver, SymbolTextures, SymbolView, WinTier };
|