@gamepark/rules-api 6.21.1 → 6.22.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.
@@ -14,7 +14,6 @@ export declare abstract class MaterialGameSetup<P extends number = number, M ext
14
14
  protected getMemory(player?: P): GameMemory<P> | PlayerMemory<P>;
15
15
  memorize<T = any>(key: keyof any, value: T | ((lastValue: T) => T), player?: P): void;
16
16
  abstract start(options: Options): void;
17
- private get rulesMovesBuilder();
18
17
  startPlayerTurn<RuleId extends number = number>(id: RuleId, player: P): void;
19
18
  startSimultaneousRule<RuleId extends number = number>(id: RuleId, players?: P[]): void;
20
19
  startRule<RuleId extends number = number>(id: RuleId): void;
@@ -44,21 +44,14 @@ var MaterialGameSetup = (function () {
44
44
  MaterialGameSetup.prototype.memorize = function (key, value, player) {
45
45
  this.getMemory(player).memorize(key, value);
46
46
  };
47
- Object.defineProperty(MaterialGameSetup.prototype, "rulesMovesBuilder", {
48
- get: function () {
49
- return new rules_1.MaterialRulesMovesBuilder(this.game);
50
- },
51
- enumerable: false,
52
- configurable: true
53
- });
54
47
  MaterialGameSetup.prototype.startPlayerTurn = function (id, player) {
55
- (0, Action_1.playMove)(this.rules, this.rulesMovesBuilder.startPlayerTurn(id, player));
48
+ (0, Action_1.playMove)(this.rules, rules_1.MaterialMoveBuilder.startPlayerTurn(id, player));
56
49
  };
57
50
  MaterialGameSetup.prototype.startSimultaneousRule = function (id, players) {
58
- (0, Action_1.playMove)(this.rules, this.rulesMovesBuilder.startSimultaneousRule(id, players));
51
+ (0, Action_1.playMove)(this.rules, rules_1.MaterialMoveBuilder.startSimultaneousRule(id, players));
59
52
  };
60
53
  MaterialGameSetup.prototype.startRule = function (id) {
61
- (0, Action_1.playMove)(this.rules, this.rulesMovesBuilder.startRule(id));
54
+ (0, Action_1.playMove)(this.rules, rules_1.MaterialMoveBuilder.startRule(id));
62
55
  };
63
56
  return MaterialGameSetup;
64
57
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialGameSetup.js","sourceRoot":"","sources":["../../src/material/MaterialGameSetup.ts"],"names":[],"mappings":";;;AAAA,oCAAoC;AAEpC,iCAAkC;AAGlC,mCAAmD;AACnD,iCAAmD;AAEnD;IAAA;QAKY,SAAI,GAA0B,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;IAmDhF,CAAC;IAjDC,sBAAI,oCAAK;aAAT;YACE,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClC,CAAC;;;OAAA;IAED,iCAAK,GAAL,UAAM,OAAgB;QACpB,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;QACrE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACnB,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IAED,sBAAI,sCAAO;aAAX;YACE,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA;QAC1B,CAAC;;;OAAA;IAED,yCAAa,GAAb,UAAc,QAAiB;IAC/B,CAAC;IAED,oCAAQ,GAAR,UAAS,IAAO;QAAhB,iBAIC;QAHC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;QACtD,IAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAE,CAAA;QACpC,OAAO,IAAI,gBAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,EAAvB,CAAuB,CAAC,EAAE,UAAA,IAAI,IAAI,OAAA,IAAA,iBAAQ,EAAC,KAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAA1B,CAA0B,CAAC,CAAA;IACrI,CAAC;IAES,qCAAS,GAAnB,UAAoB,MAAU;QAC5B,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,qBAAY,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC/F,CAAC;IAED,oCAAQ,GAAR,UAAkB,GAAc,EAAE,KAAgC,EAAE,MAAU;QAC5E,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAID,sBAAY,gDAAiB;aAA7B;YACE,OAAO,IAAI,iCAAyB,CAAU,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1D,CAAC;;;OAAA;IAED,2CAAe,GAAf,UAAgD,EAAU,EAAE,MAAS;QACnE,IAAA,iBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAA;IAC1E,CAAC;IAED,iDAAqB,GAArB,UAAsD,EAAU,EAAE,OAAa;QAC7E,IAAA,iBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;IACjF,CAAC;IAED,qCAAS,GAAT,UAA0C,EAAU;QAClD,IAAA,iBAAQ,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAA;IAC5D,CAAC;IACH,wBAAC;AAAD,CAAC,AAxDD,IAwDC;AAxDqB,8CAAiB;AA0DvC,SAAS,YAAY,CAAiC,OAAY;;IAChE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,UAAC,MAAW,EAAE,KAAa,YAAK,OAAA,MAAA,MAAM,CAAC,EAAE,mCAAI,KAAK,GAAG,CAAC,CAAA,EAAA,CAAC,CAAA;IACpF,CAAC;SAAM,CAAC;QACN,IAAM,eAAe,GAAG,MAAA,OAAO,CAAC,OAAO,mCAAI,CAAC,CAAA;QAC5C,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,UAAA,KAAK,IAAI,OAAA,CAAC,KAAK,GAAG,CAAC,CAAW,EAArB,CAAqB,CAAC,CAAA;IACtF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"MaterialGameSetup.js","sourceRoot":"","sources":["../../src/material/MaterialGameSetup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { CustomMove, EndGame, EndPlayerTurn, StartPlayerTurn, StartRule, StartSimultaneousRule } from '../moves';
2
+ export declare namespace MaterialMoveBuilder {
3
+ const startPlayerTurn: <P extends number = number, R extends number = number>(id: R, player: P) => StartPlayerTurn<P, R>;
4
+ const startSimultaneousRule: <P extends number = number, R extends number = number>(id: R, players?: P[]) => StartSimultaneousRule<P, R>;
5
+ const endPlayerTurn: <P extends number = number>(player: P) => EndPlayerTurn<P>;
6
+ const startRule: <R extends number = number>(id: R) => StartRule<R>;
7
+ const customMove: <Type extends number = number>(type: Type, data?: any) => CustomMove;
8
+ const endGame: () => EndGame;
9
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MaterialMoveBuilder = void 0;
4
+ var moves_1 = require("../moves");
5
+ var MaterialMoveBuilder;
6
+ (function (MaterialMoveBuilder) {
7
+ MaterialMoveBuilder.startPlayerTurn = function (id, player) {
8
+ return ({ kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartPlayerTurn, id: id, player: player });
9
+ };
10
+ MaterialMoveBuilder.startSimultaneousRule = function (id, players) {
11
+ var move = { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartSimultaneousRule, id: id };
12
+ if (players)
13
+ move.players = players;
14
+ return move;
15
+ };
16
+ MaterialMoveBuilder.endPlayerTurn = function (player) {
17
+ return ({ kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.EndPlayerTurn, player: player });
18
+ };
19
+ MaterialMoveBuilder.startRule = function (id) { return ({ kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartRule, id: id }); };
20
+ MaterialMoveBuilder.customMove = function (type, data) {
21
+ var move = { kind: moves_1.MoveKind.CustomMove, type: type };
22
+ if (data !== undefined)
23
+ move.data = data;
24
+ return move;
25
+ };
26
+ MaterialMoveBuilder.endGame = function () { return ({ kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.EndGame }); };
27
+ })(MaterialMoveBuilder || (exports.MaterialMoveBuilder = MaterialMoveBuilder = {}));
28
+ //# sourceMappingURL=MaterialMoveBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MaterialMoveBuilder.js","sourceRoot":"","sources":["../../../src/material/rules/MaterialMoveBuilder.ts"],"names":[],"mappings":";;;AAAA,kCAAwI;AAExI,IAAiB,mBAAmB,CAuBnC;AAvBD,WAAiB,mBAAmB;IAErB,mCAAe,GAAG,UAAuD,EAAK,EAAE,MAAS;QACpG,OAAA,CAAC,EAAE,IAAI,EAAE,gBAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,oBAAY,CAAC,eAAe,EAAE,EAAE,IAAA,EAAE,MAAM,QAAA,EAAE,CAAC;IAA9E,CAA8E,CAAA;IAEnE,yCAAqB,GAAG,UAAuD,EAAK,EAAE,OAAa;QAC9G,IAAM,IAAI,GAAgC,EAAE,IAAI,EAAE,gBAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,oBAAY,CAAC,qBAAqB,EAAE,EAAE,IAAA,EAAE,CAAA;QACpH,IAAI,OAAO;YAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACnC,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAEY,iCAAa,GAAG,UAA4B,MAAS;QAChE,OAAA,CAAC,EAAE,IAAI,EAAE,gBAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,oBAAY,CAAC,aAAa,EAAE,MAAM,QAAA,EAAE,CAAC;IAAxE,CAAwE,CAAA;IAE7D,6BAAS,GAAG,UAA4B,EAAK,IAAmB,OAAA,CAAC,EAAE,IAAI,EAAE,gBAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,oBAAY,CAAC,SAAS,EAAE,EAAE,IAAA,EAAE,CAAC,EAAhE,CAAgE,CAAA;IAEhI,8BAAU,GAAG,UAA+B,IAAU,EAAE,IAAU;QAC7E,IAAM,IAAI,GAAe,EAAE,IAAI,EAAE,gBAAQ,CAAC,UAAU,EAAE,IAAI,MAAA,EAAE,CAAA;QAC5D,IAAI,IAAI,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QACxC,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAEY,2BAAO,GAAG,cAAe,OAAA,CAAC,EAAE,IAAI,EAAE,gBAAQ,CAAC,SAAS,EAAE,IAAI,EAAE,oBAAY,CAAC,OAAO,EAAE,CAAC,EAA1D,CAA0D,CAAA;AAClG,CAAC,EAvBgB,mBAAmB,mCAAnB,mBAAmB,QAuBnC"}
@@ -3,7 +3,7 @@ import { Material } from '../items';
3
3
  import { MaterialGame } from '../MaterialGame';
4
4
  import { GameMemory, PlayerMemory } from '../memory';
5
5
  import { CustomMove, ItemMove, MaterialMove, RuleMove } from '../moves';
6
- import { MaterialRulesMovesBuilder } from './MaterialRulesMovesBuilder';
6
+ import { MaterialMoveBuilder } from './MaterialMoveBuilder';
7
7
  import { RuleStep } from './RuleStep';
8
8
  export declare abstract class MaterialRulesPart<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends Rules<MaterialGame<Player, MaterialType, LocationType>, MaterialMove<Player, MaterialType, LocationType>, Player> {
9
9
  material(type: MaterialType): Material<Player, MaterialType, LocationType>;
@@ -12,7 +12,12 @@ export declare abstract class MaterialRulesPart<Player extends number = number,
12
12
  onRuleStart<RuleId extends number>(_move: RuleMove<Player, RuleId>, _previousRule?: RuleStep, _context?: PlayMoveContext): MaterialMove<Player, MaterialType, LocationType>[];
13
13
  onRuleEnd<RuleId extends number>(_move: RuleMove<Player, RuleId>, _context?: PlayMoveContext): MaterialMove<Player, MaterialType, LocationType>[];
14
14
  onCustomMove(_move: CustomMove, _context?: PlayMoveContext): MaterialMove<Player, MaterialType, LocationType>[];
15
- rules(): MaterialRulesMovesBuilder<Player, MaterialType, LocationType>;
15
+ rules(): typeof MaterialMoveBuilder;
16
+ startPlayerTurn: <P extends number = number, R extends number = number>(id: R, player: P) => import("../moves").StartPlayerTurn<P, R>;
17
+ startSimultaneousRule: <P extends number = number, R extends number = number>(id: R, players?: P[] | undefined) => import("../moves").StartSimultaneousRule<P, R>;
18
+ startRule: <R extends number = number>(id: R) => import("../moves").StartRule<R>;
19
+ customMove: <Type extends number = number>(type: Type, data?: any) => CustomMove;
20
+ endGame: () => import("../moves").EndGame;
16
21
  protected getMemory(player?: Player): GameMemory<Player> | PlayerMemory<Player>;
17
22
  memorize<T = any>(key: keyof any, value: T | ((lastValue: T) => T), player?: Player): void;
18
23
  remind<T = any>(key: keyof any, player?: Player): T;
@@ -19,11 +19,17 @@ exports.MaterialRulesPart = void 0;
19
19
  var Rules_1 = require("../../Rules");
20
20
  var items_1 = require("../items");
21
21
  var memory_1 = require("../memory");
22
- var MaterialRulesMovesBuilder_1 = require("./MaterialRulesMovesBuilder");
22
+ var MaterialMoveBuilder_1 = require("./MaterialMoveBuilder");
23
23
  var MaterialRulesPart = (function (_super) {
24
24
  __extends(MaterialRulesPart, _super);
25
25
  function MaterialRulesPart() {
26
- return _super !== null && _super.apply(this, arguments) || this;
26
+ var _this = _super !== null && _super.apply(this, arguments) || this;
27
+ _this.startPlayerTurn = MaterialMoveBuilder_1.MaterialMoveBuilder.startPlayerTurn;
28
+ _this.startSimultaneousRule = MaterialMoveBuilder_1.MaterialMoveBuilder.startSimultaneousRule;
29
+ _this.startRule = MaterialMoveBuilder_1.MaterialMoveBuilder.startRule;
30
+ _this.customMove = MaterialMoveBuilder_1.MaterialMoveBuilder.customMove;
31
+ _this.endGame = MaterialMoveBuilder_1.MaterialMoveBuilder.endGame;
32
+ return _this;
27
33
  }
28
34
  MaterialRulesPart.prototype.material = function (type) {
29
35
  var _a;
@@ -45,7 +51,7 @@ var MaterialRulesPart = (function (_super) {
45
51
  return [];
46
52
  };
47
53
  MaterialRulesPart.prototype.rules = function () {
48
- return new MaterialRulesMovesBuilder_1.MaterialRulesMovesBuilder(this.game);
54
+ return MaterialMoveBuilder_1.MaterialMoveBuilder;
49
55
  };
50
56
  MaterialRulesPart.prototype.getMemory = function (player) {
51
57
  return player === undefined ? new memory_1.GameMemory(this.game) : new memory_1.PlayerMemory(this.game, player);
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialRulesPart.js","sourceRoot":"","sources":["../../../src/material/rules/MaterialRulesPart.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,qCAAoD;AACpD,kCAAmC;AAEnC,oCAAoD;AAEpD,yEAAuE;AAGvE;IACU,qCAAiH;IAD3H;;IA8CA,CAAC;IA3CC,oCAAQ,GAAR,UAAS,IAAkB;;QACzB,OAAO,IAAI,gBAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,EAAvB,CAAuB,CAAC,CAAC,CAAA;IACzH,CAAC;IAED,0CAAc,GAAd,UAAe,KAAmD,EAAE,QAA0B;QAC5F,OAAO,EAAE,CAAA;IACX,CAAC;IAED,yCAAa,GAAb,UAAc,KAAmD,EAAE,QAA0B;QAC3F,OAAO,EAAE,CAAA;IACX,CAAC;IAED,uCAAW,GAAX,UAAmC,KAA+B,EAAE,aAAwB,EAAE,QAA0B;QACtH,OAAO,EAAE,CAAA;IACX,CAAC;IAED,qCAAS,GAAT,UAAiC,KAA+B,EAAE,QAA0B;QAC1F,OAAO,EAAE,CAAA;IACX,CAAC;IAED,wCAAY,GAAZ,UAAa,KAAiB,EAAE,QAA0B;QACxD,OAAO,EAAE,CAAA;IACX,CAAC;IAED,iCAAK,GAAL;QACE,OAAO,IAAI,qDAAyB,CAAqC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrF,CAAC;IAES,qCAAS,GAAnB,UAAoB,MAAe;QACjC,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,qBAAY,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC/F,CAAC;IAED,oCAAQ,GAAR,UAAkB,GAAc,EAAE,KAAgC,EAAE,MAAe;QACjF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAED,kCAAM,GAAN,UAAgB,GAAc,EAAE,MAAe;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAC3C,CAAC;IAED,kCAAM,GAAN,UAAO,GAAc,EAAE,MAAe;QACpC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACpC,CAAC;IACH,wBAAC;AAAD,CAAC,AA9CD,CACU,aAAK,GA6Cd;AA9CqB,8CAAiB"}
1
+ {"version":3,"file":"MaterialRulesPart.js","sourceRoot":"","sources":["../../../src/material/rules/MaterialRulesPart.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,qCAAoD;AACpD,kCAAmC;AAEnC,oCAAoD;AAEpD,6DAA2D;AAG3D;IACU,qCAAiH;IAD3H;;QAkCE,qBAAe,GAAG,yCAAmB,CAAC,eAAe,CAAA;QACrD,2BAAqB,GAAG,yCAAmB,CAAC,qBAAqB,CAAA;QACjE,eAAS,GAAG,yCAAmB,CAAC,SAAS,CAAA;QACzC,gBAAU,GAAG,yCAAmB,CAAC,UAAU,CAAA;QAC3C,aAAO,GAAG,yCAAmB,CAAC,OAAO,CAAA;;IAiBvC,CAAC;IApDC,oCAAQ,GAAR,UAAS,IAAkB;;QACzB,OAAO,IAAI,gBAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,MAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mCAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,EAAvB,CAAuB,CAAC,CAAC,CAAA;IACzH,CAAC;IAED,0CAAc,GAAd,UAAe,KAAmD,EAAE,QAA0B;QAC5F,OAAO,EAAE,CAAA;IACX,CAAC;IAED,yCAAa,GAAb,UAAc,KAAmD,EAAE,QAA0B;QAC3F,OAAO,EAAE,CAAA;IACX,CAAC;IAED,uCAAW,GAAX,UAAmC,KAA+B,EAAE,aAAwB,EAAE,QAA0B;QACtH,OAAO,EAAE,CAAA;IACX,CAAC;IAED,qCAAS,GAAT,UAAiC,KAA+B,EAAE,QAA0B;QAC1F,OAAO,EAAE,CAAA;IACX,CAAC;IAED,wCAAY,GAAZ,UAAa,KAAiB,EAAE,QAA0B;QACxD,OAAO,EAAE,CAAA;IACX,CAAC;IAKD,iCAAK,GAAL;QACE,OAAO,yCAAmB,CAAA;IAC5B,CAAC;IAQS,qCAAS,GAAnB,UAAoB,MAAe;QACjC,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,mBAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,qBAAY,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC/F,CAAC;IAED,oCAAQ,GAAR,UAAkB,GAAc,EAAE,KAAgC,EAAE,MAAe;QACjF,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAED,kCAAM,GAAN,UAAgB,GAAc,EAAE,MAAe;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAC3C,CAAC;IAED,kCAAM,GAAN,UAAO,GAAc,EAAE,MAAe;QACpC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACpC,CAAC;IACH,wBAAC;AAAD,CAAC,AAvDD,CACU,aAAK,GAsDd;AAvDqB,8CAAiB"}
@@ -1,6 +1,7 @@
1
1
  import { MaterialMove } from '../moves';
2
2
  import { MaterialRulesPart } from './MaterialRulesPart';
3
3
  export declare abstract class SimultaneousRule<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends MaterialRulesPart<Player, MaterialType, LocationType> {
4
+ endPlayerTurn: <P extends number = number>(player: P) => import("../moves").EndPlayerTurn<P>;
4
5
  isTurnToPlay(player: Player): boolean;
5
6
  getLegalMoves(player: Player): MaterialMove<Player, MaterialType, LocationType>[];
6
7
  abstract getActivePlayerLegalMoves(playerId: Player): MaterialMove<Player, MaterialType, LocationType>[];
@@ -16,11 +16,14 @@ var __extends = (this && this.__extends) || (function () {
16
16
  })();
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.SimultaneousRule = void 0;
19
+ var MaterialMoveBuilder_1 = require("./MaterialMoveBuilder");
19
20
  var MaterialRulesPart_1 = require("./MaterialRulesPart");
20
21
  var SimultaneousRule = (function (_super) {
21
22
  __extends(SimultaneousRule, _super);
22
23
  function SimultaneousRule() {
23
- return _super !== null && _super.apply(this, arguments) || this;
24
+ var _this = _super !== null && _super.apply(this, arguments) || this;
25
+ _this.endPlayerTurn = MaterialMoveBuilder_1.MaterialMoveBuilder.endPlayerTurn;
26
+ return _this;
24
27
  }
25
28
  SimultaneousRule.prototype.isTurnToPlay = function (player) {
26
29
  var _a, _b, _c;
@@ -1 +1 @@
1
- {"version":3,"file":"SimultaneousRule.js","sourceRoot":"","sources":["../../../src/material/rules/SimultaneousRule.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,yDAAuD;AAEvD;IACU,oCAAqD;IAD/D;;IAqBA,CAAC;IAlBC,uCAAY,GAAZ,UAAa,MAAc;;QACzB,OAAO,MAAA,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,IAAI,0CAAE,OAAO,0CAAE,QAAQ,CAAC,MAAM,CAAC,mCAAI,KAAK,CAAA;IAC3D,CAAC;IAED,wCAAa,GAAb,UAAc,MAAc;QAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChF,CAAC;IAID,4CAAiB,GAAjB;;QACE,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,IAAI,0CAAE,OAAO,0CAAE,MAAM,CAAA,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACxC,CAAC;QACD,OAAO,EAAE,CAAA;IACX,CAAC;IAGH,uBAAC;AAAD,CAAC,AArBD,CACU,qCAAiB,GAoB1B;AArBqB,4CAAgB"}
1
+ {"version":3,"file":"SimultaneousRule.js","sourceRoot":"","sources":["../../../src/material/rules/SimultaneousRule.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,6DAA2D;AAC3D,yDAAuD;AAEvD;IACU,oCAAqD;IAD/D;;QAGE,mBAAa,GAAG,yCAAmB,CAAC,aAAa,CAAA;;IAoBnD,CAAC;IAlBC,uCAAY,GAAZ,UAAa,MAAc;;QACzB,OAAO,MAAA,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,IAAI,0CAAE,OAAO,0CAAE,QAAQ,CAAC,MAAM,CAAC,mCAAI,KAAK,CAAA;IAC3D,CAAC;IAED,wCAAa,GAAb,UAAc,MAAc;QAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChF,CAAC;IAID,4CAAiB,GAAjB;;QACE,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,IAAI,0CAAE,OAAO,0CAAE,MAAM,CAAA,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACxC,CAAC;QACD,OAAO,EAAE,CAAA;IACX,CAAC;IAGH,uBAAC;AAAD,CAAC,AAvBD,CACU,qCAAiB,GAsB1B;AAvBqB,4CAAgB"}
@@ -1,4 +1,4 @@
1
- export * from './MaterialRulesMovesBuilder';
1
+ export * from './MaterialMoveBuilder';
2
2
  export * from './MaterialRulesPart';
3
3
  export * from './PlayerTurnRule';
4
4
  export * from './RuleStep';
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./MaterialRulesMovesBuilder"), exports);
17
+ __exportStar(require("./MaterialMoveBuilder"), exports);
18
18
  __exportStar(require("./MaterialRulesPart"), exports);
19
19
  __exportStar(require("./PlayerTurnRule"), exports);
20
20
  __exportStar(require("./RuleStep"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/material/rules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA2C;AAC3C,sDAAmC;AACnC,mDAAgC;AAChC,6CAA0B;AAC1B,qDAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/material/rules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAqC;AACrC,sDAAmC;AACnC,mDAAgC;AAChC,6CAA0B;AAC1B,qDAAkC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gamepark/rules-api",
3
- "version": "6.21.1",
3
+ "version": "6.22.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",