jp.ms.common.engine 1.0.15 → 1.0.16
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/base/base-game-state.type.d.ts +2 -2
- package/dist/base/base-game-state.type.d.ts.map +1 -1
- package/dist/base/game-master.d.ts +2 -2
- package/dist/base/game-master.d.ts.map +1 -1
- package/dist/base/game-master.js +1 -1
- package/dist/base/game-master.js.map +1 -1
- package/dist/base-rooms/simple-room.d.ts +2 -2
- package/dist/base-rooms/simple-room.d.ts.map +1 -1
- package/dist/base-rooms/simple-room.js.map +1 -1
- package/dist/tests/just-black-jack/domain/black-jack-game-master.d.ts +5 -1
- package/dist/tests/just-black-jack/domain/black-jack-game-master.d.ts.map +1 -1
- package/dist/tests/just-black-jack/domain/black-jack-game-master.js +3 -0
- package/dist/tests/just-black-jack/domain/black-jack-game-master.js.map +1 -1
- package/dist/tests/just-black-jack/tests/black-jack-simple-room.test.js +2 -1
- package/dist/tests/just-black-jack/tests/black-jack-simple-room.test.js.map +1 -1
- package/package.json +1 -1
- package/src/base/base-game-state.type.ts +1 -1
- package/src/base/game-master.ts +3 -3
- package/src/base-rooms/simple-room.ts +2 -2
- package/src/tests/just-black-jack/domain/black-jack-game-master.ts +12 -1
- package/src/tests/just-black-jack/tests/black-jack-simple-room.test.ts +7 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-game-state.type.d.ts","sourceRoot":"","sources":["../../src/base/base-game-state.type.ts"],"names":[],"mappings":"AAAA,MAAM,
|
|
1
|
+
{"version":3,"file":"base-game-state.type.d.ts","sourceRoot":"","sources":["../../src/base/base-game-state.type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACxB"}
|
|
@@ -19,7 +19,7 @@ export declare abstract class GameMaster {
|
|
|
19
19
|
};
|
|
20
20
|
abstract onHandleTurnTimeout(player: GamePlayer): any;
|
|
21
21
|
abstract onHandleRestartTimeout(): any;
|
|
22
|
-
abstract onHandleMove<T
|
|
22
|
+
abstract onHandleMove<T>(player: GamePlayer): T;
|
|
23
23
|
abstract kickPlayer(player: GamePlayer): any;
|
|
24
24
|
abstract startNewRound(): any;
|
|
25
25
|
abstract finishRound(): any;
|
|
@@ -31,7 +31,7 @@ export declare abstract class GameMaster {
|
|
|
31
31
|
getTable(): GameTable;
|
|
32
32
|
enterTheTable<T extends BaseGameStateType>(player: GamePlayer): T;
|
|
33
33
|
exitTheTable<T extends BaseGameStateType>(player: GamePlayer): T;
|
|
34
|
-
watchTheTable
|
|
34
|
+
watchTheTable(player: GamePlayer): GameMaster;
|
|
35
35
|
startFromWhite(): void;
|
|
36
36
|
changePlayerClockwise(): void;
|
|
37
37
|
changePlayerCounterClockwise(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game-master.d.ts","sourceRoot":"","sources":["../../src/base/game-master.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,8BAAsB,UAAU;IAC5B,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAClC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAChC,SAAgB,WAAW,EAAE,qBAAqB,CAAC;IACnD,SAAgB,cAAc,EAAE,kBAAkB,CAAC;IAEnD,SAAS,aAAc,IAAI,EAAE,QAAQ;IAOrC,MAAM,CAAC,YAAY,CAAE,eAAe,EAAE,MAAM,GAAG;QAC3C,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACnB;IAoBD,QAAQ,CAAC,mBAAmB,CAAE,MAAM,EAAE,UAAU;IAEhD,QAAQ,CAAC,sBAAsB;IAE/B,QAAQ,CAAC,YAAY,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"game-master.d.ts","sourceRoot":"","sources":["../../src/base/game-master.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,8BAAsB,UAAU;IAC5B,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAClC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAChC,SAAgB,WAAW,EAAE,qBAAqB,CAAC;IACnD,SAAgB,cAAc,EAAE,kBAAkB,CAAC;IAEnD,SAAS,aAAc,IAAI,EAAE,QAAQ;IAOrC,MAAM,CAAC,YAAY,CAAE,eAAe,EAAE,MAAM,GAAG;QAC3C,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACnB;IAoBD,QAAQ,CAAC,mBAAmB,CAAE,MAAM,EAAE,UAAU;IAEhD,QAAQ,CAAC,sBAAsB;IAE/B,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,GAAG,CAAC;IAE/C,QAAQ,CAAC,UAAU,CAAE,MAAM,EAAE,UAAU;IAEvC,QAAQ,CAAC,aAAa;IAEtB,QAAQ,CAAC,WAAW;IAEpB,QAAQ,CAAC,YAAY;IAErB,QAAQ,CAAC,UAAU,IAAK,iBAAiB,GAAG,IAAI;IAEhD,KAAK;IAIL,YAAY,CAAE,SAAS,EAAE,SAAS,GAAG,IAAI;IAIzC,YAAY,IAAK,SAAS,GAAG,IAAI;IAIjC,QAAQ;IAIR,aAAa,CAAC,CAAC,SAAS,iBAAiB,EAAG,MAAM,EAAE,UAAU,GAAG,CAAC;IAUlE,YAAY,CAAC,CAAC,SAAS,iBAAiB,EAAG,MAAM,EAAE,UAAU,GAAG,CAAC;IAYjE,aAAa,CAAE,MAAM,EAAE,UAAU,GAAG,UAAU;IAM9C,cAAc;IAOd,qBAAqB;IASrB,4BAA4B;IAS5B,eAAe,IAAK,UAAU,GAAG,IAAI;IAIrC,aAAa;IAIb,sBAAsB;IAItB,mBAAmB,CAAE,IAAI,EAAE,MAAM;IAIjC,YAAY,IAAK,iBAAiB;CASrC"}
|
package/dist/base/game-master.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"game-master.js","sourceRoot":"","sources":["../../src/base/game-master.ts"],"names":[],"mappings":";;;AACA,yEAAmE;AACnE,iEAA4D;AAC5D,6CAAyC;AAMzC,MAAsB,UAAU;IAO5B,YAAuB,IAAc;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,IAAI,sBAAS,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,IAAI,gDAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACpG,IAAI,CAAC,cAAc,GAAG,IAAI,yCAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC9G,CAAC;IAED,MAAM,CAAC,YAAY,CAAE,eAAuB;;QAIxC,MAAM,OAAO,GAAG,0BAA0B,CAAC;QAC3C,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAE5C,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,QAAQ,GAAG,iBAAiB,CAAC;YACnC,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAE9C,OAAO;gBACH,MAAM,EAAE,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,mCAAI,EAAE;gBACxB,OAAO,EAAE,GAAG;aACf,CAAC;QACN,CAAC;QAED,OAAO;YACH,MAAM,EAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,CAAC,CAAC,mCAAI,EAAE;YACvB,OAAO,EAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAG,CAAC,CAAC,mCAAI,EAAE;SAC3B,CAAC;IACN,CAAC;IAkBD,KAAK;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED,YAAY,CAAE,SAAoB;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,aAAa,CAA+B,MAAkB;QAC1D,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YACtB,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,EAAO,CAAC;IACpC,CAAC;IAED,YAAY,CAA+B,MAAkB;QACzD,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;aAAM,IAAI,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,EAAO,CAAC;IACpC,CAAC;IAED,aAAa,
|
|
1
|
+
{"version":3,"file":"game-master.js","sourceRoot":"","sources":["../../src/base/game-master.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BaseGameStateType, GamePlayer, GameRoom } from '../base';
|
|
1
|
+
import { BaseGameStateType, GameMaster, GamePlayer, GameRoom } from '../base';
|
|
2
2
|
export declare abstract class SimpleRoom extends GameRoom {
|
|
3
|
-
handleWatchTheTable
|
|
3
|
+
handleWatchTheTable(player: GamePlayer, tableId: string): GameMaster;
|
|
4
4
|
handleEnterTheTable<T extends BaseGameStateType>(player: GamePlayer, tableId: string): T;
|
|
5
5
|
handleExitTheTable<T extends BaseGameStateType>(player: GamePlayer, tableId: string): T;
|
|
6
6
|
handleMoveOnTheTable<T extends BaseGameStateType>(player: GamePlayer, tableId: string): T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple-room.d.ts","sourceRoot":"","sources":["../../src/base-rooms/simple-room.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"simple-room.d.ts","sourceRoot":"","sources":["../../src/base-rooms/simple-room.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE9E,8BAAsB,UAAW,SAAQ,QAAQ;IAC7C,mBAAmB,CAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU;IAIrE,mBAAmB,CAAC,CAAC,SAAS,iBAAiB,EAAG,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;IAIzF,kBAAkB,CAAC,CAAC,SAAS,iBAAiB,EAAG,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;IAIxF,oBAAoB,CAAC,CAAC,SAAS,iBAAiB,EAAG,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;IAI1F,iBAAiB;IAIjB,kBAAkB;CAErB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple-room.js","sourceRoot":"","sources":["../../src/base-rooms/simple-room.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"simple-room.js","sourceRoot":"","sources":["../../src/base-rooms/simple-room.ts"],"names":[],"mappings":";;;AAAA,kCAA8E;AAE9E,MAAsB,UAAW,SAAQ,eAAQ;IAC7C,mBAAmB,CAAE,MAAkB,EAAE,OAAe;;QACpD,OAAO,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,mBAAmB,CAA+B,MAAkB,EAAE,OAAe;;QACjF,OAAO,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,kBAAkB,CAA+B,MAAkB,EAAE,OAAe;;QAChF,OAAO,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;IAED,oBAAoB,CAA+B,MAAkB,EAAE,OAAe;;QAClF,OAAO,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7D,CAAC;IAED,iBAAiB;QACb,sBAAsB;IAC1B,CAAC;IAED,kBAAkB;IAClB,CAAC;CACJ;AAvBD,gCAuBC"}
|
|
@@ -8,6 +8,9 @@ export declare enum BlackJackMoveActionType {
|
|
|
8
8
|
export declare enum BlackJackSeatRole {
|
|
9
9
|
DEALER = "DEALER"
|
|
10
10
|
}
|
|
11
|
+
export interface BlackJackGameStateType extends BaseGameStateType {
|
|
12
|
+
superbit: boolean;
|
|
13
|
+
}
|
|
11
14
|
export declare class BlackJackGameMaster extends CardsGameMaster {
|
|
12
15
|
getGameRoundState(): StandardGameState;
|
|
13
16
|
getPlayers(): Array<BlackJackPlayer>;
|
|
@@ -16,7 +19,8 @@ export declare class BlackJackGameMaster extends CardsGameMaster {
|
|
|
16
19
|
finishRound(): void;
|
|
17
20
|
getResults(): {} | null;
|
|
18
21
|
kickPlayer(player: BlackJackPlayer): void;
|
|
19
|
-
onHandleMove<T
|
|
22
|
+
onHandleMove<T>(player: BlackJackPlayer): T;
|
|
23
|
+
getGameState(): BlackJackGameStateType;
|
|
20
24
|
onHandleRestartTimeout(): void;
|
|
21
25
|
onHandleTurnTimeout(player: BlackJackPlayer): void;
|
|
22
26
|
getCard(player: BlackJackPlayer): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"black-jack-game-master.d.ts","sourceRoot":"","sources":["../../../../src/tests/just-black-jack/domain/black-jack-game-master.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAa,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,oBAAY,uBAAuB;IAC/B,QAAQ,aAAa;IACrB,WAAW,gBAAgB;CAC9B;AAED,oBAAY,iBAAiB;IACzB,MAAM,WAAW;CACpB;AAED,qBAAa,mBAAoB,SAAQ,eAAe;IACpD,iBAAiB,IAAK,iBAAiB;IAIvC,UAAU,IAAK,KAAK,CAAC,eAAe,CAAC;IAIrC,aAAa;IAgBb,YAAY;IAIZ,WAAW;IAIX,UAAU,IAAK,EAAE,GAAG,IAAI;IAIxB,UAAU,CAAE,MAAM,EAAE,eAAe;IAGnC,YAAY,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"black-jack-game-master.d.ts","sourceRoot":"","sources":["../../../../src/tests/just-black-jack/domain/black-jack-game-master.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAa,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,oBAAY,uBAAuB;IAC/B,QAAQ,aAAa;IACrB,WAAW,gBAAgB;CAC9B;AAED,oBAAY,iBAAiB;IACzB,MAAM,WAAW;CACpB;AAED,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC7D,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,mBAAoB,SAAQ,eAAe;IACpD,iBAAiB,IAAK,iBAAiB;IAIvC,UAAU,IAAK,KAAK,CAAC,eAAe,CAAC;IAIrC,aAAa;IAgBb,YAAY;IAIZ,WAAW;IAIX,UAAU,IAAK,EAAE,GAAG,IAAI;IAIxB,UAAU,CAAE,MAAM,EAAE,eAAe;IAGnC,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,GAAG,CAAC;IAiBlC,YAAY,IAAK,sBAAsB;IAOhD,sBAAsB;IAGtB,mBAAmB,CAAE,MAAM,EAAE,eAAe;IAG5C,OAAO,CAAE,MAAM,EAAE,eAAe;IAIhC,UAAU,CAAE,MAAM,EAAE,eAAe;IAUnC,QAAQ;IAIR,aAAa;IAIb,SAAS,IAAK,eAAe,GAAG,SAAS;CAG5C"}
|
|
@@ -59,6 +59,9 @@ class BlackJackGameMaster extends cards_game_1.CardsGameMaster {
|
|
|
59
59
|
}
|
|
60
60
|
return this.getGameState();
|
|
61
61
|
}
|
|
62
|
+
getGameState() {
|
|
63
|
+
return Object.assign(Object.assign({}, super.getGameState()), { superbit: true });
|
|
64
|
+
}
|
|
62
65
|
onHandleRestartTimeout() {
|
|
63
66
|
}
|
|
64
67
|
onHandleTurnTimeout(player) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"black-jack-game-master.js","sourceRoot":"","sources":["../../../../src/tests/just-black-jack/domain/black-jack-game-master.ts"],"names":[],"mappings":";;;AAAA,wCAAgF;AAChF,oDAAsD;AAGtD,2DAAsD;AAEtD,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IAC/B,gDAAqB,CAAA;IACrB,sDAA2B,CAAA;AAC/B,CAAC,EAHW,uBAAuB,uCAAvB,uBAAuB,QAGlC;AAED,IAAY,iBAEX;AAFD,WAAY,iBAAiB;IACzB,sCAAiB,CAAA;AACrB,CAAC,EAFW,iBAAiB,iCAAjB,iBAAiB,QAE5B;
|
|
1
|
+
{"version":3,"file":"black-jack-game-master.js","sourceRoot":"","sources":["../../../../src/tests/just-black-jack/domain/black-jack-game-master.ts"],"names":[],"mappings":";;;AAAA,wCAAgF;AAChF,oDAAsD;AAGtD,2DAAsD;AAEtD,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IAC/B,gDAAqB,CAAA;IACrB,sDAA2B,CAAA;AAC/B,CAAC,EAHW,uBAAuB,uCAAvB,uBAAuB,QAGlC;AAED,IAAY,iBAEX;AAFD,WAAY,iBAAiB;IACzB,sCAAiB,CAAA;AACrB,CAAC,EAFW,iBAAiB,iCAAjB,iBAAiB,QAE5B;AAMD,MAAa,mBAAoB,SAAQ,4BAAe;IACpD,iBAAiB;;QACb,OAAQ,MAAA,IAAI,CAAC,SAAS,0CAAE,QAAQ,EAAwB,CAAC;IAC7D,CAAC;IAED,UAAU;QACN,OAAQ,IAAI,CAAC,KAAK,CAAC,UAAU,EAA6B,CAAC;IAC/D,CAAC;IAED,aAAa;;QACT,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,YAAY,CAAC,IAAI,gBAAS,CAAC,IAAI,wBAAiB,EAAE,CAAC,CAAC,CAAC;QAE1D,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAC,IAAI,mCAAe,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAEnE,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,EAAE,CAAC;QAEnC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,MAAA,MAAA,IAAI,CAAC,aAAa,EAAE,0CAAE,SAAS,EAAE,mCAAI,CAAC,CAAC,CAAC;QAC3F,IAAI,WAAW,EAAE,CAAC;YACd,MAAA,IAAI,CAAC,SAAS,0CAAE,eAAe,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;IAED,YAAY;QACR,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACjC,CAAC;IAED,WAAW;QACP,IAAI,CAAC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,CAAC;IACxC,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,UAAU,CAAE,MAAuB;IACnC,CAAC;IAED,YAAY,CAAI,MAAuB;QACnC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAE9B,QAAQ,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,EAAE,EAAE,CAAC;YACxB,KAAK,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACpC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACrB,MAAM;YACV,CAAC;YACD,KAAK,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC;gBACvC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBACxB,MAAM;YACV,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,EAAO,CAAC;IACpC,CAAC;IAEQ,YAAY;QACjB,uCACO,KAAK,CAAC,YAAY,EAAE,KACvB,QAAQ,EAAE,IAAI,IAChB;IACN,CAAC;IAED,sBAAsB;IACtB,CAAC;IAED,mBAAmB,CAAE,MAAuB;IAC5C,CAAC;IAED,OAAO,CAAE,MAAuB;QAC5B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,UAAU,CAAE,MAAuB;QAC/B,MAAM,CAAC,UAAU,EAAE,CAAC;QAEpB,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YAClB,IAAI,CAAC,WAAW,EAAE,CAAC;QACvB,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,YAAY,EAAE,CAAC;QACxB,CAAC;IACL,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC;IAC/G,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACxG,CAAC;IAED,SAAS;;QACL,OAAO,MAAA,IAAI,CAAC,aAAa,EAAE,0CAAE,SAAS,EAAiC,CAAC;IAC5E,CAAC;CACJ;AA/FD,kDA+FC"}
|
|
@@ -39,13 +39,14 @@ describe('black jack simple room', () => {
|
|
|
39
39
|
const master = room.getMasters()[0];
|
|
40
40
|
const table1 = master.getTable();
|
|
41
41
|
const dealer = master.getDealer();
|
|
42
|
-
if (table1
|
|
42
|
+
if (table1) {
|
|
43
43
|
table1.addPlayerToSeat(newPlayer1);
|
|
44
44
|
newPlayer1.setStack(100);
|
|
45
45
|
table1.addPlayerToSeat(newPlayer2);
|
|
46
46
|
newPlayer2.setStack(100);
|
|
47
47
|
expect((_a = master.getGameRound()) === null || _a === void 0 ? void 0 : _a.getState()).toBeUndefined();
|
|
48
48
|
master.startNewRound();
|
|
49
|
+
const state = master.onHandleMove(newPlayer1);
|
|
49
50
|
expect(master.getGameRoundState().isInProgress()).toBeTruthy();
|
|
50
51
|
expect(table1.getPlayers().length).toBe(3);
|
|
51
52
|
expect((_b = master.getGameRound()) === null || _b === void 0 ? void 0 : _b.getActivePlayer()).toBe(newPlayer1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"black-jack-simple-room.test.js","sourceRoot":"","sources":["../../../../src/tests/just-black-jack/tests/black-jack-simple-room.test.ts"],"names":[],"mappings":";;AAAA,mCAAmC;AAGnC,4EAAsE;AAEtE,qCAAsD;AACtD,kEAA8D;AAI9D,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,IAAI,UAA2B,CAAC;IAChC,IAAI,UAA2B,CAAC;IAEhC,IAAI,cAAc,GAAmB;QACnC,EAAE,EAAE,GAAG;QACP,QAAQ,EAAE,iBAAiB;QAC3B,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,UAAU;QACrB,UAAU,EAAE,CAAC;QACb,GAAG,EAAE,EAAE;QACP,KAAK,EAAE;YACL,EAAE,EAAE,0BAA0B;YAC9B,EAAE,EAAE,0BAA0B;SAC/B;QACD,QAAQ,EAAE;YACR,EAAE,EAAE,iCAAiC;YACrC,EAAE,EAAE,8BAA8B;SACnC;QACD,WAAW,EAAE,CAAC;QACd,cAAc,EAAE,CAAC;KAClB,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAA,iBAAQ,GAAE,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,IAAA,kBAAS,EAAC,gBAAO,CAAC,CAAC;QAChC,UAAU,GAAG,IAAA,kBAAS,EAAC,gBAAO,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;;QAChC,MAAM,IAAI,GAAG,IAAI,4CAAmB,CAAC,cAAc,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,EAAE,CAAC;QAEjB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAoC,CAAC;QACvE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAElC,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"black-jack-simple-room.test.js","sourceRoot":"","sources":["../../../../src/tests/just-black-jack/tests/black-jack-simple-room.test.ts"],"names":[],"mappings":";;AAAA,mCAAmC;AAGnC,4EAAsE;AAEtE,qCAAsD;AACtD,kEAA8D;AAI9D,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,IAAI,UAA2B,CAAC;IAChC,IAAI,UAA2B,CAAC;IAEhC,IAAI,cAAc,GAAmB;QACnC,EAAE,EAAE,GAAG;QACP,QAAQ,EAAE,iBAAiB;QAC3B,QAAQ,EAAE,QAAQ;QAClB,SAAS,EAAE,UAAU;QACrB,UAAU,EAAE,CAAC;QACb,GAAG,EAAE,EAAE;QACP,KAAK,EAAE;YACL,EAAE,EAAE,0BAA0B;YAC9B,EAAE,EAAE,0BAA0B;SAC/B;QACD,QAAQ,EAAE;YACR,EAAE,EAAE,iCAAiC;YACrC,EAAE,EAAE,8BAA8B;SACnC;QACD,WAAW,EAAE,CAAC;QACd,cAAc,EAAE,CAAC;KAClB,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAA,iBAAQ,GAAE,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,IAAA,kBAAS,EAAC,gBAAO,CAAC,CAAC;QAChC,UAAU,GAAG,IAAA,kBAAS,EAAC,gBAAO,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;;QAChC,MAAM,IAAI,GAAG,IAAI,4CAAmB,CAAC,cAAc,CAAC,CAAC;QACrD,IAAI,CAAC,SAAS,EAAE,CAAC;QAEjB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAoC,CAAC;QACvE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;QAElC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YACnC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAEzB,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;YACnC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAEzB,MAAM,CAAC,MAAA,MAAM,CAAC,YAAY,EAAE,0CAAE,QAAQ,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC;YAE1D,MAAM,CAAC,aAAa,EAAE,CAAC;YAEvB,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAyB,UAAU,CAAC,CAAC;YAGtE,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;YAC/D,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,CAAC,MAAA,MAAM,CAAC,YAAY,EAAE,0CAAE,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClE,MAAM,CAAC,IAAA,kCAAe,EAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAGxD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAE9B,MAAM,CAAC,MAAA,MAAM,CAAC,YAAY,EAAE,0CAAE,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClE,MAAM,CAAC,IAAA,kCAAe,EAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAExD,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC3B,MAAM,CAAC,IAAA,kCAAe,EAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACxD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAE9B,MAAM,CAAC,MAAA,MAAM,CAAC,YAAY,EAAE,0CAAE,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9D,MAAM,CAAC,IAAA,kCAAe,EAAC,MAAA,MAAA,MAAM,CAAC,SAAS,EAAE,0CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvE,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAE1B,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;QAC7D,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
package/src/base/game-master.ts
CHANGED
|
@@ -48,7 +48,7 @@ export abstract class GameMaster {
|
|
|
48
48
|
|
|
49
49
|
abstract onHandleRestartTimeout ();
|
|
50
50
|
|
|
51
|
-
abstract onHandleMove<T
|
|
51
|
+
abstract onHandleMove<T>(player: GamePlayer): T;
|
|
52
52
|
|
|
53
53
|
abstract kickPlayer (player: GamePlayer);
|
|
54
54
|
|
|
@@ -98,10 +98,10 @@ export abstract class GameMaster {
|
|
|
98
98
|
return this.getGameState() as T;
|
|
99
99
|
}
|
|
100
100
|
|
|
101
|
-
watchTheTable
|
|
101
|
+
watchTheTable (player: GamePlayer): GameMaster {
|
|
102
102
|
this.table.addPlayerToWatchers(player);
|
|
103
103
|
|
|
104
|
-
return this
|
|
104
|
+
return this;
|
|
105
105
|
}
|
|
106
106
|
|
|
107
107
|
startFromWhite () {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { BaseGameStateType, GamePlayer, GameRoom } from '../base';
|
|
1
|
+
import { BaseGameStateType, GameMaster, GamePlayer, GameRoom } from '../base';
|
|
2
2
|
|
|
3
3
|
export abstract class SimpleRoom extends GameRoom {
|
|
4
|
-
handleWatchTheTable
|
|
4
|
+
handleWatchTheTable (player: GamePlayer, tableId: string): GameMaster {
|
|
5
5
|
return this.getMasterById(tableId)?.watchTheTable(player);
|
|
6
6
|
}
|
|
7
7
|
|
|
@@ -13,6 +13,10 @@ export enum BlackJackSeatRole {
|
|
|
13
13
|
DEALER = 'DEALER',
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
+
export interface BlackJackGameStateType extends BaseGameStateType {
|
|
17
|
+
superbit: boolean;
|
|
18
|
+
}
|
|
19
|
+
|
|
16
20
|
export class BlackJackGameMaster extends CardsGameMaster {
|
|
17
21
|
getGameRoundState (): StandardGameState {
|
|
18
22
|
return (this.gameRound?.getState() as StandardGameState);
|
|
@@ -53,7 +57,7 @@ export class BlackJackGameMaster extends CardsGameMaster {
|
|
|
53
57
|
kickPlayer (player: BlackJackPlayer) {
|
|
54
58
|
}
|
|
55
59
|
|
|
56
|
-
onHandleMove<T
|
|
60
|
+
onHandleMove<T>(player: BlackJackPlayer): T {
|
|
57
61
|
const move = player.getMove();
|
|
58
62
|
|
|
59
63
|
switch (move?.getAction()) {
|
|
@@ -70,6 +74,13 @@ export class BlackJackGameMaster extends CardsGameMaster {
|
|
|
70
74
|
return this.getGameState() as T;
|
|
71
75
|
}
|
|
72
76
|
|
|
77
|
+
override getGameState (): BlackJackGameStateType {
|
|
78
|
+
return {
|
|
79
|
+
...super.getGameState(),
|
|
80
|
+
superbit: true,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
|
|
73
84
|
onHandleRestartTimeout () {
|
|
74
85
|
}
|
|
75
86
|
|
|
@@ -6,7 +6,7 @@ import { BlackJackSimpleRoom } from '../rooms/black-jack-simple-room';
|
|
|
6
6
|
import { mockDeck, player1, player2 } from './common';
|
|
7
7
|
import { calculateResult } from '../helpers/calculate-result';
|
|
8
8
|
import { GameRoomConfig } from '../../../base';
|
|
9
|
-
import { BlackJackGameMaster } from '../domain/black-jack-game-master';
|
|
9
|
+
import { BlackJackGameMaster, BlackJackGameStateType } from '../domain/black-jack-game-master';
|
|
10
10
|
|
|
11
11
|
describe('black jack simple room', () => {
|
|
12
12
|
let newPlayer1: BlackJackPlayer;
|
|
@@ -48,7 +48,7 @@ describe('black jack simple room', () => {
|
|
|
48
48
|
const table1 = master.getTable();
|
|
49
49
|
const dealer = master.getDealer();
|
|
50
50
|
|
|
51
|
-
if (table1
|
|
51
|
+
if (table1) {
|
|
52
52
|
table1.addPlayerToSeat(newPlayer1);
|
|
53
53
|
newPlayer1.setStack(100);
|
|
54
54
|
|
|
@@ -58,12 +58,17 @@ describe('black jack simple room', () => {
|
|
|
58
58
|
expect(master.getGameRound()?.getState()).toBeUndefined();
|
|
59
59
|
|
|
60
60
|
master.startNewRound();
|
|
61
|
+
|
|
62
|
+
const state = master.onHandleMove<BlackJackGameStateType>(newPlayer1);
|
|
63
|
+
|
|
64
|
+
|
|
61
65
|
expect(master.getGameRoundState().isInProgress()).toBeTruthy();
|
|
62
66
|
expect(table1.getPlayers().length).toBe(3);
|
|
63
67
|
|
|
64
68
|
expect(master.getGameRound()?.getActivePlayer()).toBe(newPlayer1);
|
|
65
69
|
expect(calculateResult(newPlayer1.getCards())).toBe(20);
|
|
66
70
|
|
|
71
|
+
|
|
67
72
|
master.finishMove(newPlayer1);
|
|
68
73
|
|
|
69
74
|
expect(master.getGameRound()?.getActivePlayer()).toBe(newPlayer2);
|