jp.ms.common.engine 1.0.3 → 1.0.4

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.
Files changed (218) hide show
  1. package/dist/base/game-control-player-turn.d.ts +4 -4
  2. package/dist/base/game-control-player-turn.d.ts.map +1 -1
  3. package/dist/base/game-control-player-turn.js.map +1 -1
  4. package/dist/base/game-master.d.ts +24 -21
  5. package/dist/base/game-master.d.ts.map +1 -1
  6. package/dist/base/game-master.js +6 -2
  7. package/dist/base/game-master.js.map +1 -1
  8. package/dist/base/game-player-connections-helper.d.ts +15 -0
  9. package/dist/base/game-player-connections-helper.d.ts.map +1 -0
  10. package/dist/base/game-player-connections-helper.js +33 -0
  11. package/dist/base/game-player-connections-helper.js.map +1 -0
  12. package/dist/base/game-player.d.ts +3 -1
  13. package/dist/base/game-player.d.ts.map +1 -1
  14. package/dist/base/game-player.js +3 -1
  15. package/dist/base/game-player.js.map +1 -1
  16. package/dist/base/game-room.d.ts +15 -17
  17. package/dist/base/game-room.d.ts.map +1 -1
  18. package/dist/base/game-room.js +16 -17
  19. package/dist/base/game-room.js.map +1 -1
  20. package/dist/base/game-round.d.ts +7 -10
  21. package/dist/base/game-round.d.ts.map +1 -1
  22. package/dist/base/game-round.js +2 -4
  23. package/dist/base/game-round.js.map +1 -1
  24. package/dist/base/game-state-machine.d.ts +4 -4
  25. package/dist/base/game-state-machine.d.ts.map +1 -1
  26. package/dist/base/game-state-machine.js.map +1 -1
  27. package/dist/base/game-summary-result.d.ts +3 -0
  28. package/dist/base/game-summary-result.d.ts.map +1 -0
  29. package/dist/base/game-summary-result.js +7 -0
  30. package/dist/base/game-summary-result.js.map +1 -0
  31. package/dist/base/game-table-seat.d.ts +3 -3
  32. package/dist/base/game-table-seat.d.ts.map +1 -1
  33. package/dist/base/game-table-seat.js.map +1 -1
  34. package/dist/base/game-table-seats.d.ts +12 -12
  35. package/dist/base/game-table-seats.d.ts.map +1 -1
  36. package/dist/base/game-table-seats.js.map +1 -1
  37. package/dist/base/game-table.d.ts +25 -51
  38. package/dist/base/game-table.d.ts.map +1 -1
  39. package/dist/base/game-table.js.map +1 -1
  40. package/dist/base/index.d.ts +2 -1
  41. package/dist/base/index.d.ts.map +1 -1
  42. package/dist/base/index.js +3 -1
  43. package/dist/base/index.js.map +1 -1
  44. package/dist/base/standard-game-state.d.ts +2 -2
  45. package/dist/base/standard-game-state.d.ts.map +1 -1
  46. package/dist/base/standard-game-state.js +1 -1
  47. package/dist/base/standard-game-state.js.map +1 -1
  48. package/dist/base-rooms/fast-tournament-room.d.ts +0 -13
  49. package/dist/base-rooms/fast-tournament-room.d.ts.map +1 -1
  50. package/dist/base-rooms/fast-tournament-room.js +59 -51
  51. package/dist/base-rooms/fast-tournament-room.js.map +1 -1
  52. package/dist/base-rooms/index.d.ts +1 -5
  53. package/dist/base-rooms/index.d.ts.map +1 -1
  54. package/dist/base-rooms/index.js +3 -9
  55. package/dist/base-rooms/index.js.map +1 -1
  56. package/dist/base-rooms/scheduled-tournament-room.d.ts +0 -27
  57. package/dist/base-rooms/scheduled-tournament-room.d.ts.map +1 -1
  58. package/dist/base-rooms/scheduled-tournament-room.js +181 -164
  59. package/dist/base-rooms/scheduled-tournament-room.js.map +1 -1
  60. package/dist/base-rooms/simple-room.d.ts +5 -4
  61. package/dist/base-rooms/simple-room.d.ts.map +1 -1
  62. package/dist/base-rooms/simple-room.js +16 -0
  63. package/dist/base-rooms/simple-room.js.map +1 -1
  64. package/dist/base-rooms/tournament-room.d.ts +0 -46
  65. package/dist/base-rooms/tournament-room.d.ts.map +1 -1
  66. package/dist/base-rooms/tournament-room.js +169 -109
  67. package/dist/base-rooms/tournament-room.js.map +1 -1
  68. package/dist/base-rooms/tournament-state.d.ts +2 -2
  69. package/dist/base-rooms/tournament-state.d.ts.map +1 -1
  70. package/dist/base-rooms/tournament-state.js +2 -2
  71. package/dist/base-rooms/tournament-state.js.map +1 -1
  72. package/dist/board-game/base/board-cell.d.ts +0 -15
  73. package/dist/board-game/base/board-cell.d.ts.map +1 -1
  74. package/dist/board-game/base/board-cell.js +50 -40
  75. package/dist/board-game/base/board-cell.js.map +1 -1
  76. package/dist/board-game/base/board-figure.d.ts +0 -15
  77. package/dist/board-game/base/board-figure.d.ts.map +1 -1
  78. package/dist/board-game/base/board-figure.js +49 -36
  79. package/dist/board-game/base/board-figure.js.map +1 -1
  80. package/dist/board-game/base/board-game-master.d.ts +0 -18
  81. package/dist/board-game/base/board-game-master.d.ts.map +1 -1
  82. package/dist/board-game/base/board-game-master.js +56 -34
  83. package/dist/board-game/base/board-game-master.js.map +1 -1
  84. package/dist/board-game/base/board-player-move.d.ts +0 -10
  85. package/dist/board-game/base/board-player-move.d.ts.map +1 -1
  86. package/dist/board-game/base/board-player-move.js +29 -28
  87. package/dist/board-game/base/board-player-move.js.map +1 -1
  88. package/dist/board-game/base/board-player.d.ts +0 -12
  89. package/dist/board-game/base/board-player.d.ts.map +1 -1
  90. package/dist/board-game/base/board-player.js +43 -29
  91. package/dist/board-game/base/board-player.js.map +1 -1
  92. package/dist/board-game/base/board-table.d.ts +0 -16
  93. package/dist/board-game/base/board-table.d.ts.map +1 -1
  94. package/dist/board-game/base/board-table.js +52 -33
  95. package/dist/board-game/base/board-table.js.map +1 -1
  96. package/dist/board-game/d1-board-game/d1-board-table.d.ts +0 -18
  97. package/dist/board-game/d1-board-game/d1-board-table.d.ts.map +1 -1
  98. package/dist/board-game/d1-board-game/d1-board-table.js +56 -39
  99. package/dist/board-game/d1-board-game/d1-board-table.js.map +1 -1
  100. package/dist/board-game/d2-board-game/d2-board-cell.d.ts +0 -11
  101. package/dist/board-game/d2-board-game/d2-board-cell.d.ts.map +1 -1
  102. package/dist/board-game/d2-board-game/d2-board-cell.js +30 -24
  103. package/dist/board-game/d2-board-game/d2-board-cell.js.map +1 -1
  104. package/dist/board-game/d2-board-game/d2-board-pattern-move-figure.d.ts +0 -28
  105. package/dist/board-game/d2-board-game/d2-board-pattern-move-figure.d.ts.map +1 -1
  106. package/dist/board-game/d2-board-game/d2-board-pattern-move-figure.js +79 -49
  107. package/dist/board-game/d2-board-game/d2-board-pattern-move-figure.js.map +1 -1
  108. package/dist/board-game/d2-board-game/d2-board-table.d.ts +0 -48
  109. package/dist/board-game/d2-board-game/d2-board-table.d.ts.map +1 -1
  110. package/dist/board-game/d2-board-game/d2-board-table.js +262 -182
  111. package/dist/board-game/d2-board-game/d2-board-table.js.map +1 -1
  112. package/dist/board-game/d2-board-game/types.d.ts +0 -4
  113. package/dist/board-game/d2-board-game/types.d.ts.map +1 -1
  114. package/dist/board-game/d2-board-game/types.js +4 -1
  115. package/dist/board-game/d2-board-game/types.js.map +1 -1
  116. package/dist/board-game/dice.js +2 -2
  117. package/dist/board-game/dice.js.map +1 -1
  118. package/dist/board-game/index.d.ts +0 -12
  119. package/dist/board-game/index.d.ts.map +1 -1
  120. package/dist/board-game/index.js +28 -24
  121. package/dist/board-game/index.js.map +1 -1
  122. package/dist/cards-game/cards-game-master.d.ts +7 -8
  123. package/dist/cards-game/cards-game-master.d.ts.map +1 -1
  124. package/dist/cards-game/cards-game-master.js +13 -10
  125. package/dist/cards-game/cards-game-master.js.map +1 -1
  126. package/dist/cards-game/cards-player.d.ts.map +1 -1
  127. package/dist/cards-game/cards-player.js +1 -1
  128. package/dist/cards-game/cards-player.js.map +1 -1
  129. package/dist/cards-game/index.d.ts +1 -2
  130. package/dist/cards-game/index.d.ts.map +1 -1
  131. package/dist/cards-game/index.js +1 -3
  132. package/dist/cards-game/index.js.map +1 -1
  133. package/dist/index.d.ts +0 -1
  134. package/dist/index.d.ts.map +1 -1
  135. package/dist/index.js +1 -1
  136. package/dist/index.js.map +1 -1
  137. package/dist/tests/just-black-jack/domain/black-jack-dealer.d.ts +6 -0
  138. package/dist/tests/just-black-jack/domain/black-jack-dealer.d.ts.map +1 -0
  139. package/dist/tests/just-black-jack/domain/black-jack-dealer.js +14 -0
  140. package/dist/tests/just-black-jack/domain/black-jack-dealer.js.map +1 -0
  141. package/dist/tests/just-black-jack/domain/black-jack-game-master.d.ts +28 -0
  142. package/dist/tests/just-black-jack/domain/black-jack-game-master.d.ts.map +1 -0
  143. package/dist/tests/just-black-jack/domain/black-jack-game-master.js +90 -0
  144. package/dist/tests/just-black-jack/domain/black-jack-game-master.js.map +1 -0
  145. package/dist/tests/just-black-jack/domain/black-jack-player.d.ts +9 -0
  146. package/dist/tests/just-black-jack/domain/black-jack-player.d.ts.map +1 -0
  147. package/dist/tests/just-black-jack/domain/black-jack-player.js +21 -0
  148. package/dist/tests/just-black-jack/domain/black-jack-player.js.map +1 -0
  149. package/dist/tests/just-black-jack/helpers/calculate-result.d.ts +3 -0
  150. package/dist/tests/just-black-jack/helpers/calculate-result.d.ts.map +1 -0
  151. package/dist/tests/just-black-jack/helpers/calculate-result.js +30 -0
  152. package/dist/tests/just-black-jack/helpers/calculate-result.js.map +1 -0
  153. package/dist/tests/just-black-jack/helpers/calculate-result.test.d.ts +2 -0
  154. package/dist/tests/just-black-jack/helpers/calculate-result.test.d.ts.map +1 -0
  155. package/dist/tests/just-black-jack/helpers/calculate-result.test.js +34 -0
  156. package/dist/tests/just-black-jack/helpers/calculate-result.test.js.map +1 -0
  157. package/dist/tests/just-black-jack/rooms/black-jack-simple-room.d.ts +6 -0
  158. package/dist/tests/just-black-jack/rooms/black-jack-simple-room.d.ts.map +1 -0
  159. package/dist/tests/just-black-jack/rooms/black-jack-simple-room.js +13 -0
  160. package/dist/tests/just-black-jack/rooms/black-jack-simple-room.js.map +1 -0
  161. package/dist/tests/just-black-jack/tests/black-jack-simple-room.test.d.ts +2 -0
  162. package/dist/tests/just-black-jack/tests/black-jack-simple-room.test.d.ts.map +1 -0
  163. package/dist/tests/just-black-jack/tests/black-jack-simple-room.test.js +58 -0
  164. package/dist/tests/just-black-jack/tests/black-jack-simple-room.test.js.map +1 -0
  165. package/dist/tests/just-black-jack/tests/common.d.ts +11 -0
  166. package/dist/tests/just-black-jack/tests/common.d.ts.map +1 -0
  167. package/dist/tests/just-black-jack/tests/common.js +51 -0
  168. package/dist/tests/just-black-jack/tests/common.js.map +1 -0
  169. package/package.json +2 -1
  170. package/src/base/game-control-player-turn.ts +5 -5
  171. package/src/base/game-master.ts +25 -19
  172. package/src/base/game-player-connections-helper.ts +40 -0
  173. package/src/base/game-player.ts +5 -2
  174. package/src/base/game-room.ts +26 -30
  175. package/src/base/game-round.ts +10 -16
  176. package/src/base/game-state-machine.ts +7 -7
  177. package/src/base/game-summary-result.ts +3 -0
  178. package/src/base/game-table-seat.ts +3 -3
  179. package/src/base/game-table-seats.ts +13 -13
  180. package/src/base/game-table.ts +28 -79
  181. package/src/base/index.ts +2 -0
  182. package/src/base/standard-game-state.ts +2 -2
  183. package/src/base-rooms/fast-tournament-room.ts +59 -59
  184. package/src/base-rooms/index.ts +9 -9
  185. package/src/base-rooms/scheduled-tournament-room.ts +181 -181
  186. package/src/base-rooms/simple-room.ts +15 -4
  187. package/src/base-rooms/tournament-room.ts +169 -169
  188. package/src/base-rooms/tournament-state.ts +2 -2
  189. package/src/board-game/base/board-cell.ts +50 -50
  190. package/src/board-game/base/board-figure.ts +49 -49
  191. package/src/board-game/base/board-game-master.ts +56 -56
  192. package/src/board-game/base/board-player-move.ts +29 -29
  193. package/src/board-game/base/board-player.ts +43 -43
  194. package/src/board-game/base/board-table.ts +52 -52
  195. package/src/board-game/d1-board-game/d1-board-table.ts +56 -56
  196. package/src/board-game/d2-board-game/d2-board-cell.ts +30 -30
  197. package/src/board-game/d2-board-game/d2-board-pattern-move-figure.ts +79 -79
  198. package/src/board-game/d2-board-game/d2-board-table.ts +262 -262
  199. package/src/board-game/d2-board-game/types.ts +4 -4
  200. package/src/board-game/dice.ts +1 -1
  201. package/src/board-game/index.ts +28 -28
  202. package/src/cards-game/cards-game-master.ts +19 -16
  203. package/src/cards-game/cards-player.ts +2 -1
  204. package/src/cards-game/index.ts +0 -2
  205. package/src/index.ts +1 -1
  206. package/src/tests/just-black-jack/domain/black-jack-dealer.ts +15 -0
  207. package/src/tests/just-black-jack/domain/black-jack-game-master.ts +103 -0
  208. package/src/tests/just-black-jack/domain/black-jack-player.ts +27 -0
  209. package/src/tests/just-black-jack/helpers/calculate-result.test.ts +49 -0
  210. package/src/tests/just-black-jack/helpers/calculate-result.ts +34 -0
  211. package/src/tests/just-black-jack/rooms/black-jack-simple-room.ts +10 -0
  212. package/src/tests/just-black-jack/tests/black-jack-simple-room.test.ts +75 -0
  213. package/src/tests/just-black-jack/tests/common.ts +63 -0
  214. package/dist/cards-game/cards-table.d.ts +0 -11
  215. package/dist/cards-game/cards-table.d.ts.map +0 -1
  216. package/dist/cards-game/cards-table.js +0 -20
  217. package/dist/cards-game/cards-table.js.map +0 -1
  218. package/src/cards-game/cards-table.ts +0 -28
@@ -1,111 +1,171 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TournamentRoom = void 0;
4
- const lodash_1 = require("lodash");
5
- const base_1 = require("../base");
6
- const tournament_state_1 = require("./tournament-state");
7
- class TournamentRoom extends base_1.GameRoom {
8
- constructor(config) {
9
- super(config);
10
- this.state = new tournament_state_1.TournamentState();
11
- this.ticketPrice = config.ticketPrice;
12
- this.prizeTable = config.prizeTable;
13
- this.queue = [];
14
- this.userRating = [];
15
- this.winners = [];
16
- this.participants = [];
17
- }
18
- getParticipants() {
19
- return this.participants;
20
- }
21
- addParticipant(participant) {
22
- return this.participants.push({
23
- userId: participant.getId(),
24
- userName: participant.getFullName(),
25
- userAvatarUrl: participant.getAvatarUrl(),
26
- });
27
- }
28
- getParticipant(userId) {
29
- return this.participants.find((item) => item.userId === userId);
30
- }
31
- isParticipant(userId) {
32
- return !!this.participants.find((item) => item.userId === userId);
33
- }
34
- getQueue() {
35
- return this.queue;
36
- }
37
- getOnlineQueuers() {
38
- return this.queue.filter((item) => item.hasOpenConnection());
39
- }
40
- addUserRoomToQueue(player) {
41
- const hasThisUser = this.queue.find((queuer) => queuer.getId() === player.getId());
42
- if (!hasThisUser) {
43
- player.getInTournamentQueue(this.getId());
44
- this.queue.push(player);
45
- }
46
- }
47
- removeUserFromQueue(player) {
48
- player.quit();
49
- (0, lodash_1.remove)(this.queue, (queuer) => queuer.getId() === player.getId());
50
- }
51
- clearQueue() {
52
- this.queue.forEach((player) => player.quit());
53
- this.queue = [];
54
- }
55
- getRatingList() {
56
- return this.userRating;
57
- }
58
- addPlayerToRating(player) {
59
- var _a;
60
- (0, lodash_1.remove)(this.userRating, (user) => player.getId() === user.userId);
61
- this.userRating.push({
62
- userId: player.getId(),
63
- userName: player.getFullName(),
64
- userAvatarUrl: (_a = player.getAvatarUrl()) !== null && _a !== void 0 ? _a : '',
65
- prize: 0,
66
- rank: 0,
67
- });
68
- }
69
- getWinner() {
70
- return (0, lodash_1.first)(this.winners);
71
- }
72
- getWinners() {
73
- return this.winners;
74
- }
75
- setWinners(winners) {
76
- this.winners = winners;
77
- }
78
- getState() {
79
- return this.state;
80
- }
81
- isTournament() {
82
- return true;
83
- }
84
- calculateWinners() {
85
- const firstTen = this.getSortedRatingList();
86
- const winners = [];
87
- for (let i = 0; i < firstTen.length; i += 1) {
88
- const ratingUser = firstTen[i];
89
- const rank = i + 1;
90
- const prize = this.getPrize(rank);
91
- winners.push(Object.assign(Object.assign({}, ratingUser), { prize,
92
- rank }));
93
- }
94
- this.setWinners(winners);
95
- }
96
- getSortedRatingList() {
97
- return (0, lodash_1.reverse)(this.getRatingList());
98
- }
99
- getTournamentFund() {
100
- return this.participants.length * this.ticketPrice;
101
- }
102
- getPrize(rank) {
103
- var _a;
104
- const allPlayersCount = this.getRatingList().length;
105
- const prize = this.prizeTable.find((item) => allPlayersCount >= item.minPlayers && allPlayersCount <= item.maxPlayers);
106
- const rankPrize = (_a = prize === null || prize === void 0 ? void 0 : prize.prizes[rank]) !== null && _a !== void 0 ? _a : 0;
107
- return rankPrize * this.getTournamentFund() / 100;
108
- }
109
- }
110
- exports.TournamentRoom = TournamentRoom;
2
+ // import { first, remove, reverse } from 'lodash';
3
+ //
4
+ // import { GamePlayer, GameRoom } from '../base';
5
+ // import { IGameTable } from '../base/game-table';
6
+ // import { GameRoomConfig } from '../base/game-room';
7
+ //
8
+ // import { TournamentState } from './tournament-state';
9
+ // import { ITournamentWinner } from './tournament-winner';
10
+ // import { ITournamentParticipant } from './tournament-participant';
11
+ // import { TournamentPrizes } from './tournament-prize';
12
+ //
13
+ // export type TournamentRoomConfig = {
14
+ // ticketPrice: number;
15
+ // prizeTable: TournamentPrizes;
16
+ // } & GameRoomConfig
17
+ //
18
+ // export abstract class TournamentRoom<
19
+ // GT extends IGameTable<GP>,
20
+ // GP extends GamePlayer,
21
+ // > extends GameRoom<GT, GP> {
22
+ // private readonly state: TournamentState;
23
+ // private readonly prizeTable: TournamentPrizes;
24
+ // private queue: Array<GP>;
25
+ // private readonly userRating: Array<ITournamentWinner>;
26
+ // private winners: Array<ITournamentWinner>;
27
+ // private readonly participants: Array<ITournamentParticipant>;
28
+ // private readonly ticketPrice: number;
29
+ //
30
+ // constructor (config: TournamentRoomConfig) {
31
+ // super(config);
32
+ // this.state = new TournamentState();
33
+ // this.ticketPrice = config.ticketPrice;
34
+ // this.prizeTable = config.prizeTable;
35
+ // this.queue = [];
36
+ // this.userRating = [];
37
+ // this.winners = [];
38
+ // this.participants = [];
39
+ // }
40
+ //
41
+ // abstract handleJoinTournament (player: GP);
42
+ //
43
+ // abstract handleLeaveTournament (player: GP);
44
+ //
45
+ // abstract startTournament ();
46
+ //
47
+ // abstract finishTournament ();
48
+ //
49
+ // abstract isTournamentFinish (): boolean;
50
+ //
51
+ // getParticipants () {
52
+ // return this.participants;
53
+ // }
54
+ //
55
+ // addParticipant (participant: GP) {
56
+ // return this.participants.push({
57
+ // userId: participant.getId(),
58
+ // userName: participant.getFullName(),
59
+ // userAvatarUrl: participant.getAvatarUrl(),
60
+ // });
61
+ // }
62
+ //
63
+ // getParticipant (userId: string) {
64
+ // return this.participants.find((item) => item.userId === userId);
65
+ // }
66
+ //
67
+ // isParticipant (userId: string): boolean {
68
+ // return !!this.participants.find((item) => item.userId === userId);
69
+ // }
70
+ //
71
+ // getQueue () {
72
+ // return this.queue;
73
+ // }
74
+ //
75
+ // getOnlineQueuers () {
76
+ // return this.queue.filter((item) => item.hasOpenConnection());
77
+ // }
78
+ //
79
+ // addUserRoomToQueue (player: GP) {
80
+ // const hasThisUser = this.queue.find((queuer) => queuer.getId() === player.getId());
81
+ // if (!hasThisUser) {
82
+ // player.getInTournamentQueue(this.getId());
83
+ // this.queue.push(player);
84
+ // }
85
+ // }
86
+ //
87
+ // removeUserFromQueue (player: GP) {
88
+ // player.quit();
89
+ // remove(this.queue, (queuer) => queuer.getId() === player.getId());
90
+ // }
91
+ //
92
+ // clearQueue () {
93
+ // this.queue.forEach((player) => player.quit());
94
+ // this.queue = [];
95
+ // }
96
+ //
97
+ // getRatingList () {
98
+ // return this.userRating;
99
+ // }
100
+ //
101
+ // addPlayerToRating (player: GP) {
102
+ // remove(this.userRating, (user) => player.getId() === user.userId);
103
+ //
104
+ // this.userRating.push({
105
+ // userId: player.getId(),
106
+ // userName: player.getFullName(),
107
+ // userAvatarUrl: player.getAvatarUrl() ?? '',
108
+ // prize: 0,
109
+ // rank: 0,
110
+ // });
111
+ // }
112
+ //
113
+ // getWinner (): ITournamentWinner | undefined {
114
+ // return first(this.winners);
115
+ // }
116
+ //
117
+ // getWinners () {
118
+ // return this.winners;
119
+ // }
120
+ //
121
+ // setWinners (winners: Array<ITournamentWinner>) {
122
+ // this.winners = winners;
123
+ // }
124
+ //
125
+ // getState (): TournamentState {
126
+ // return this.state;
127
+ // }
128
+ //
129
+ // isTournament (): boolean {
130
+ // return true;
131
+ // }
132
+ //
133
+ // calculateWinners () {
134
+ // const firstTen = this.getSortedRatingList();
135
+ // const winners: Array<ITournamentWinner> = [];
136
+ //
137
+ // for (let i = 0; i < firstTen.length; i += 1) {
138
+ // const ratingUser = firstTen[i];
139
+ // const rank = i + 1;
140
+ // const prize = this.getPrize(rank);
141
+ //
142
+ // winners.push({
143
+ // ...ratingUser,
144
+ // prize,
145
+ // rank,
146
+ // });
147
+ // }
148
+ //
149
+ // this.setWinners(winners);
150
+ // }
151
+ //
152
+ // getSortedRatingList (): Array<ITournamentWinner> {
153
+ // return reverse(this.getRatingList());
154
+ // }
155
+ //
156
+ // getTournamentFund (): number {
157
+ // return this.participants.length * this.ticketPrice;
158
+ // }
159
+ //
160
+ // getPrize (rank: number): number {
161
+ // const allPlayersCount = this.getRatingList().length;
162
+ //
163
+ // const prize = this.prizeTable.find((item) =>
164
+ // allPlayersCount >= item.minPlayers && allPlayersCount <= item.maxPlayers);
165
+ //
166
+ // const rankPrize = prize?.prizes[rank] ?? 0;
167
+ //
168
+ // return rankPrize * this.getTournamentFund() / 100;
169
+ // }
170
+ // }
111
171
  //# sourceMappingURL=tournament-room.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tournament-room.js","sourceRoot":"","sources":["../../src/base-rooms/tournament-room.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tournament-room.js","sourceRoot":"","sources":["../../src/base-rooms/tournament-room.ts"],"names":[],"mappings":";AAAA,mDAAmD;AACnD,EAAE;AACF,kDAAkD;AAClD,mDAAmD;AACnD,sDAAsD;AACtD,EAAE;AACF,wDAAwD;AACxD,2DAA2D;AAC3D,qEAAqE;AACrE,yDAAyD;AACzD,EAAE;AACF,uCAAuC;AACvC,2BAA2B;AAC3B,oCAAoC;AACpC,qBAAqB;AACrB,EAAE;AACF,wCAAwC;AACxC,iCAAiC;AACjC,6BAA6B;AAC7B,+BAA+B;AAC/B,+CAA+C;AAC/C,qDAAqD;AACrD,gCAAgC;AAChC,6DAA6D;AAC7D,iDAAiD;AACjD,oEAAoE;AACpE,4CAA4C;AAC5C,EAAE;AACF,mDAAmD;AACnD,yBAAyB;AACzB,8CAA8C;AAC9C,iDAAiD;AACjD,+CAA+C;AAC/C,2BAA2B;AAC3B,gCAAgC;AAChC,6BAA6B;AAC7B,kCAAkC;AAClC,QAAQ;AACR,EAAE;AACF,kDAAkD;AAClD,EAAE;AACF,mDAAmD;AACnD,EAAE;AACF,mCAAmC;AACnC,EAAE;AACF,oCAAoC;AACpC,EAAE;AACF,+CAA+C;AAC/C,EAAE;AACF,2BAA2B;AAC3B,oCAAoC;AACpC,QAAQ;AACR,EAAE;AACF,yCAAyC;AACzC,0CAA0C;AAC1C,2CAA2C;AAC3C,mDAAmD;AACnD,yDAAyD;AACzD,cAAc;AACd,QAAQ;AACR,EAAE;AACF,wCAAwC;AACxC,2EAA2E;AAC3E,QAAQ;AACR,EAAE;AACF,gDAAgD;AAChD,6EAA6E;AAC7E,QAAQ;AACR,EAAE;AACF,oBAAoB;AACpB,6BAA6B;AAC7B,QAAQ;AACR,EAAE;AACF,4BAA4B;AAC5B,wEAAwE;AACxE,QAAQ;AACR,EAAE;AACF,wCAAwC;AACxC,8FAA8F;AAC9F,8BAA8B;AAC9B,yDAAyD;AACzD,uCAAuC;AACvC,YAAY;AACZ,QAAQ;AACR,EAAE;AACF,yCAAyC;AACzC,yBAAyB;AACzB,6EAA6E;AAC7E,QAAQ;AACR,EAAE;AACF,sBAAsB;AACtB,yDAAyD;AACzD,2BAA2B;AAC3B,QAAQ;AACR,EAAE;AACF,yBAAyB;AACzB,kCAAkC;AAClC,QAAQ;AACR,EAAE;AACF,uCAAuC;AACvC,6EAA6E;AAC7E,EAAE;AACF,iCAAiC;AACjC,sCAAsC;AACtC,8CAA8C;AAC9C,0DAA0D;AAC1D,wBAAwB;AACxB,uBAAuB;AACvB,cAAc;AACd,QAAQ;AACR,EAAE;AACF,oDAAoD;AACpD,sCAAsC;AACtC,QAAQ;AACR,EAAE;AACF,sBAAsB;AACtB,+BAA+B;AAC/B,QAAQ;AACR,EAAE;AACF,uDAAuD;AACvD,kCAAkC;AAClC,QAAQ;AACR,EAAE;AACF,qCAAqC;AACrC,6BAA6B;AAC7B,QAAQ;AACR,EAAE;AACF,iCAAiC;AACjC,uBAAuB;AACvB,QAAQ;AACR,EAAE;AACF,4BAA4B;AAC5B,uDAAuD;AACvD,wDAAwD;AACxD,EAAE;AACF,yDAAyD;AACzD,8CAA8C;AAC9C,kCAAkC;AAClC,iDAAiD;AACjD,EAAE;AACF,6BAA6B;AAC7B,iCAAiC;AACjC,yBAAyB;AACzB,wBAAwB;AACxB,kBAAkB;AAClB,YAAY;AACZ,EAAE;AACF,oCAAoC;AACpC,QAAQ;AACR,EAAE;AACF,yDAAyD;AACzD,gDAAgD;AAChD,QAAQ;AACR,EAAE;AACF,qCAAqC;AACrC,8DAA8D;AAC9D,QAAQ;AACR,EAAE;AACF,wCAAwC;AACxC,+DAA+D;AAC/D,EAAE;AACF,uDAAuD;AACvD,yFAAyF;AACzF,EAAE;AACF,sDAAsD;AACtD,EAAE;AACF,6DAA6D;AAC7D,QAAQ;AACR,IAAI"}
@@ -1,4 +1,4 @@
1
- import { GameStateMachine } from '../base/game-state-machine';
1
+ import { GameStateMachine } from '../base';
2
2
  export declare enum TournamentStateMachineStates {
3
3
  STATE_WAITING_FOR_START = "STATE_WAITING_FOR_START",
4
4
  STATE_IN_PROGRESS = "STATE_IN_PROGRESS",
@@ -10,7 +10,7 @@ export declare enum TournamentStateMachineActions {
10
10
  ACTION_FINISH = "ACTION_FINISH",
11
11
  ACTION_CANCEL = "ACTION_CANCEL"
12
12
  }
13
- export declare class TournamentState extends GameStateMachine<TournamentStateMachineStates, TournamentStateMachineActions> {
13
+ export declare class TournamentState extends GameStateMachine {
14
14
  constructor();
15
15
  isWaiting(): boolean;
16
16
  isCancelled(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"tournament-state.d.ts","sourceRoot":"","sources":["../../src/base-rooms/tournament-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAsB,MAAM,4BAA4B,CAAC;AAElF,oBAAY,4BAA4B;IACpC,uBAAuB,4BAA4B;IACnD,iBAAiB,sBAAsB;IACvC,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;CACtC;AAED,oBAAY,6BAA6B;IACrC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;CAClC;AAgCD,qBAAa,eAAgB,SAAQ,gBAAgB,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;;IAK9G,SAAS;IAIT,WAAW;IAIX,YAAY;IAIZ,UAAU;IAIV,OAAO;IAIP,QAAQ;IAIR,QAAQ;CAGX"}
1
+ {"version":3,"file":"tournament-state.d.ts","sourceRoot":"","sources":["../../src/base-rooms/tournament-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAsB,MAAM,SAAS,CAAC;AAE/D,oBAAY,4BAA4B;IACpC,uBAAuB,4BAA4B;IACnD,iBAAiB,sBAAsB;IACvC,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;CACtC;AAED,oBAAY,6BAA6B;IACrC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;CAClC;AAgCD,qBAAa,eAAgB,SAAQ,gBAAgB;;IAKjD,SAAS;IAIT,WAAW;IAIX,YAAY;IAIZ,UAAU;IAIV,OAAO;IAIP,QAAQ;IAIR,QAAQ;CAGX"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TournamentState = exports.TournamentStateMachineActions = exports.TournamentStateMachineStates = void 0;
4
- const game_state_machine_1 = require("../base/game-state-machine");
4
+ const base_1 = require("../base");
5
5
  var TournamentStateMachineStates;
6
6
  (function (TournamentStateMachineStates) {
7
7
  TournamentStateMachineStates["STATE_WAITING_FOR_START"] = "STATE_WAITING_FOR_START";
@@ -33,7 +33,7 @@ const config = {
33
33
  [STATE_FINISHED]: { on: {} },
34
34
  [STATE_CANCELLED]: { on: {} },
35
35
  };
36
- class TournamentState extends game_state_machine_1.GameStateMachine {
36
+ class TournamentState extends base_1.GameStateMachine {
37
37
  constructor() {
38
38
  super(TournamentStateMachineStates.STATE_WAITING_FOR_START, config);
39
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tournament-state.js","sourceRoot":"","sources":["../../src/base-rooms/tournament-state.ts"],"names":[],"mappings":";;;AAAA,mEAAkF;AAElF,IAAY,4BAKX;AALD,WAAY,4BAA4B;IACpC,mFAAmD,CAAA;IACnD,uEAAuC,CAAA;IACvC,iEAAiC,CAAA;IACjC,mEAAmC,CAAA;AACvC,CAAC,EALW,4BAA4B,4CAA5B,4BAA4B,QAKvC;AAED,IAAY,6BAIX;AAJD,WAAY,6BAA6B;IACrC,8DAA6B,CAAA;IAC7B,gEAA+B,CAAA;IAC/B,gEAA+B,CAAA;AACnC,CAAC,EAJW,6BAA6B,6CAA7B,6BAA6B,QAIxC;AAED,MAAM,EACF,uBAAuB,EACvB,eAAe,EACf,cAAc,EACd,iBAAiB,GACpB,GAAG,4BAA4B,CAAC;AAEjC,MAAM,EACF,aAAa,EACb,aAAa,EACb,YAAY,EACf,GAAG,6BAA6B,CAAC;AAElC,MAAM,MAAM,GAAuB;IAC/B,CAAC,uBAAuB,CAAC,EAAE;QACvB,EAAE,EAAE;YACA,CAAC,YAAY,CAAC,EAAE,iBAAiB;YACjC,CAAC,aAAa,CAAC,EAAE,eAAe;SACnC;KACJ;IACD,CAAC,iBAAiB,CAAC,EAAE;QACjB,EAAE,EAAE;YACA,CAAC,aAAa,CAAC,EAAE,cAAc;YAC/B,CAAC,aAAa,CAAC,EAAE,eAAe;SACnC;KACJ;IACD,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IAC5B,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;CAChC,CAAC;AAEF,MAAa,eAAgB,SAAQ,qCAA6E;IAC9G;QACI,KAAK,CAAC,4BAA4B,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,4BAA4B,CAAC,uBAAuB,CAAC;IAC3F,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,4BAA4B,CAAC,eAAe,CAAC;IACnF,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,4BAA4B,CAAC,iBAAiB,CAAC;IACrF,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,4BAA4B,CAAC,cAAc,CAAC;IAClF,CAAC;IAED,OAAO;QACH,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC;IAC3D,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC;IAC3D,CAAC;CACJ;AAhCD,0CAgCC"}
1
+ {"version":3,"file":"tournament-state.js","sourceRoot":"","sources":["../../src/base-rooms/tournament-state.ts"],"names":[],"mappings":";;;AAAA,kCAA+D;AAE/D,IAAY,4BAKX;AALD,WAAY,4BAA4B;IACpC,mFAAmD,CAAA;IACnD,uEAAuC,CAAA;IACvC,iEAAiC,CAAA;IACjC,mEAAmC,CAAA;AACvC,CAAC,EALW,4BAA4B,4CAA5B,4BAA4B,QAKvC;AAED,IAAY,6BAIX;AAJD,WAAY,6BAA6B;IACrC,8DAA6B,CAAA;IAC7B,gEAA+B,CAAA;IAC/B,gEAA+B,CAAA;AACnC,CAAC,EAJW,6BAA6B,6CAA7B,6BAA6B,QAIxC;AAED,MAAM,EACF,uBAAuB,EACvB,eAAe,EACf,cAAc,EACd,iBAAiB,GACpB,GAAG,4BAA4B,CAAC;AAEjC,MAAM,EACF,aAAa,EACb,aAAa,EACb,YAAY,EACf,GAAG,6BAA6B,CAAC;AAElC,MAAM,MAAM,GAAuB;IAC/B,CAAC,uBAAuB,CAAC,EAAE;QACvB,EAAE,EAAE;YACA,CAAC,YAAY,CAAC,EAAE,iBAAiB;YACjC,CAAC,aAAa,CAAC,EAAE,eAAe;SACnC;KACJ;IACD,CAAC,iBAAiB,CAAC,EAAE;QACjB,EAAE,EAAE;YACA,CAAC,aAAa,CAAC,EAAE,cAAc;YAC/B,CAAC,aAAa,CAAC,EAAE,eAAe;SACnC;KACJ;IACD,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;IAC5B,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;CAChC,CAAC;AAEF,MAAa,eAAgB,SAAQ,uBAAgB;IACjD;QACI,KAAK,CAAC,4BAA4B,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,4BAA4B,CAAC,uBAAuB,CAAC;IAC3F,CAAC;IAED,WAAW;QACP,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,4BAA4B,CAAC,eAAe,CAAC;IACnF,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,4BAA4B,CAAC,iBAAiB,CAAC;IACrF,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,4BAA4B,CAAC,cAAc,CAAC;IAClF,CAAC;IAED,OAAO;QACH,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC;IAC3D,CAAC;IAED,QAAQ;QACJ,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC;IAC3D,CAAC;CACJ;AAhCD,0CAgCC"}
@@ -1,16 +1 @@
1
- import { BoardFigure } from './board-figure';
2
- export declare class BoardCell<BF extends BoardFigure> {
3
- private readonly id;
4
- private readonly figures;
5
- constructor(id: number);
6
- getId(): number;
7
- getFigures(): Array<BF>;
8
- getFigure(): BF | null;
9
- addFigure(figure: BF): void;
10
- hasFigure(): boolean;
11
- popFigure(): BF | undefined;
12
- isFree(): boolean;
13
- hasYoursFigure(color: number): boolean;
14
- hasEnemiesFigure(color: number): boolean;
15
- }
16
1
  //# sourceMappingURL=board-cell.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"board-cell.d.ts","sourceRoot":"","sources":["../../../src/board-game/base/board-cell.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,qBAAa,SAAS,CAAC,EAAE,SAAS,WAAW;IACzC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAY;gBAEvB,EAAE,EAAE,MAAM;IAKvB,KAAK,IAAK,MAAM;IAIhB,UAAU,IAAK,KAAK,CAAC,EAAE,CAAC;IAIxB,SAAS,IAAK,EAAE,GAAG,IAAI;IAIvB,SAAS,CAAE,MAAM,EAAE,EAAE,GAAG,IAAI;IAK5B,SAAS,IAAK,OAAO;IAIrB,SAAS,IAAK,EAAE,GAAG,SAAS;IAI5B,MAAM;IAIN,cAAc,CAAE,KAAK,EAAE,MAAM;IAI7B,gBAAgB,CAAE,KAAK,EAAE,MAAM;CAGlC"}
1
+ {"version":3,"file":"board-cell.d.ts","sourceRoot":"","sources":["../../../src/board-game/base/board-cell.ts"],"names":[],"mappings":""}
@@ -1,42 +1,52 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BoardCell = void 0;
4
- const lodash_1 = require("lodash");
5
- class BoardCell {
6
- constructor(id) {
7
- this.id = id;
8
- this.figures = [];
9
- }
10
- getId() {
11
- return this.id;
12
- }
13
- getFigures() {
14
- return this.figures;
15
- }
16
- getFigure() {
17
- var _a;
18
- return (_a = (0, lodash_1.last)(this.figures)) !== null && _a !== void 0 ? _a : null;
19
- }
20
- addFigure(figure) {
21
- this.figures.push(figure);
22
- figure.addCell(this.getId());
23
- }
24
- hasFigure() {
25
- return this.figures.length > 0;
26
- }
27
- popFigure() {
28
- return this.figures.pop();
29
- }
30
- isFree() {
31
- return this.figures.length === 0;
32
- }
33
- hasYoursFigure(color) {
34
- var _a;
35
- return ((_a = this.getFigure()) === null || _a === void 0 ? void 0 : _a.getColor()) === color;
36
- }
37
- hasEnemiesFigure(color) {
38
- return this.hasFigure() && !this.hasYoursFigure(color);
39
- }
40
- }
41
- exports.BoardCell = BoardCell;
2
+ // import { last } from 'lodash';
3
+ //
4
+ // import { BoardFigure } from './board-figure';
5
+ //
6
+ // export class BoardCell<BF extends BoardFigure> {
7
+ // private readonly id: number;
8
+ // private readonly figures: Array<BF>;
9
+ //
10
+ // constructor (id: number) {
11
+ // this.id = id;
12
+ // this.figures = [];
13
+ // }
14
+ //
15
+ // getId (): number {
16
+ // return this.id;
17
+ // }
18
+ //
19
+ // getFigures (): Array<BF> {
20
+ // return this.figures;
21
+ // }
22
+ //
23
+ // getFigure (): BF | null {
24
+ // return last(this.figures) ?? null;
25
+ // }
26
+ //
27
+ // addFigure (figure: BF): void {
28
+ // this.figures.push(figure);
29
+ // figure.addCell(this.getId());
30
+ // }
31
+ //
32
+ // hasFigure (): boolean {
33
+ // return this.figures.length > 0;
34
+ // }
35
+ //
36
+ // popFigure (): BF | undefined {
37
+ // return this.figures.pop();
38
+ // }
39
+ //
40
+ // isFree () {
41
+ // return this.figures.length === 0;
42
+ // }
43
+ //
44
+ // hasYoursFigure (color: number) {
45
+ // return this.getFigure()?.getColor() === color;
46
+ // }
47
+ //
48
+ // hasEnemiesFigure (color: number) {
49
+ // return this.hasFigure() && !this.hasYoursFigure(color);
50
+ // }
51
+ // }
42
52
  //# sourceMappingURL=board-cell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"board-cell.js","sourceRoot":"","sources":["../../../src/board-game/base/board-cell.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAI9B,MAAa,SAAS;IAIlB,YAAa,EAAU;QACnB,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,KAAK;QACD,OAAO,IAAI,CAAC,EAAE,CAAC;IACnB,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,SAAS;;QACL,OAAO,MAAA,IAAA,aAAI,EAAC,IAAI,CAAC,OAAO,CAAC,mCAAI,IAAI,CAAC;IACtC,CAAC;IAED,SAAS,CAAE,MAAU;QACjB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,SAAS;QACL,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,cAAc,CAAE,KAAa;;QACzB,OAAO,CAAA,MAAA,IAAI,CAAC,SAAS,EAAE,0CAAE,QAAQ,EAAE,MAAK,KAAK,CAAC;IAClD,CAAC;IAED,gBAAgB,CAAE,KAAa;QAC3B,OAAO,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC;CACJ;AA7CD,8BA6CC"}
1
+ {"version":3,"file":"board-cell.js","sourceRoot":"","sources":["../../../src/board-game/base/board-cell.ts"],"names":[],"mappings":";AAAA,iCAAiC;AACjC,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,mDAAmD;AACnD,mCAAmC;AACnC,2CAA2C;AAC3C,EAAE;AACF,iCAAiC;AACjC,wBAAwB;AACxB,6BAA6B;AAC7B,QAAQ;AACR,EAAE;AACF,yBAAyB;AACzB,0BAA0B;AAC1B,QAAQ;AACR,EAAE;AACF,iCAAiC;AACjC,+BAA+B;AAC/B,QAAQ;AACR,EAAE;AACF,gCAAgC;AAChC,6CAA6C;AAC7C,QAAQ;AACR,EAAE;AACF,qCAAqC;AACrC,qCAAqC;AACrC,wCAAwC;AACxC,QAAQ;AACR,EAAE;AACF,8BAA8B;AAC9B,0CAA0C;AAC1C,QAAQ;AACR,EAAE;AACF,qCAAqC;AACrC,qCAAqC;AACrC,QAAQ;AACR,EAAE;AACF,kBAAkB;AAClB,4CAA4C;AAC5C,QAAQ;AACR,EAAE;AACF,uCAAuC;AACvC,yDAAyD;AACzD,QAAQ;AACR,EAAE;AACF,yCAAyC;AACzC,kEAAkE;AAClE,QAAQ;AACR,IAAI"}
@@ -1,16 +1 @@
1
- export declare abstract class BoardFigure {
2
- private readonly id;
3
- private readonly color;
4
- private readonly cells;
5
- constructor(id: number, color: number);
6
- abstract getType(): number;
7
- getId(): number;
8
- getColor(): number;
9
- getCells(): number[];
10
- getCell(): number;
11
- getState(): number;
12
- addCell(cellId: number): void;
13
- isWhite(): boolean;
14
- isBlack(): boolean;
15
- }
16
1
  //# sourceMappingURL=board-figure.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"board-figure.d.ts","sourceRoot":"","sources":["../../../src/board-game/base/board-figure.ts"],"names":[],"mappings":"AAIA,8BAAsB,WAAW;IAC7B,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;gBAEzB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAMtC,QAAQ,CAAC,OAAO,IAAK,MAAM;IAE3B,KAAK;IAIL,QAAQ;IAIR,QAAQ;IAIR,OAAO;IAIP,QAAQ;IAIR,OAAO,CAAE,MAAM,EAAE,MAAM;IAIvB,OAAO;IAIP,OAAO;CAGV"}
1
+ {"version":3,"file":"board-figure.d.ts","sourceRoot":"","sources":["../../../src/board-game/base/board-figure.ts"],"names":[],"mappings":""}
@@ -1,38 +1,51 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BoardFigure = void 0;
4
- const lodash_1 = require("lodash");
5
- const game_player_1 = require("../../base/game-player");
6
- class BoardFigure {
7
- constructor(id, color) {
8
- this.id = id;
9
- this.color = color;
10
- this.cells = [];
11
- }
12
- getId() {
13
- return this.id;
14
- }
15
- getColor() {
16
- return this.color;
17
- }
18
- getCells() {
19
- return this.cells;
20
- }
21
- getCell() {
22
- return (0, lodash_1.last)(this.cells);
23
- }
24
- getState() {
25
- return 0;
26
- }
27
- addCell(cellId) {
28
- this.cells.push(cellId);
29
- }
30
- isWhite() {
31
- return this.color === game_player_1.GamePlayerColor.WHITE;
32
- }
33
- isBlack() {
34
- return this.color === game_player_1.GamePlayerColor.BLACK;
35
- }
36
- }
37
- exports.BoardFigure = BoardFigure;
2
+ // import { last } from 'lodash';
3
+ //
4
+ // import { GamePlayerColor } from '../../base/game-player';
5
+ //
6
+ // export abstract class BoardFigure {
7
+ // private readonly id: number;
8
+ // private readonly color: number;
9
+ // private readonly cells: Array<number>;
10
+ //
11
+ // constructor (id: number, color: number) {
12
+ // this.id = id;
13
+ // this.color = color;
14
+ // this.cells = [];
15
+ // }
16
+ //
17
+ // abstract getType (): number;
18
+ //
19
+ // getId () {
20
+ // return this.id;
21
+ // }
22
+ //
23
+ // getColor () {
24
+ // return this.color;
25
+ // }
26
+ //
27
+ // getCells () {
28
+ // return this.cells;
29
+ // }
30
+ //
31
+ // getCell () {
32
+ // return last(this.cells);
33
+ // }
34
+ //
35
+ // getState () {
36
+ // return 0;
37
+ // }
38
+ //
39
+ // addCell (cellId: number) {
40
+ // this.cells.push(cellId);
41
+ // }
42
+ //
43
+ // isWhite () {
44
+ // return this.color === GamePlayerColor.WHITE;
45
+ // }
46
+ //
47
+ // isBlack () {
48
+ // return this.color === GamePlayerColor.BLACK;
49
+ // }
50
+ // }
38
51
  //# sourceMappingURL=board-figure.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"board-figure.js","sourceRoot":"","sources":["../../../src/board-game/base/board-figure.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAE9B,wDAAyD;AAEzD,MAAsB,WAAW;IAK7B,YAAa,EAAU,EAAE,KAAa;QAClC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IACpB,CAAC;IAID,KAAK;QACD,OAAO,IAAI,CAAC,EAAE,CAAC;IACnB,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,QAAQ;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,OAAO;QACH,OAAO,IAAA,aAAI,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,QAAQ;QACJ,OAAO,CAAC,CAAC;IACb,CAAC;IAED,OAAO,CAAE,MAAc;QACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,KAAK,KAAK,6BAAe,CAAC,KAAK,CAAC;IAChD,CAAC;IAED,OAAO;QACH,OAAO,IAAI,CAAC,KAAK,KAAK,6BAAe,CAAC,KAAK,CAAC;IAChD,CAAC;CACJ;AA5CD,kCA4CC"}
1
+ {"version":3,"file":"board-figure.js","sourceRoot":"","sources":["../../../src/board-game/base/board-figure.ts"],"names":[],"mappings":";AAAA,iCAAiC;AACjC,EAAE;AACF,4DAA4D;AAC5D,EAAE;AACF,sCAAsC;AACtC,mCAAmC;AACnC,sCAAsC;AACtC,6CAA6C;AAC7C,EAAE;AACF,gDAAgD;AAChD,wBAAwB;AACxB,8BAA8B;AAC9B,2BAA2B;AAC3B,QAAQ;AACR,EAAE;AACF,mCAAmC;AACnC,EAAE;AACF,iBAAiB;AACjB,0BAA0B;AAC1B,QAAQ;AACR,EAAE;AACF,oBAAoB;AACpB,6BAA6B;AAC7B,QAAQ;AACR,EAAE;AACF,oBAAoB;AACpB,6BAA6B;AAC7B,QAAQ;AACR,EAAE;AACF,mBAAmB;AACnB,mCAAmC;AACnC,QAAQ;AACR,EAAE;AACF,oBAAoB;AACpB,oBAAoB;AACpB,QAAQ;AACR,EAAE;AACF,iCAAiC;AACjC,mCAAmC;AACnC,QAAQ;AACR,EAAE;AACF,mBAAmB;AACnB,uDAAuD;AACvD,QAAQ;AACR,EAAE;AACF,mBAAmB;AACnB,uDAAuD;AACvD,QAAQ;AACR,IAAI"}
@@ -1,19 +1 @@
1
- import { GameMaster } from '../../base';
2
- import { IGameRound } from '../../base/game-round';
3
- import { BoardPlayer } from './board-player';
4
- import { IGameTable } from '../../base/game-table';
5
- import { KillingMove, KillingMoveResult } from '../d2-board-game/d2-board-pattern-move-figure';
6
- import { BoardCell } from './board-cell';
7
- import { BoardFigure } from './board-figure';
8
- export declare abstract class BoardGameMaster<GT extends IGameTable<GP>, GR extends IGameRound<GP>, GP extends BoardPlayer, GSR> extends GameMaster<GT, GR, GP, GSR> {
9
- private figuresCount;
10
- abstract initStartFigures(): any;
11
- abstract figuresStartPositions: Array<Array<number>>;
12
- setFiguresStartPositions(figures: Array<Array<number>>): void;
13
- findPath(possibleMoves: Array<KillingMoveResult>, movingFigureId: number | undefined, movingFigureNewPosition: number | undefined): KillingMove | undefined;
14
- killFigure(cell: BoardCell<BoardFigure> | null): void;
15
- isFinish(): boolean;
16
- getFiguresCount(): number;
17
- increaseFiguresCount(): void;
18
- }
19
1
  //# sourceMappingURL=board-game-master.d.ts.map