jp.ms.common.engine 1.0.10 → 1.0.12

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.
@@ -13,6 +13,10 @@ export declare abstract class GameMaster {
13
13
  readonly controlTurn: GameControlPlayerTurn;
14
14
  readonly controlRestart: GameControlRestart;
15
15
  protected constructor(room: GameRoom);
16
+ static parseTableId(roomIdWithTable: string): {
17
+ roomId: string;
18
+ tableId: string;
19
+ };
16
20
  abstract onHandleTurnTimeout(player: GamePlayer): any;
17
21
  abstract onHandleRestartTimeout(): any;
18
22
  abstract onHandleMove(player: GamePlayer): any;
@@ -27,7 +31,7 @@ export declare abstract class GameMaster {
27
31
  getTable(): GameTable;
28
32
  enterTheTable(player: GamePlayer): void;
29
33
  exitTheTable(player: GamePlayer): void;
30
- watchTheTable(player: GamePlayer): void;
34
+ watchTheTable(player: GamePlayer): BaseGameStateType;
31
35
  startFromWhite(): void;
32
36
  changePlayerClockwise(): void;
33
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,QAAQ,CAAC,mBAAmB,CAAE,MAAM,EAAE,UAAU;IAEhD,QAAQ,CAAC,sBAAsB;IAE/B,QAAQ,CAAC,YAAY,CAAE,MAAM,EAAE,UAAU;IAEzC,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,CAAE,MAAM,EAAE,UAAU;IAQjC,YAAY,CAAE,MAAM,EAAE,UAAU;IAUhC,aAAa,CAAE,MAAM,EAAE,UAAU;IAIjC,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"}
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,CAAE,MAAM,EAAE,UAAU;IAEzC,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,CAAE,MAAM,EAAE,UAAU;IAQjC,YAAY,CAAE,MAAM,EAAE,UAAU;IAUhC,aAAa,CAAE,MAAM,EAAE,UAAU,GAAG,iBAAiB;IAMrD,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"}
@@ -11,6 +11,23 @@ class GameMaster {
11
11
  this.controlTurn = new game_control_player_turn_1.GameControlPlayerTurn(this.table.getTurnTimeout(), this.onHandleTurnTimeout);
12
12
  this.controlRestart = new game_control_restart_1.GameControlRestart(this.table.getRestartTimeout(), this.onHandleRestartTimeout);
13
13
  }
14
+ static parseTableId(roomIdWithTable) {
15
+ var _a, _b, _c;
16
+ const pattern = /([a-zA-z0-9.]*)_([0-9]*)/;
17
+ const data = roomIdWithTable.match(pattern);
18
+ if (!data) {
19
+ const pattern2 = /([a-zA-z0-9.]*)/;
20
+ const data2 = roomIdWithTable.match(pattern2);
21
+ return {
22
+ roomId: (_a = data2 === null || data2 === void 0 ? void 0 : data2[1]) !== null && _a !== void 0 ? _a : '',
23
+ tableId: '1',
24
+ };
25
+ }
26
+ return {
27
+ roomId: (_b = data === null || data === void 0 ? void 0 : data[1]) !== null && _b !== void 0 ? _b : '',
28
+ tableId: (_c = data === null || data === void 0 ? void 0 : data[2]) !== null && _c !== void 0 ? _c : '',
29
+ };
30
+ }
14
31
  getId() {
15
32
  return this.table.getId();
16
33
  }
@@ -44,6 +61,7 @@ class GameMaster {
44
61
  }
45
62
  watchTheTable(player) {
46
63
  this.table.addPlayerToWatchers(player);
64
+ return this.getGameState();
47
65
  }
48
66
  startFromWhite() {
49
67
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"game-master.js","sourceRoot":"","sources":["../../src/base/game-master.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game-master.js","sourceRoot":"","sources":["../../src/base/game-master.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,8 @@ export declare abstract class GameRoom {
39
39
  getFirstMaster(): GameMaster | undefined;
40
40
  getMasterWithFreeSeats(): GameTable | undefined;
41
41
  remainOneMaster(): boolean;
42
- getMasterById(id: string): GameMaster | undefined;
42
+ getMasterById(tableId: string): GameMaster | undefined;
43
+ getGameState(tableId: string): import("./base-game-state.type").BaseGameStateType;
43
44
  getFreeTableNumber(): number;
44
45
  getCreatedTableCount(): number;
45
46
  addMaster(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"game-room.d.ts","sourceRoot":"","sources":["../../src/base/game-room.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CAC1B,CAAA;AAED,8BAAsB,QAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAE/B,MAAM,EAAE,cAAc;IAenC,QAAQ,CAAC,YAAY,IAAK,UAAU;IAEpC,QAAQ,CAAC,iBAAiB,CAAE,KAAK,EAAE,SAAS,GAAG,IAAI;IAEnD,QAAQ,CAAC,kBAAkB,CAAE,KAAK,EAAE,SAAS,GAAG,IAAI;IAEpD,KAAK;IAIL,WAAW;IAIX,WAAW;IAIX,YAAY;IAIZ,aAAa;IAIb,UAAU,IAAK,KAAK,CAAC,UAAU,CAAC;IAIhC,SAAS,IAAK,KAAK,CAAC,SAAS,CAAC;IAI9B,cAAc,IAAK,UAAU,GAAG,SAAS;IAIzC,sBAAsB,IAAK,SAAS,GAAG,SAAS;IAKhD,eAAe,IAAK,OAAO;IAI3B,aAAa,CAAE,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAIlD,kBAAkB,IAAK,MAAM;IAI7B,oBAAoB,IAAK,MAAM;IAI/B,SAAS,IAAK,IAAI;IAKlB,YAAY,CAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIrC,MAAM;IAIN,iBAAiB,IAAK,eAAe;CAexC"}
1
+ {"version":3,"file":"game-room.d.ts","sourceRoot":"","sources":["../../src/base/game-room.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,MAAM,cAAc,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CAC1B,CAAA;AAED,8BAAsB,QAAQ;IAC1B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoB;gBAE/B,MAAM,EAAE,cAAc;IAenC,QAAQ,CAAC,YAAY,IAAK,UAAU;IAEpC,QAAQ,CAAC,iBAAiB,CAAE,KAAK,EAAE,SAAS,GAAG,IAAI;IAEnD,QAAQ,CAAC,kBAAkB,CAAE,KAAK,EAAE,SAAS,GAAG,IAAI;IAEpD,KAAK;IAIL,WAAW;IAIX,WAAW;IAIX,YAAY;IAIZ,aAAa;IAIb,UAAU,IAAK,KAAK,CAAC,UAAU,CAAC;IAIhC,SAAS,IAAK,KAAK,CAAC,SAAS,CAAC;IAI9B,cAAc,IAAK,UAAU,GAAG,SAAS;IAIzC,sBAAsB,IAAK,SAAS,GAAG,SAAS;IAKhD,eAAe,IAAK,OAAO;IAI3B,aAAa,CAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAIvD,YAAY,CAAE,OAAO,EAAE,MAAM;IAI7B,kBAAkB,IAAK,MAAM;IAI7B,oBAAoB,IAAK,MAAM;IAI/B,SAAS,IAAK,IAAI;IAKlB,YAAY,CAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIrC,MAAM;IAIN,iBAAiB,IAAK,eAAe;CAexC"}
@@ -47,8 +47,11 @@ class GameRoom {
47
47
  remainOneMaster() {
48
48
  return this.masters.length === 1;
49
49
  }
50
- getMasterById(id) {
51
- return this.masters.find((item) => item.getId() === id);
50
+ getMasterById(tableId) {
51
+ return this.masters.find((item) => item.getId() === tableId);
52
+ }
53
+ getGameState(tableId) {
54
+ return this.getMasterById(tableId).getGameState();
52
55
  }
53
56
  getFreeTableNumber() {
54
57
  return this.createdTableCount + 1;
@@ -1 +1 @@
1
- {"version":3,"file":"game-room.js","sourceRoot":"","sources":["../../src/base/game-room.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game-room.js","sourceRoot":"","sources":["../../src/base/game-room.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { GamePlayer, GameRoom } from '../base';
2
2
  export declare abstract class SimpleRoom extends GameRoom {
3
- handleWatchTheTable(player: GamePlayer, masterId: string): void;
4
- handleEnterTheTable(player: GamePlayer, masterId: string): void;
5
- handleExitTheTable(player: GamePlayer, masterId: string): void;
6
- handleMoveOnTheTable(player: GamePlayer, masterId: string): void;
3
+ handleWatchTheTable(player: GamePlayer, tableId: string): import("../base").BaseGameStateType;
4
+ handleEnterTheTable(player: GamePlayer, tableId: string): void;
5
+ handleExitTheTable(player: GamePlayer, tableId: string): void;
6
+ handleMoveOnTheTable(player: GamePlayer, tableId: string): void;
7
7
  handleFinishRound(): void;
8
8
  handleRestartRound(): void;
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"simple-room.d.ts","sourceRoot":"","sources":["../../src/base-rooms/simple-room.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/C,8BAAsB,UAAW,SAAQ,QAAQ;IAC/C,mBAAmB,CAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;IAIzD,mBAAmB,CAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;IAIzD,kBAAkB,CAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;IAIxD,oBAAoB,CAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM;IAI1D,iBAAiB;IAIjB,kBAAkB;CAEnB"}
1
+ {"version":3,"file":"simple-room.d.ts","sourceRoot":"","sources":["../../src/base-rooms/simple-room.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE/C,8BAAsB,UAAW,SAAQ,QAAQ;IAC/C,mBAAmB,CAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM;IAIxD,mBAAmB,CAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM;IAIxD,kBAAkB,CAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM;IAIvD,oBAAoB,CAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM;IAIzD,iBAAiB;IAIjB,kBAAkB;CAEnB"}
@@ -3,21 +3,21 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SimpleRoom = void 0;
4
4
  const base_1 = require("../base");
5
5
  class SimpleRoom extends base_1.GameRoom {
6
- handleWatchTheTable(player, masterId) {
6
+ handleWatchTheTable(player, tableId) {
7
7
  var _a;
8
- (_a = this.getMasterById(masterId)) === null || _a === void 0 ? void 0 : _a.watchTheTable(player);
8
+ return (_a = this.getMasterById(tableId)) === null || _a === void 0 ? void 0 : _a.watchTheTable(player);
9
9
  }
10
- handleEnterTheTable(player, masterId) {
10
+ handleEnterTheTable(player, tableId) {
11
11
  var _a;
12
- (_a = this.getMasterById(masterId)) === null || _a === void 0 ? void 0 : _a.enterTheTable(player);
12
+ (_a = this.getMasterById(tableId)) === null || _a === void 0 ? void 0 : _a.enterTheTable(player);
13
13
  }
14
- handleExitTheTable(player, masterId) {
14
+ handleExitTheTable(player, tableId) {
15
15
  var _a;
16
- (_a = this.getMasterById(masterId)) === null || _a === void 0 ? void 0 : _a.exitTheTable(player);
16
+ (_a = this.getMasterById(tableId)) === null || _a === void 0 ? void 0 : _a.exitTheTable(player);
17
17
  }
18
- handleMoveOnTheTable(player, masterId) {
18
+ handleMoveOnTheTable(player, tableId) {
19
19
  var _a;
20
- (_a = this.getMasterById(masterId)) === null || _a === void 0 ? void 0 : _a.onHandleMove(player);
20
+ (_a = this.getMasterById(tableId)) === null || _a === void 0 ? void 0 : _a.onHandleMove(player);
21
21
  }
22
22
  handleFinishRound() {
23
23
  // save users balances
@@ -1 +1 @@
1
- {"version":3,"file":"simple-room.js","sourceRoot":"","sources":["../../src/base-rooms/simple-room.ts"],"names":[],"mappings":";;;AAAA,kCAA+C;AAE/C,MAAsB,UAAW,SAAQ,eAAQ;IAC/C,mBAAmB,CAAE,MAAkB,EAAE,QAAgB;;QACvD,MAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,0CAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,mBAAmB,CAAE,MAAkB,EAAE,QAAgB;;QACvD,MAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,0CAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC;IAED,kBAAkB,CAAE,MAAkB,EAAE,QAAgB;;QACtD,MAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,0CAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,oBAAoB,CAAE,MAAkB,EAAE,QAAgB;;QACxD,MAAA,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,0CAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,iBAAiB;QACf,sBAAsB;IACxB,CAAC;IAED,kBAAkB;IAClB,CAAC;CACF;AAvBD,gCAuBC"}
1
+ {"version":3,"file":"simple-room.js","sourceRoot":"","sources":["../../src/base-rooms/simple-room.ts"],"names":[],"mappings":";;;AAAA,kCAA+C;AAE/C,MAAsB,UAAW,SAAQ,eAAQ;IAC/C,mBAAmB,CAAE,MAAkB,EAAE,OAAe;;QACtD,OAAO,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED,mBAAmB,CAAE,MAAkB,EAAE,OAAe;;QACtD,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,kBAAkB,CAAE,MAAkB,EAAE,OAAe;;QACrD,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,oBAAoB,CAAE,MAAkB,EAAE,OAAe;;QACvD,MAAA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,0CAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,iBAAiB;QACf,sBAAsB;IACxB,CAAC;IAED,kBAAkB;IAClB,CAAC;CACF;AAvBD,gCAuBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jp.ms.common.engine",
3
- "version": "1.0.10",
3
+ "version": "1.0.12",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -21,6 +21,29 @@ export abstract class GameMaster {
21
21
  this.controlRestart = new GameControlRestart(this.table.getRestartTimeout(), this.onHandleRestartTimeout);
22
22
  }
23
23
 
24
+ static parseTableId (roomIdWithTable: string): {
25
+ roomId: string;
26
+ tableId: string;
27
+ } {
28
+ const pattern = /([a-zA-z0-9.]*)_([0-9]*)/;
29
+ const data = roomIdWithTable.match(pattern);
30
+
31
+ if (!data) {
32
+ const pattern2 = /([a-zA-z0-9.]*)/;
33
+ const data2 = roomIdWithTable.match(pattern2);
34
+
35
+ return {
36
+ roomId: data2?.[1] ?? '',
37
+ tableId: '1',
38
+ };
39
+ }
40
+
41
+ return {
42
+ roomId: data?.[1] ?? '',
43
+ tableId: data?.[2] ?? '',
44
+ };
45
+ }
46
+
24
47
  abstract onHandleTurnTimeout (player: GamePlayer);
25
48
 
26
49
  abstract onHandleRestartTimeout ();
@@ -71,8 +94,10 @@ export abstract class GameMaster {
71
94
  }
72
95
  }
73
96
 
74
- watchTheTable (player: GamePlayer) {
97
+ watchTheTable (player: GamePlayer): BaseGameStateType {
75
98
  this.table.addPlayerToWatchers(player);
99
+
100
+ return this.getGameState();
76
101
  }
77
102
 
78
103
  startFromWhite () {
@@ -92,8 +92,12 @@ export abstract class GameRoom {
92
92
  return this.masters.length === 1;
93
93
  }
94
94
 
95
- getMasterById (id: string): GameMaster | undefined {
96
- return this.masters.find((item) => item.getId() === id);
95
+ getMasterById (tableId: string): GameMaster | undefined {
96
+ return this.masters.find((item) => item.getId() === tableId);
97
+ }
98
+
99
+ getGameState (tableId: string) {
100
+ return this.getMasterById(tableId).getGameState();
97
101
  }
98
102
 
99
103
  getFreeTableNumber (): number {
@@ -1,20 +1,20 @@
1
1
  import { GamePlayer, GameRoom } from '../base';
2
2
 
3
3
  export abstract class SimpleRoom extends GameRoom {
4
- handleWatchTheTable (player: GamePlayer, masterId: string) {
5
- this.getMasterById(masterId)?.watchTheTable(player);
4
+ handleWatchTheTable (player: GamePlayer, tableId: string) {
5
+ return this.getMasterById(tableId)?.watchTheTable(player);
6
6
  }
7
7
 
8
- handleEnterTheTable (player: GamePlayer, masterId: string) {
9
- this.getMasterById(masterId)?.enterTheTable(player);
8
+ handleEnterTheTable (player: GamePlayer, tableId: string) {
9
+ this.getMasterById(tableId)?.enterTheTable(player);
10
10
  }
11
11
 
12
- handleExitTheTable (player: GamePlayer, masterId: string) {
13
- this.getMasterById(masterId)?.exitTheTable(player);
12
+ handleExitTheTable (player: GamePlayer, tableId: string) {
13
+ this.getMasterById(tableId)?.exitTheTable(player);
14
14
  }
15
15
 
16
- handleMoveOnTheTable (player: GamePlayer, masterId: string) {
17
- this.getMasterById(masterId)?.onHandleMove(player);
16
+ handleMoveOnTheTable (player: GamePlayer, tableId: string) {
17
+ this.getMasterById(tableId)?.onHandleMove(player);
18
18
  }
19
19
 
20
20
  handleFinishRound () {