@omnitronix/happy-panda-game-engine 0.2.7 → 0.3.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.
@@ -10,6 +10,7 @@
10
10
  * - Full RNG outcome reporting for compliance
11
11
  */
12
12
  import { DebugIntrospectable, DebugCommandDefinition } from '@omnitronix/game-engine-contract';
13
+ import { SlotGameHandler, BetConfig as SdkBetConfig, SlotState as SdkSlotState, SpinResult as SdkSpinResult, BonusTrigger as SdkBonusTrigger, BonusResult as SdkBonusResult, GameTypeConfig } from '@omnitronix/game-engine-sdk';
13
14
  import { PublicState, PrivateState } from './domain/types';
14
15
  import { GameEngine, GameEngineInfo, GameActionCommand, CommandProcessingResult, HappyPandaV1GameEngineConfig, RngOutcome, RngOutcomeRecord } from './game-engine.interface';
15
16
  export type { GameEngine, GameEngineInfo, GameActionCommand, CommandProcessingResult, HappyPandaV1GameEngineConfig, RngOutcome, RngOutcomeRecord, };
@@ -19,7 +20,14 @@ export type { GameEngine, GameEngineInfo, GameActionCommand, CommandProcessingRe
19
20
  * Implements the standard GameEngine interface for use with game-engine-service.
20
21
  * Uses proper RNG infrastructure with full audit trail support.
21
22
  */
22
- export declare class HappyPandaV1GameEngine implements GameEngine<PublicState, PrivateState, unknown>, DebugIntrospectable {
23
+ export declare class HappyPandaV1GameEngine extends SlotGameHandler implements GameEngine<PublicState, PrivateState, unknown>, DebugIntrospectable {
24
+ /**
25
+ * SDK GameTypeConfig declaration.
26
+ *
27
+ * Declares this engine as a slot game with immediate result delivery
28
+ * and token-encoded state management.
29
+ */
30
+ static readonly gameTypeConfig: GameTypeConfig;
23
31
  private readonly gameCode;
24
32
  private readonly version;
25
33
  private readonly rtp;
@@ -30,6 +38,21 @@ export declare class HappyPandaV1GameEngine implements GameEngine<PublicState, P
30
38
  private readonly rngAdapter;
31
39
  private readonly engine;
32
40
  constructor(config?: HappyPandaV1GameEngineConfig);
41
+ /**
42
+ * Implements SlotGameHandler.spin().
43
+ *
44
+ * Delegates to the internal HappyPandaEngine SPIN command and maps
45
+ * the result to the SDK SpinResult contract.
46
+ */
47
+ spin(bet: SdkBetConfig, state: SdkSlotState): Promise<SdkSpinResult>;
48
+ /**
49
+ * Implements SlotGameHandler.startBonus().
50
+ *
51
+ * Delegates to the internal HappyPandaEngine by executing all bonus
52
+ * spins in a loop (precomputed-queue strategy) and returns a
53
+ * BonusResult with attached delivery strategy metadata.
54
+ */
55
+ startBonus(trigger: SdkBonusTrigger, state: SdkSlotState): Promise<SdkBonusResult>;
33
56
  getGameEngineInfo(): GameEngineInfo;
34
57
  getDebugCommandDefinitions(): DebugCommandDefinition[];
35
58
  processCommand(publicState: PublicState | null, privateState: PrivateState | null, command: GameActionCommand): Promise<CommandProcessingResult<PublicState, PrivateState, unknown>>;
@@ -1 +1 @@
1
- {"version":3,"file":"happy-panda-v1.game-engine.d.ts","sourceRoot":"","sources":["../src/happy-panda-v1.game-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAEL,mBAAmB,EACnB,sBAAsB,EACvB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAGL,WAAW,EACX,YAAY,EAKb,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EACL,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,4BAA4B,EAC5B,UAAU,EACV,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EACV,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,4BAA4B,EAC5B,UAAU,EACV,gBAAgB,GACjB,CAAC;AAuCF;;;;;GAKG;AACH,qBAAa,sBACX,YAAW,UAAU,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,mBAAmB;IAE9E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IAEzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;gBAE9B,MAAM,GAAE,4BAAiC;IAc9C,iBAAiB,IAAI,cAAc;IAWnC,0BAA0B,IAAI,sBAAsB,EAAE;IAIhD,cAAc,CACzB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,YAAY,EAAE,YAAY,GAAG,IAAI,EACjC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,uBAAuB,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;CA2WxE"}
1
+ {"version":3,"file":"happy-panda-v1.game-engine.d.ts","sourceRoot":"","sources":["../src/happy-panda-v1.game-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAEL,mBAAmB,EACnB,sBAAsB,EACvB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,eAAe,EACf,SAAS,IAAI,YAAY,EACzB,SAAS,IAAI,YAAY,EACzB,UAAU,IAAI,aAAa,EAC3B,YAAY,IAAI,eAAe,EAC/B,WAAW,IAAI,cAAc,EAC7B,cAAc,EAGf,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAGL,WAAW,EACX,YAAY,EAKb,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EACL,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,4BAA4B,EAC5B,UAAU,EACV,gBAAgB,EACjB,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EACV,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,4BAA4B,EAC5B,UAAU,EACV,gBAAgB,GACjB,CAAC;AAuCF;;;;;GAKG;AACH,qBAAa,sBACX,SAAQ,eACR,YAAW,UAAU,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,mBAAmB;IAE9E;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAW5C;IAEF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAU;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IAEzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;gBAE9B,MAAM,GAAE,4BAAiC;IAkBrD;;;;;OAKG;IACG,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;IA4C1E;;;;;;OAMG;IACG,UAAU,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAsEjF,iBAAiB,IAAI,cAAc;IAWnC,0BAA0B,IAAI,sBAAsB,EAAE;IAIhD,cAAc,CACzB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,YAAY,EAAE,YAAY,GAAG,IAAI,EACjC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,uBAAuB,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;CAkXxE"}
@@ -12,6 +12,7 @@
12
12
  */
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.HappyPandaV1GameEngine = void 0;
15
+ const game_engine_sdk_1 = require("@omnitronix/game-engine-sdk");
15
16
  const debug_command_definitions_1 = require("./debug/debug-command-definitions");
16
17
  const happy_panda_engine_1 = require("./engine/happy-panda-engine");
17
18
  const types_1 = require("./domain/types");
@@ -52,8 +53,9 @@ class RngServiceAdapter {
52
53
  * Implements the standard GameEngine interface for use with game-engine-service.
53
54
  * Uses proper RNG infrastructure with full audit trail support.
54
55
  */
55
- class HappyPandaV1GameEngine {
56
+ class HappyPandaV1GameEngine extends game_engine_sdk_1.SlotGameHandler {
56
57
  constructor(config = {}) {
58
+ super();
57
59
  this.gameCode = 'happy-panda';
58
60
  this.version = packageJson.version;
59
61
  this.rtp = 96.05;
@@ -69,6 +71,108 @@ class HappyPandaV1GameEngine {
69
71
  // Initialize engine with RNG adapter
70
72
  this.engine = new happy_panda_engine_1.HappyPandaEngine(this.rngAdapter);
71
73
  }
74
+ // ── SlotGameHandler abstract method implementations ──────────────
75
+ /**
76
+ * Implements SlotGameHandler.spin().
77
+ *
78
+ * Delegates to the internal HappyPandaEngine SPIN command and maps
79
+ * the result to the SDK SpinResult contract.
80
+ */
81
+ async spin(bet, state) {
82
+ const commandId = `spin-${Date.now()}`;
83
+ this.rngService.registerCommand(commandId);
84
+ this.rngAdapter.setCommandId(commandId);
85
+ try {
86
+ const lines = bet.lines ?? 8;
87
+ const betStake = bet.amount / lines;
88
+ const publicState = {
89
+ ...(state.currentRound ?? {}),
90
+ betStake,
91
+ betGame: bet.amount,
92
+ balance: state.balance,
93
+ };
94
+ const sessionState = {
95
+ sessionId: commandId,
96
+ publicState,
97
+ privateState: state.currentRound?.privateState ?? {},
98
+ createdAt: new Date(),
99
+ updatedAt: new Date(),
100
+ };
101
+ const result = await this.engine.handleCommand({ command: types_1.CommandType.SPIN, sessionId: commandId }, sessionState);
102
+ const spinResponse = result.response;
103
+ return {
104
+ outcome: spinResponse,
105
+ winAmount: spinResponse.playerWinning,
106
+ nextState: {
107
+ balance: state.balance - bet.amount + spinResponse.playerWinning,
108
+ currentRound: { ...result.state.publicState, privateState: result.state.privateState },
109
+ },
110
+ };
111
+ }
112
+ finally {
113
+ this.rngService.removeCommand(commandId);
114
+ }
115
+ }
116
+ /**
117
+ * Implements SlotGameHandler.startBonus().
118
+ *
119
+ * Delegates to the internal HappyPandaEngine by executing all bonus
120
+ * spins in a loop (precomputed-queue strategy) and returns a
121
+ * BonusResult with attached delivery strategy metadata.
122
+ */
123
+ async startBonus(trigger, state) {
124
+ const commandId = `bonus-${Date.now()}`;
125
+ this.rngService.registerCommand(commandId);
126
+ this.rngAdapter.setCommandId(commandId);
127
+ try {
128
+ const roundData = state.currentRound;
129
+ const publicState = roundData?.publicState
130
+ ?? roundData
131
+ ?? {};
132
+ const privateState = roundData?.privateState
133
+ ?? {};
134
+ const sessionState = {
135
+ sessionId: commandId,
136
+ publicState,
137
+ privateState,
138
+ createdAt: new Date(),
139
+ updatedAt: new Date(),
140
+ };
141
+ const spinResults = [];
142
+ let currentState = sessionState;
143
+ let totalWin = 0;
144
+ let iteration = 0;
145
+ while (currentState.publicState.currentSpinType !== happy_panda_config_1.SpinType.BASE_GAME_SPIN ||
146
+ currentState.publicState.spinsRemaining > 0 ||
147
+ currentState.publicState.hasPendingBonus) {
148
+ iteration++;
149
+ if (iteration > 100)
150
+ break;
151
+ const spinResult = await this.engine.handleCommand({ command: types_1.CommandType.SPIN, sessionId: commandId }, currentState);
152
+ const response = spinResult.response;
153
+ totalWin += response.playerWinning;
154
+ spinResults.push({
155
+ outcome: response,
156
+ winAmount: response.playerWinning,
157
+ nextState: {
158
+ balance: state.balance + totalWin,
159
+ currentRound: { ...spinResult.state.publicState, privateState: spinResult.state.privateState },
160
+ },
161
+ });
162
+ currentState = spinResult.state;
163
+ if (currentState.publicState.currentSpinType === happy_panda_config_1.SpinType.BASE_GAME_SPIN &&
164
+ currentState.publicState.spinsRemaining === 0 &&
165
+ !currentState.publicState.hasPendingBonus) {
166
+ break;
167
+ }
168
+ }
169
+ return { spins: spinResults, totalWin };
170
+ }
171
+ finally {
172
+ this.rngService.removeCommand(commandId);
173
+ }
174
+ }
175
+ // ── GameEngine + DebugIntrospectable interface ──────────────────
72
176
  getGameEngineInfo() {
73
177
  return {
74
178
  gameCode: this.gameCode,
@@ -259,6 +363,11 @@ class HappyPandaV1GameEngine {
259
363
  }
260
364
  const rngOutcome = this.rngService.getRngOutcomeForCommand(command.id);
261
365
  this.rngService.removeCommand(command.id);
366
+ // Declare delivery strategy for the platform (precomputed-queue for slots)
367
+ const deliveryStrategy = {
368
+ type: 'precomputed-queue',
369
+ getResultsArray: () => bonusResults,
370
+ };
262
371
  return {
263
372
  success: true,
264
373
  publicState: currentState.publicState,
@@ -271,6 +380,7 @@ class HappyPandaV1GameEngine {
271
380
  betAmount: publicState.betGame,
272
381
  },
273
382
  totalBonusWin,
383
+ deliveryStrategy,
274
384
  publicState: currentState.publicState,
275
385
  privateState: currentState.privateState,
276
386
  },
@@ -393,4 +503,22 @@ class HappyPandaV1GameEngine {
393
503
  }
394
504
  }
395
505
  exports.HappyPandaV1GameEngine = HappyPandaV1GameEngine;
506
+ /**
507
+ * SDK GameTypeConfig declaration.
508
+ *
509
+ * Declares this engine as a slot game with immediate result delivery
510
+ * and token-encoded state management.
511
+ */
512
+ HappyPandaV1GameEngine.gameTypeConfig = {
513
+ gameType: 'slot',
514
+ resultDelivery: { mode: 'immediate' },
515
+ stateStrategy: {
516
+ type: 'token-encoded',
517
+ tokenConfig: {
518
+ algorithm: 'aes-256-gcm',
519
+ keyDerivation: 'hkdf',
520
+ tokenTtlSeconds: 3600,
521
+ },
522
+ },
523
+ };
396
524
  //# sourceMappingURL=happy-panda-v1.game-engine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"happy-panda-v1.game-engine.js","sourceRoot":"","sources":["../src/happy-panda-v1.game-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"happy-panda-v1.game-engine.js","sourceRoot":"","sources":["../src/happy-panda-v1.game-engine.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,6 +6,7 @@
6
6
  * @packageDocumentation
7
7
  */
8
8
  export { HappyPandaV1GameEngine } from './happy-panda-v1.game-engine';
9
+ export type { GameTypeConfig, BonusResultDeliveryStrategy, BonusRoundResponse } from '@omnitronix/game-engine-sdk';
9
10
  export type { GameEngine, GameEngineInfo, GameActionCommand, CommandProcessingResult, RngOutcome, RngOutcomeRecord, ILogger, HappyPandaV1GameEngineConfig, } from './game-engine.interface';
10
11
  export { GameType, GameRoundType, GameRoundStatus, CommandType as ContractCommandType, DEBUG_COMMAND_TYPES, isDebugCommand, ConsoleLogger, DebugIntrospectable, DebugCommandDefinition, isDebugIntrospectable, } from '@omnitronix/game-engine-contract';
11
12
  export { HAPPY_PANDA_BONUS_TYPES, HAPPY_PANDA_DEBUG_DEFINITIONS, getDebugCommandDefinitions, DebugSecurityError, } from './debug/debug-command-definitions';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAGtE,YAAY,EACV,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,4BAA4B,GAC7B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,QAAQ,EACR,aAAa,EACb,eAAe,EACf,WAAW,IAAI,mBAAmB,EAClC,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG5C,OAAO,EACL,MAAM,EACN,QAAQ,EACR,aAAa,EACb,IAAI,EACJ,WAAW,EACX,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,OAAO,EACP,UAAU,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,cAAc,EACd,YAAY,EACZ,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACxG,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAGrC,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAGtE,YAAY,EAAE,cAAc,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAGnH,YAAY,EACV,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,uBAAuB,EACvB,UAAU,EACV,gBAAgB,EAChB,OAAO,EACP,4BAA4B,GAC7B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,QAAQ,EACR,aAAa,EACb,eAAe,EACf,WAAW,IAAI,mBAAmB,EAClC,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG5C,OAAO,EACL,MAAM,EACN,QAAQ,EACR,aAAa,EACb,IAAI,EACJ,WAAW,EACX,mBAAmB,GACpB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,OAAO,EACP,UAAU,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,cAAc,EACd,YAAY,EACZ,aAAa,EACb,SAAS,EACT,WAAW,EACX,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACxG,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAGrC,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,uDAAuD;AACvD,2EAAsE;AAA7D,oIAAA,sBAAsB,OAAA;AAc/B,2CAA2C;AAC3C,yEAW0C;AAVxC,gHAAA,QAAQ,OAAA;AACR,qHAAA,aAAa,OAAA;AACb,uHAAA,eAAe,OAAA;AACf,2HAAA,WAAW,OAAuB;AAClC,2HAAA,mBAAmB,OAAA;AACnB,sHAAA,cAAc,OAAA;AACd,qHAAA,aAAa,OAAA;AAGb,6HAAA,qBAAqB,OAAA;AAGvB,4BAA4B;AAC5B,+EAK2C;AAJzC,oIAAA,uBAAuB,OAAA;AACvB,0IAAA,6BAA6B,OAAA;AAC7B,uIAAA,0BAA0B,OAAA;AAC1B,+HAAA,kBAAkB,OAAA;AAGpB,cAAc;AACd,mCAA4C;AAAnC,0GAAA,gBAAgB,OAAA;AAEzB,gBAAgB;AAChB,mCAOkB;AANhB,gGAAA,MAAM,OAAA;AACN,kGAAA,QAAQ,OAAA;AACR,uGAAA,aAAa,OAAA;AACb,8FAAA,IAAI,OAAA;AACJ,qGAAA,WAAW,OAAA;AACX,6GAAA,mBAAmB,OAAA;AAGrB,eAAe;AACf,mCAwBkB;AAbhB,uGAAA,aAAa,OAAA;AAQb,qGAAA,WAAW,OAAA;AAOb,yCAAyC;AACzC,6CAAwG;AAA/F,wGAAA,YAAY,OAAA;AAAE,4GAAA,gBAAgB,OAAA;AAAE,2GAAA,eAAe,OAAA;AAAE,+GAAA,mBAAmB,OAAA;AAC7E,6BAAqC;AAA5B,mGAAA,YAAY,OAAA;AAQrB,2DAAwD;AAA/C,kHAAA,cAAc,OAAA;AACvB,+DAA6E;AAApE,sHAAA,gBAAgB,OAAA;AACzB,iDAA+C;AAAtC,yGAAA,UAAU,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,uDAAuD;AACvD,2EAAsE;AAA7D,oIAAA,sBAAsB,OAAA;AAiB/B,2CAA2C;AAC3C,yEAW0C;AAVxC,gHAAA,QAAQ,OAAA;AACR,qHAAA,aAAa,OAAA;AACb,uHAAA,eAAe,OAAA;AACf,2HAAA,WAAW,OAAuB;AAClC,2HAAA,mBAAmB,OAAA;AACnB,sHAAA,cAAc,OAAA;AACd,qHAAA,aAAa,OAAA;AAGb,6HAAA,qBAAqB,OAAA;AAGvB,4BAA4B;AAC5B,+EAK2C;AAJzC,oIAAA,uBAAuB,OAAA;AACvB,0IAAA,6BAA6B,OAAA;AAC7B,uIAAA,0BAA0B,OAAA;AAC1B,+HAAA,kBAAkB,OAAA;AAGpB,cAAc;AACd,mCAA4C;AAAnC,0GAAA,gBAAgB,OAAA;AAEzB,gBAAgB;AAChB,mCAOkB;AANhB,gGAAA,MAAM,OAAA;AACN,kGAAA,QAAQ,OAAA;AACR,uGAAA,aAAa,OAAA;AACb,8FAAA,IAAI,OAAA;AACJ,qGAAA,WAAW,OAAA;AACX,6GAAA,mBAAmB,OAAA;AAGrB,eAAe;AACf,mCAwBkB;AAbhB,uGAAA,aAAa,OAAA;AAQb,qGAAA,WAAW,OAAA;AAOb,yCAAyC;AACzC,6CAAwG;AAA/F,wGAAA,YAAY,OAAA;AAAE,4GAAA,gBAAgB,OAAA;AAAE,2GAAA,eAAe,OAAA;AAAE,+GAAA,mBAAmB,OAAA;AAC7E,6BAAqC;AAA5B,mGAAA,YAAY,OAAA;AAQrB,2DAAwD;AAA/C,kHAAA,cAAc,OAAA;AACvB,+DAA6E;AAApE,sHAAA,gBAAgB,OAAA;AACzB,iDAA+C;AAAtC,yGAAA,UAAU,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omnitronix/happy-panda-game-engine",
3
- "version": "0.2.7",
3
+ "version": "0.3.0",
4
4
  "description": "Happy Panda Game Engine",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,10 +19,11 @@
19
19
  "license": "UNLICENSED",
20
20
  "dependencies": {
21
21
  "@omnitronix/game-engine-contract": "^1.3.2",
22
+ "@omnitronix/game-engine-sdk": "^2.2.1",
22
23
  "@omnitronix/rng-client-core": "^1.0.9",
23
24
  "class-transformer": "^0.5.1",
24
25
  "class-validator": "^0.14.1",
25
- "reflect-metadata": "^0.1.13",
26
+ "reflect-metadata": "^0.2.2",
26
27
  "socket.io-client": "^4.8.3",
27
28
  "uuid": "^9.0.0",
28
29
  "winston": "^3.17.0"