@gamepark/rules-api 6.27.0 → 6.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/Rules.d.ts CHANGED
@@ -139,4 +139,8 @@ export type PlayMoveContext = {
139
139
  * true if move is only played locally on a player's client
140
140
  */
141
141
  local?: boolean;
142
+ /**
143
+ * True if the move will not be kept in the game's history
144
+ */
145
+ transient?: boolean;
142
146
  };
package/dist/Undo.d.ts CHANGED
@@ -4,7 +4,7 @@ import { Action } from './Action';
4
4
  * The move undone is removed from the game history: the new game state results from applying all the remaining moves from the game setup.
5
5
  * Any direct consequences of the move (see {@link Action.consequences}) are also removed.
6
6
  */
7
- export interface Undo<Move = string, PlayerId = number> {
7
+ export interface Undo<Game, Move = string, PlayerId = number> {
8
8
  /**
9
9
  * This function allow an action to be undone, by the player that did it.
10
10
  *
@@ -13,6 +13,13 @@ export interface Undo<Move = string, PlayerId = number> {
13
13
  * @returns true if the action can be undone
14
14
  */
15
15
  canUndo(action: Action<Move, PlayerId>, consecutiveActions: Action<Move, PlayerId>[]): boolean;
16
+ /**
17
+ * When a move is undone, the game state is recalculated by playing all the moves from the beginning.
18
+ * Sometimes some changes are not in the move history: local rotations, opening popups, etc.
19
+ * This function allow to keep those changes after the game state has been recalculated.
20
+ * @param previousState State before the undo is applied
21
+ */
22
+ restoreTransientState?(previousState: Game): void;
16
23
  }
17
24
  /**
18
25
  * Type guard to know if a game implements the Undo feature.
@@ -20,4 +27,4 @@ export interface Undo<Move = string, PlayerId = number> {
20
27
  * @param rules Rules of the game
21
28
  * @returns true if rules implements {@link Undo}
22
29
  */
23
- export declare function hasUndo<Move, PlayerId>(rules: Object): rules is Undo<Move, PlayerId>;
30
+ export declare function hasUndo<Game, Move, PlayerId>(rules: Object): rules is Undo<Game, Move, PlayerId>;
package/dist/Undo.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Undo.js","sourceRoot":"","sources":["../src/Undo.ts"],"names":[],"mappings":";;;AAkBA;;;;;GAKG;AACH,SAAgB,OAAO,CAAiB,KAAa;IACnD,IAAM,IAAI,GAAG,KAA6B,CAAA;IAC1C,OAAO,OAAO,IAAI,CAAC,OAAO,KAAK,UAAU,CAAA;AAC3C,CAAC;AAHD,0BAGC"}
1
+ {"version":3,"file":"Undo.js","sourceRoot":"","sources":["../src/Undo.ts"],"names":[],"mappings":";;;AA0BA;;;;;GAKG;AACH,SAAgB,OAAO,CAAuB,KAAa;IACzD,IAAM,IAAI,GAAG,KAAmC,CAAA;IAChD,OAAO,OAAO,IAAI,CAAC,OAAO,KAAK,UAAU,CAAA;AAC3C,CAAC;AAHD,0BAGC"}
@@ -22,4 +22,5 @@ export type MaterialGame<Player extends number = number, MaterialType extends nu
22
22
  helpDisplay?: HelpDisplay<Player, MaterialType, LocationType>;
23
23
  droppedItem?: DisplayedItem<MaterialType>;
24
24
  tutorial?: TutorialState;
25
+ transientItems?: Partial<Record<MaterialType, number[]>>;
25
26
  };
@@ -21,7 +21,7 @@ import { MaterialRulesPart, MaterialRulesPartCreator } from './rules';
21
21
  * @typeparam MaterialType - Numeric enum of the types of material manipulated in the game
22
22
  * @typeparam LocationType - Numeric enum of the types of location in the game where the material can be located
23
23
  */
24
- export declare abstract class MaterialRules<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends Rules<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> implements RandomMove<MaterialMove<Player, MaterialType, LocationType>, MaterialMoveRandomized<Player, MaterialType, LocationType>, Player>, Undo<MaterialMove<Player, MaterialType, LocationType>, Player>, UnpredictableMoves<MaterialMove<Player, MaterialType, LocationType>>, TimeLimit<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> {
24
+ export declare abstract class MaterialRules<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends Rules<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> implements RandomMove<MaterialMove<Player, MaterialType, LocationType>, MaterialMoveRandomized<Player, MaterialType, LocationType>, Player>, Undo<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player>, UnpredictableMoves<MaterialMove<Player, MaterialType, LocationType>>, TimeLimit<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> {
25
25
  /**
26
26
  * When you implement a game using the "material" approach, you are also strongly advised to split the rules of the game into many small parts.
27
27
  * You should usually create a numeric enum class "RuleId" that will list all those small parts.
@@ -139,6 +139,10 @@ export declare abstract class MaterialRules<Player extends number = number, Mate
139
139
  */
140
140
  protected moveBlocksUndo(move: MaterialMove<Player, MaterialType, LocationType>): boolean;
141
141
  private moveActivatesPlayer;
142
+ /**
143
+ * Restore help display & local item moves
144
+ */
145
+ restoreTransientState(previousState: MaterialGame<Player, MaterialType, LocationType>): void;
142
146
  /**
143
147
  * Random moves, or moves that reveals something to me, are unpredictable.
144
148
  * Unpredictable moves cannot be precomputed on client side, the server side's response is necessary.
@@ -30,8 +30,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
30
30
  };
31
31
  Object.defineProperty(exports, "__esModule", { value: true });
32
32
  exports.MaterialRules = void 0;
33
+ var difference_1 = __importDefault(require("lodash/difference"));
33
34
  var random_1 = __importDefault(require("lodash/random"));
34
35
  var shuffle_1 = __importDefault(require("lodash/shuffle"));
36
+ var union_1 = __importDefault(require("lodash/union"));
35
37
  var Rules_1 = require("../Rules");
36
38
  var TimeLimit_1 = require("../TimeLimit");
37
39
  var items_1 = require("./items");
@@ -190,7 +192,7 @@ var MaterialRules = /** @class */ (function (_super) {
190
192
  var rulesStep = this.rulesStep;
191
193
  switch (move.kind) {
192
194
  case moves_1.MoveKind.ItemMove:
193
- if (rulesStep) {
195
+ if (rulesStep && !(context === null || context === void 0 ? void 0 : context.transient)) {
194
196
  consequences.push.apply(consequences, rulesStep.beforeItemMove(move, context));
195
197
  }
196
198
  if (!this.game.items[move.itemType])
@@ -201,7 +203,16 @@ var MaterialRules = /** @class */ (function (_super) {
201
203
  && this.game.droppedItem.type === move.itemType && move.itemIndex === this.game.droppedItem.index) {
202
204
  delete this.game.droppedItem;
203
205
  }
204
- if (rulesStep) {
206
+ var indexes = getItemMoveIndexes(move);
207
+ if (context === null || context === void 0 ? void 0 : context.transient) {
208
+ if (!this.game.transientItems)
209
+ this.game.transientItems = {};
210
+ this.game.transientItems[move.itemType] = (0, union_1.default)(this.game.transientItems[move.itemType], indexes);
211
+ }
212
+ else if (this.game.transientItems) {
213
+ this.game.transientItems[move.itemType] = (0, difference_1.default)(this.game.transientItems[move.itemType], indexes);
214
+ }
215
+ if (rulesStep && !(context === null || context === void 0 ? void 0 : context.transient)) {
205
216
  consequences.push.apply(consequences, rulesStep.afterItemMove(move, context));
206
217
  }
207
218
  break;
@@ -329,6 +340,20 @@ var MaterialRules = /** @class */ (function (_super) {
329
340
  MaterialRules.prototype.moveActivatesPlayer = function (move) {
330
341
  return (0, moves_1.isStartPlayerTurn)(move) || (0, moves_1.isStartSimultaneousRule)(move);
331
342
  };
343
+ /**
344
+ * Restore help display & local item moves
345
+ */
346
+ MaterialRules.prototype.restoreTransientState = function (previousState) {
347
+ var _this = this;
348
+ this.game.helpDisplay = previousState.helpDisplay;
349
+ this.game.transientItems = previousState.transientItems;
350
+ var _loop_1 = function (type) {
351
+ previousState.transientItems[type].forEach(function (index) { return _this.game.items[type][index] = previousState.items[type][index]; });
352
+ };
353
+ for (var type in previousState.transientItems) {
354
+ _loop_1(type);
355
+ }
356
+ };
332
357
  /**
333
358
  * Random moves, or moves that reveals something to me, are unpredictable.
334
359
  * Unpredictable moves cannot be precomputed on client side, the server side's response is necessary.
@@ -361,4 +386,19 @@ var MaterialRules = /** @class */ (function (_super) {
361
386
  return MaterialRules;
362
387
  }(Rules_1.Rules));
363
388
  exports.MaterialRules = MaterialRules;
389
+ function getItemMoveIndexes(move) {
390
+ switch (move.type) {
391
+ case moves_1.ItemMoveType.Move:
392
+ case moves_1.ItemMoveType.Delete:
393
+ case moves_1.ItemMoveType.Roll:
394
+ case moves_1.ItemMoveType.Select:
395
+ return [move.itemIndex];
396
+ case moves_1.ItemMoveType.MoveAtOnce:
397
+ case moves_1.ItemMoveType.DeleteAtOnce:
398
+ case moves_1.ItemMoveType.Shuffle:
399
+ return move.indexes;
400
+ default:
401
+ return [];
402
+ }
403
+ }
364
404
  //# sourceMappingURL=MaterialRules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialRules.js","sourceRoot":"","sources":["../../src/material/MaterialRules.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaterialRules.js","sourceRoot":"","sources":["../../src/material/MaterialRules.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@ export declare namespace MaterialMoveBuilder {
32
32
  /**
33
33
  * Creates a {@link DisplayHelp} object
34
34
  */
35
- const displayHelp: <P extends number = number, M extends number = number, L extends number = number>(helpDisplay: HelpDisplay<P, M, L>) => DisplayHelp<P, M, L>;
35
+ const displayHelp: <P extends number = number, M extends number = number, L extends number = number>(helpDisplay?: HelpDisplay<P, M, L>) => DisplayHelp<P, M, L>;
36
36
  /**
37
37
  * Creates a {@link DisplayHelp} object holding a {@link MaterialHelpDisplay}
38
38
  */
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialMoveBuilder.js","sourceRoot":"","sources":["../../../src/material/moves/MaterialMoveBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaterialMoveBuilder.js","sourceRoot":"","sources":["../../../src/material/moves/MaterialMoveBuilder.ts"],"names":[],"mappings":"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"}
@@ -44,5 +44,5 @@ export type RulesHelpDisplay<RuleId extends number = number> = {
44
44
  export type DisplayHelp<P extends number = number, M extends number = number, L extends number = number> = {
45
45
  kind: MoveKind.LocalMove;
46
46
  type: typeof LocalMoveType.DisplayHelp;
47
- helpDisplay: HelpDisplay<P, M, L>;
47
+ helpDisplay?: HelpDisplay<P, M, L>;
48
48
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gamepark/rules-api",
3
- "version": "6.27.0",
3
+ "version": "6.28.0",
4
4
  "description": "API to implement the rules of a board game",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",