@gamepark/rules-api 6.19.0 → 6.21.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/Action.d.ts +25 -25
- package/dist/Action.js +61 -61
- package/dist/Action.js.map +1 -1
- package/dist/ApplyAutomaticMoves.d.ts +2 -2
- package/dist/ApplyAutomaticMoves.js +24 -24
- package/dist/ApplyAutomaticMoves.js.map +1 -1
- package/dist/Competitive.d.ts +13 -13
- package/dist/Competitive.js +45 -45
- package/dist/Competitive.js.map +1 -1
- package/dist/DefaultGameSetup.d.ts +7 -7
- package/dist/DefaultGameSetup.js +14 -14
- package/dist/Dummy.d.ts +7 -7
- package/dist/Dummy.js +26 -26
- package/dist/Dummy.js.map +1 -1
- package/dist/Eliminations.d.ts +5 -5
- package/dist/Eliminations.js +8 -8
- package/dist/GameSetup.d.ts +3 -3
- package/dist/GameSetup.js +2 -2
- package/dist/GameSetupCreator.d.ts +4 -4
- package/dist/GameSetupCreator.js +2 -2
- package/dist/IncompleteInformation.d.ts +14 -14
- package/dist/IncompleteInformation.js +37 -37
- package/dist/IncompleteInformation.js.map +1 -1
- package/dist/LocalMovePreview.d.ts +4 -0
- package/dist/LocalMovePreview.js +8 -0
- package/dist/LocalMovePreview.js.map +1 -0
- package/dist/LoopWithFuse.d.ts +4 -4
- package/dist/LoopWithFuse.js +14 -14
- package/dist/LoopWithFuse.js.map +1 -1
- package/dist/RandomMove.d.ts +7 -7
- package/dist/RandomMove.js +14 -14
- package/dist/Robot.d.ts +1 -1
- package/dist/Robot.js +2 -2
- package/dist/Rules.d.ts +18 -17
- package/dist/Rules.js +78 -78
- package/dist/Rules.js.map +1 -1
- package/dist/RulesCreator.d.ts +7 -7
- package/dist/RulesCreator.js +2 -2
- package/dist/TimeLimit.d.ts +10 -10
- package/dist/TimeLimit.js +12 -12
- package/dist/TimeLimit.js.map +1 -1
- package/dist/Undo.d.ts +5 -6
- package/dist/Undo.js +8 -8
- package/dist/Undo.js.map +1 -1
- package/dist/UnpredictableMove.d.ts +5 -5
- package/dist/UnpredictableMove.js +5 -5
- package/dist/index.d.ts +21 -20
- package/dist/index.js +37 -36
- package/dist/index.js.map +1 -1
- package/dist/material/HiddenMaterialRules.d.ts +36 -35
- package/dist/material/HiddenMaterialRules.js +245 -245
- package/dist/material/HiddenMaterialRules.js.map +1 -1
- package/dist/material/MaterialGame.d.ts +15 -15
- package/dist/material/MaterialGame.js +2 -2
- package/dist/material/MaterialGameSetup.d.ts +21 -21
- package/dist/material/MaterialGameSetup.js +75 -75
- package/dist/material/MaterialGameSetup.js.map +1 -1
- package/dist/material/MaterialRules.d.ts +44 -44
- package/dist/material/MaterialRules.js +240 -242
- package/dist/material/MaterialRules.js.map +1 -1
- package/dist/material/SecretMaterialRules.d.ts +13 -13
- package/dist/material/SecretMaterialRules.js +37 -37
- package/dist/material/index.d.ts +10 -10
- package/dist/material/index.js +26 -26
- package/dist/material/items/Material.d.ts +59 -60
- package/dist/material/items/Material.js +406 -405
- package/dist/material/items/Material.js.map +1 -1
- package/dist/material/items/MaterialItem.d.ts +7 -7
- package/dist/material/items/MaterialItem.js +2 -2
- package/dist/material/items/MaterialMutator.d.ts +31 -31
- package/dist/material/items/MaterialMutator.js +277 -277
- package/dist/material/items/MaterialMutator.js.map +1 -1
- package/dist/material/items/index.d.ts +3 -3
- package/dist/material/items/index.js +19 -19
- package/dist/material/location/Location.d.ts +11 -11
- package/dist/material/location/Location.js +2 -2
- package/dist/material/location/LocationBuilder.d.ts +12 -12
- package/dist/material/location/LocationBuilder.js +40 -40
- package/dist/material/location/index.d.ts +3 -3
- package/dist/material/location/index.js +19 -19
- package/dist/material/location/strategy/FillGapStrategy.d.ts +7 -7
- package/dist/material/location/strategy/FillGapStrategy.js +23 -23
- package/dist/material/location/strategy/FillGapStrategy.js.map +1 -1
- package/dist/material/location/strategy/LocationStrategy.d.ts +6 -6
- package/dist/material/location/strategy/LocationStrategy.js +2 -2
- package/dist/material/location/strategy/PositiveSequenceStrategy.d.ts +9 -9
- package/dist/material/location/strategy/PositiveSequenceStrategy.js +65 -65
- package/dist/material/location/strategy/PositiveSequenceStrategy.js.map +1 -1
- package/dist/material/location/strategy/index.d.ts +3 -3
- package/dist/material/location/strategy/index.js +19 -19
- package/dist/material/memory/GameMemory.d.ts +8 -8
- package/dist/material/memory/GameMemory.js +27 -27
- package/dist/material/memory/GameMemory.js.map +1 -1
- package/dist/material/memory/PlayerMemory.d.ts +9 -9
- package/dist/material/memory/PlayerMemory.js +32 -32
- package/dist/material/memory/PlayerMemory.js.map +1 -1
- package/dist/material/memory/index.d.ts +2 -2
- package/dist/material/memory/index.js +18 -18
- package/dist/material/moves/CustomMove.d.ts +9 -9
- package/dist/material/moves/CustomMove.js +10 -10
- package/dist/material/moves/MaterialMove.d.ts +7 -7
- package/dist/material/moves/MaterialMove.js +2 -2
- package/dist/material/moves/MoveKind.d.ts +6 -6
- package/dist/material/moves/MoveKind.js +10 -10
- package/dist/material/moves/MoveKind.js.map +1 -1
- package/dist/material/moves/index.d.ts +6 -6
- package/dist/material/moves/index.js +22 -22
- package/dist/material/moves/items/CreateItem.d.ts +10 -10
- package/dist/material/moves/items/CreateItem.js +15 -15
- package/dist/material/moves/items/CreateItemsAtOnce.d.ts +10 -10
- package/dist/material/moves/items/CreateItemsAtOnce.js +15 -15
- package/dist/material/moves/items/DeleteItem.d.ts +10 -10
- package/dist/material/moves/items/DeleteItem.js +15 -15
- package/dist/material/moves/items/DeleteItemsAtOnce.d.ts +9 -9
- package/dist/material/moves/items/DeleteItemsAtOnce.js +15 -15
- package/dist/material/moves/items/ItemMove.d.ts +17 -17
- package/dist/material/moves/items/ItemMove.js +2 -2
- package/dist/material/moves/items/ItemMoveType.d.ts +11 -11
- package/dist/material/moves/items/ItemMoveType.js +15 -15
- package/dist/material/moves/items/ItemMoveType.js.map +1 -1
- package/dist/material/moves/items/ItemMovesBuilder.d.ts +8 -8
- package/dist/material/moves/items/ItemMovesBuilder.js +33 -33
- package/dist/material/moves/items/ItemMovesBuilder.js.map +1 -1
- package/dist/material/moves/items/MoveItem.d.ts +14 -14
- package/dist/material/moves/items/MoveItem.js +15 -15
- package/dist/material/moves/items/MoveItemsAtOnce.d.ts +13 -13
- package/dist/material/moves/items/MoveItemsAtOnce.js +15 -15
- package/dist/material/moves/items/RollItem.d.ts +11 -11
- package/dist/material/moves/items/RollItem.js +15 -15
- package/dist/material/moves/items/SelectItem.d.ts +11 -11
- package/dist/material/moves/items/SelectItem.js +15 -15
- package/dist/material/moves/items/Shuffle.d.ts +13 -13
- package/dist/material/moves/items/Shuffle.js +19 -19
- package/dist/material/moves/items/index.d.ts +12 -12
- package/dist/material/moves/items/index.js +28 -28
- package/dist/material/moves/local/CloseTutorialPopup.d.ts +8 -8
- package/dist/material/moves/local/CloseTutorialPopup.js +9 -9
- package/dist/material/moves/local/DisplayHelp.d.ts +34 -39
- package/dist/material/moves/local/DisplayHelp.js +28 -29
- package/dist/material/moves/local/DisplayHelp.js.map +1 -1
- package/dist/material/moves/local/DropItem.d.ts +13 -13
- package/dist/material/moves/local/DropItem.js +9 -9
- package/dist/material/moves/local/LocalMove.d.ts +11 -12
- package/dist/material/moves/local/LocalMove.js +10 -11
- package/dist/material/moves/local/LocalMove.js.map +1 -1
- package/dist/material/moves/local/SetTutorialStep.d.ts +9 -9
- package/dist/material/moves/local/SetTutorialStep.js +9 -9
- package/dist/material/moves/local/index.d.ts +5 -5
- package/dist/material/moves/local/index.js +21 -21
- package/dist/material/moves/rules/EndGame.d.ts +6 -6
- package/dist/material/moves/rules/EndGame.js +9 -9
- package/dist/material/moves/rules/EndPlayerTurn.d.ts +7 -7
- package/dist/material/moves/rules/EndPlayerTurn.js +9 -9
- package/dist/material/moves/rules/RuleMove.d.ts +18 -18
- package/dist/material/moves/rules/RuleMove.js +18 -18
- package/dist/material/moves/rules/RuleMove.js.map +1 -1
- package/dist/material/moves/rules/StartPlayerTurn.d.ts +8 -8
- package/dist/material/moves/rules/StartPlayerTurn.js +9 -9
- package/dist/material/moves/rules/StartRule.d.ts +7 -7
- package/dist/material/moves/rules/StartRule.js +9 -9
- package/dist/material/moves/rules/StartSimultaneousRule.d.ts +8 -8
- package/dist/material/moves/rules/StartSimultaneousRule.js +9 -9
- package/dist/material/moves/rules/index.d.ts +6 -6
- package/dist/material/moves/rules/index.js +22 -22
- package/dist/material/rules/MaterialRulesMovesBuilder.d.ts +12 -12
- package/dist/material/rules/MaterialRulesMovesBuilder.js +35 -35
- package/dist/material/rules/MaterialRulesPart.d.ts +23 -23
- package/dist/material/rules/MaterialRulesPart.js +64 -64
- package/dist/material/rules/MaterialRulesPart.js.map +1 -1
- package/dist/material/rules/PlayerTurnRule.d.ts +9 -9
- package/dist/material/rules/PlayerTurnRule.js +52 -52
- package/dist/material/rules/RuleStep.d.ts +5 -5
- package/dist/material/rules/RuleStep.js +2 -2
- package/dist/material/rules/SimultaneousRule.d.ts +9 -9
- package/dist/material/rules/SimultaneousRule.js +41 -41
- package/dist/material/rules/SimultaneousRule.js.map +1 -1
- package/dist/material/rules/index.d.ts +5 -5
- package/dist/material/rules/index.js +21 -21
- package/dist/options/EnumOption.d.ts +6 -6
- package/dist/options/EnumOption.js +7 -7
- package/dist/options/Option.d.ts +8 -8
- package/dist/options/Option.js +2 -2
- package/dist/options/OptionSpecOf.d.ts +5 -5
- package/dist/options/OptionSpecOf.js +2 -2
- package/dist/options/OptionsSpec.d.ts +9 -9
- package/dist/options/OptionsSpec.js +2 -2
- package/dist/options/OptionsValidationError.d.ts +4 -4
- package/dist/options/OptionsValidationError.js +29 -29
- package/dist/options/OptionsValidationError.js.map +1 -1
- package/dist/options/PlayerEnumOption.d.ts +14 -14
- package/dist/options/PlayerEnumOption.js +66 -66
- package/dist/options/PlayerEnumOption.js.map +1 -1
- package/dist/options/PlayersOptionsSpec.d.ts +7 -7
- package/dist/options/PlayersOptionsSpec.js +2 -2
- package/dist/options/WithIdOption.d.ts +3 -3
- package/dist/options/WithIdOption.js +2 -2
- package/dist/options/WithPlayerOptionsSpec.d.ts +6 -6
- package/dist/options/WithPlayerOptionsSpec.js +7 -7
- package/dist/options/WithPlayersOptions.d.ts +3 -3
- package/dist/options/WithPlayersOptions.js +2 -2
- package/dist/options/index.d.ts +11 -11
- package/dist/options/index.js +27 -27
- package/dist/options/isWithPlayerIdOptions.d.ts +4 -4
- package/dist/options/isWithPlayerIdOptions.js +11 -11
- package/dist/utils/EnumUtils.d.ts +1 -1
- package/dist/utils/EnumUtils.js +7 -7
- package/dist/utils/grid.squares.util.d.ts +11 -11
- package/dist/utils/grid.squares.util.js +30 -30
- package/dist/utils/grid.squares.util.js.map +1 -1
- package/dist/utils/grid.util.d.ts +5 -5
- package/dist/utils/grid.util.js +7 -7
- package/dist/utils/index.d.ts +5 -5
- package/dist/utils/index.js +21 -21
- package/dist/utils/isDeadEndMove.util.d.ts +2 -2
- package/dist/utils/isDeadEndMove.util.js +18 -18
- package/dist/utils/listing.util.d.ts +2 -2
- package/dist/utils/listing.util.js +23 -23
- package/dist/utils/listing.util.js.map +1 -1
- package/package.json +34 -33
- package/dist/material/items/MaterialDeck.d.ts +0 -7
- package/dist/material/items/MaterialDeck.js +0 -35
- package/dist/material/items/MaterialDeck.js.map +0 -1
- package/dist/material/moves/items/MoveAtOnce.d.ts +0 -13
- package/dist/material/moves/items/MoveAtOnce.js +0 -16
- package/dist/material/moves/items/MoveAtOnce.js.map +0 -1
- package/dist/material/moves/items/Roll.d.ts +0 -11
- package/dist/material/moves/items/Roll.js +0 -16
- package/dist/material/moves/items/Roll.js.map +0 -1
- package/dist/material/moves/local/DisplayRules.d.ts +0 -32
- package/dist/material/moves/local/DisplayRules.js +0 -25
- package/dist/material/moves/local/DisplayRules.js.map +0 -1
- package/dist/material/moves/rules/StartSimultanousRule.d.ts +0 -10
- package/dist/material/moves/rules/StartSimultanousRule.js +0 -10
- package/dist/material/moves/rules/StartSimultanousRule.js.map +0 -1
- package/dist/options/PlayerIdSpec.d.ts +0 -7
- package/dist/options/PlayerIdSpec.js +0 -18
- package/dist/options/PlayerIdSpec.js.map +0 -1
- package/dist/options/getFallbackPlayerName.d.ts +0 -4
- package/dist/options/getFallbackPlayerName.js +0 -14
- package/dist/options/getFallbackPlayerName.js.map +0 -1
- package/dist/options/providePlayerIds.d.ts +0 -6
- package/dist/options/providePlayerIds.js +0 -36
- package/dist/options/providePlayerIds.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from './EndGame';
|
|
2
|
-
export * from './EndPlayerTurn';
|
|
3
|
-
export * from './RuleMove';
|
|
4
|
-
export * from './StartPlayerTurn';
|
|
5
|
-
export * from './StartRule';
|
|
6
|
-
export * from './StartSimultaneousRule';
|
|
1
|
+
export * from './EndGame';
|
|
2
|
+
export * from './EndPlayerTurn';
|
|
3
|
+
export * from './RuleMove';
|
|
4
|
+
export * from './StartPlayerTurn';
|
|
5
|
+
export * from './StartRule';
|
|
6
|
+
export * from './StartSimultaneousRule';
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./EndGame"), exports);
|
|
18
|
-
__exportStar(require("./EndPlayerTurn"), exports);
|
|
19
|
-
__exportStar(require("./RuleMove"), exports);
|
|
20
|
-
__exportStar(require("./StartPlayerTurn"), exports);
|
|
21
|
-
__exportStar(require("./StartRule"), exports);
|
|
22
|
-
__exportStar(require("./StartSimultaneousRule"), exports);
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./EndGame"), exports);
|
|
18
|
+
__exportStar(require("./EndPlayerTurn"), exports);
|
|
19
|
+
__exportStar(require("./RuleMove"), exports);
|
|
20
|
+
__exportStar(require("./StartPlayerTurn"), exports);
|
|
21
|
+
__exportStar(require("./StartRule"), exports);
|
|
22
|
+
__exportStar(require("./StartSimultaneousRule"), exports);
|
|
23
23
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { MaterialGame } from '../MaterialGame';
|
|
2
|
-
import { CustomMove, EndGame, EndPlayerTurn, StartPlayerTurn, StartRule, StartSimultaneousRule } from '../moves';
|
|
3
|
-
export declare class MaterialRulesMovesBuilder<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> {
|
|
4
|
-
game: MaterialGame<Player, MaterialType, LocationType>;
|
|
5
|
-
constructor(game: MaterialGame<Player, MaterialType, LocationType>);
|
|
6
|
-
startPlayerTurn<RuleId extends number = number>(id: RuleId, player: Player): StartPlayerTurn<Player, RuleId>;
|
|
7
|
-
startSimultaneousRule<RuleId extends number = number>(id: RuleId, players?: Player[]): StartSimultaneousRule<Player, RuleId>;
|
|
8
|
-
endPlayerTurn(player: Player): EndPlayerTurn<Player>;
|
|
9
|
-
startRule<RuleId extends number = number>(id: RuleId): StartRule<RuleId>;
|
|
10
|
-
customMove<Type extends number = number>(type: Type, data?: any): CustomMove;
|
|
11
|
-
endGame(): EndGame;
|
|
12
|
-
}
|
|
1
|
+
import { MaterialGame } from '../MaterialGame';
|
|
2
|
+
import { CustomMove, EndGame, EndPlayerTurn, StartPlayerTurn, StartRule, StartSimultaneousRule } from '../moves';
|
|
3
|
+
export declare class MaterialRulesMovesBuilder<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> {
|
|
4
|
+
game: MaterialGame<Player, MaterialType, LocationType>;
|
|
5
|
+
constructor(game: MaterialGame<Player, MaterialType, LocationType>);
|
|
6
|
+
startPlayerTurn<RuleId extends number = number>(id: RuleId, player: Player): StartPlayerTurn<Player, RuleId>;
|
|
7
|
+
startSimultaneousRule<RuleId extends number = number>(id: RuleId, players?: Player[]): StartSimultaneousRule<Player, RuleId>;
|
|
8
|
+
endPlayerTurn(player: Player): EndPlayerTurn<Player>;
|
|
9
|
+
startRule<RuleId extends number = number>(id: RuleId): StartRule<RuleId>;
|
|
10
|
+
customMove<Type extends number = number>(type: Type, data?: any): CustomMove;
|
|
11
|
+
endGame(): EndGame;
|
|
12
|
+
}
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MaterialRulesMovesBuilder = void 0;
|
|
4
|
-
var moves_1 = require("../moves");
|
|
5
|
-
var MaterialRulesMovesBuilder = (function () {
|
|
6
|
-
function MaterialRulesMovesBuilder(game) {
|
|
7
|
-
this.game = game;
|
|
8
|
-
}
|
|
9
|
-
MaterialRulesMovesBuilder.prototype.startPlayerTurn = function (id, player) {
|
|
10
|
-
return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartPlayerTurn, id: id, player: player };
|
|
11
|
-
};
|
|
12
|
-
MaterialRulesMovesBuilder.prototype.startSimultaneousRule = function (id, players) {
|
|
13
|
-
var move = { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartSimultaneousRule, id: id };
|
|
14
|
-
if (players)
|
|
15
|
-
move.players = players;
|
|
16
|
-
return move;
|
|
17
|
-
};
|
|
18
|
-
MaterialRulesMovesBuilder.prototype.endPlayerTurn = function (player) {
|
|
19
|
-
return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.EndPlayerTurn, player: player };
|
|
20
|
-
};
|
|
21
|
-
MaterialRulesMovesBuilder.prototype.startRule = function (id) {
|
|
22
|
-
return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartRule, id: id };
|
|
23
|
-
};
|
|
24
|
-
MaterialRulesMovesBuilder.prototype.customMove = function (type, data) {
|
|
25
|
-
var move = { kind: moves_1.MoveKind.CustomMove, type: type };
|
|
26
|
-
if (data !== undefined)
|
|
27
|
-
move.data = data;
|
|
28
|
-
return move;
|
|
29
|
-
};
|
|
30
|
-
MaterialRulesMovesBuilder.prototype.endGame = function () {
|
|
31
|
-
return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.EndGame };
|
|
32
|
-
};
|
|
33
|
-
return MaterialRulesMovesBuilder;
|
|
34
|
-
}());
|
|
35
|
-
exports.MaterialRulesMovesBuilder = MaterialRulesMovesBuilder;
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MaterialRulesMovesBuilder = void 0;
|
|
4
|
+
var moves_1 = require("../moves");
|
|
5
|
+
var MaterialRulesMovesBuilder = (function () {
|
|
6
|
+
function MaterialRulesMovesBuilder(game) {
|
|
7
|
+
this.game = game;
|
|
8
|
+
}
|
|
9
|
+
MaterialRulesMovesBuilder.prototype.startPlayerTurn = function (id, player) {
|
|
10
|
+
return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartPlayerTurn, id: id, player: player };
|
|
11
|
+
};
|
|
12
|
+
MaterialRulesMovesBuilder.prototype.startSimultaneousRule = function (id, players) {
|
|
13
|
+
var move = { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartSimultaneousRule, id: id };
|
|
14
|
+
if (players)
|
|
15
|
+
move.players = players;
|
|
16
|
+
return move;
|
|
17
|
+
};
|
|
18
|
+
MaterialRulesMovesBuilder.prototype.endPlayerTurn = function (player) {
|
|
19
|
+
return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.EndPlayerTurn, player: player };
|
|
20
|
+
};
|
|
21
|
+
MaterialRulesMovesBuilder.prototype.startRule = function (id) {
|
|
22
|
+
return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartRule, id: id };
|
|
23
|
+
};
|
|
24
|
+
MaterialRulesMovesBuilder.prototype.customMove = function (type, data) {
|
|
25
|
+
var move = { kind: moves_1.MoveKind.CustomMove, type: type };
|
|
26
|
+
if (data !== undefined)
|
|
27
|
+
move.data = data;
|
|
28
|
+
return move;
|
|
29
|
+
};
|
|
30
|
+
MaterialRulesMovesBuilder.prototype.endGame = function () {
|
|
31
|
+
return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.EndGame };
|
|
32
|
+
};
|
|
33
|
+
return MaterialRulesMovesBuilder;
|
|
34
|
+
}());
|
|
35
|
+
exports.MaterialRulesMovesBuilder = MaterialRulesMovesBuilder;
|
|
36
36
|
//# sourceMappingURL=MaterialRulesMovesBuilder.js.map
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
import { Rules } from '../../Rules';
|
|
2
|
-
import { Material } from '../items';
|
|
3
|
-
import { MaterialGame } from '../MaterialGame';
|
|
4
|
-
import { GameMemory, PlayerMemory } from '../memory';
|
|
5
|
-
import { CustomMove, ItemMove, MaterialMove, RuleMove } from '../moves';
|
|
6
|
-
import { MaterialRulesMovesBuilder } from './MaterialRulesMovesBuilder';
|
|
7
|
-
import { RuleStep } from './RuleStep';
|
|
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
|
-
|
|
10
|
-
beforeItemMove(_move: ItemMove<Player, MaterialType, LocationType
|
|
11
|
-
afterItemMove(_move: ItemMove<Player, MaterialType, LocationType
|
|
12
|
-
onRuleStart<RuleId extends number>(_move: RuleMove<Player, RuleId>, _previousRule?: RuleStep): MaterialMove<Player, MaterialType, LocationType>[];
|
|
13
|
-
onRuleEnd<RuleId extends number>(_move: RuleMove<Player, RuleId
|
|
14
|
-
onCustomMove(_move: CustomMove): MaterialMove<Player, MaterialType, LocationType>[];
|
|
15
|
-
rules(): MaterialRulesMovesBuilder<Player, MaterialType, LocationType>;
|
|
16
|
-
protected getMemory(player?: Player): GameMemory<Player> | PlayerMemory<Player>;
|
|
17
|
-
memorize<T = any>(key: keyof any, value: T | ((lastValue: T) => T), player?: Player): void;
|
|
18
|
-
remind<T = any>(key: keyof any, player?: Player): T;
|
|
19
|
-
forget(key: keyof any, player?: Player): void;
|
|
20
|
-
}
|
|
21
|
-
export interface MaterialRulesPartCreator<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> {
|
|
22
|
-
new (game: MaterialGame<Player, MaterialType, LocationType>, material: (type: MaterialType) => Material<Player, MaterialType, LocationType>): MaterialRulesPart<Player, MaterialType, LocationType>;
|
|
23
|
-
}
|
|
1
|
+
import { PlayMoveContext, Rules } from '../../Rules';
|
|
2
|
+
import { Material } from '../items';
|
|
3
|
+
import { MaterialGame } from '../MaterialGame';
|
|
4
|
+
import { GameMemory, PlayerMemory } from '../memory';
|
|
5
|
+
import { CustomMove, ItemMove, MaterialMove, RuleMove } from '../moves';
|
|
6
|
+
import { MaterialRulesMovesBuilder } from './MaterialRulesMovesBuilder';
|
|
7
|
+
import { RuleStep } from './RuleStep';
|
|
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
|
+
material(type: MaterialType): Material<Player, MaterialType, LocationType>;
|
|
10
|
+
beforeItemMove(_move: ItemMove<Player, MaterialType, LocationType>, _context?: PlayMoveContext): MaterialMove<Player, MaterialType, LocationType>[];
|
|
11
|
+
afterItemMove(_move: ItemMove<Player, MaterialType, LocationType>, _context?: PlayMoveContext): MaterialMove<Player, MaterialType, LocationType>[];
|
|
12
|
+
onRuleStart<RuleId extends number>(_move: RuleMove<Player, RuleId>, _previousRule?: RuleStep, _context?: PlayMoveContext): MaterialMove<Player, MaterialType, LocationType>[];
|
|
13
|
+
onRuleEnd<RuleId extends number>(_move: RuleMove<Player, RuleId>, _context?: PlayMoveContext): MaterialMove<Player, MaterialType, LocationType>[];
|
|
14
|
+
onCustomMove(_move: CustomMove, _context?: PlayMoveContext): MaterialMove<Player, MaterialType, LocationType>[];
|
|
15
|
+
rules(): MaterialRulesMovesBuilder<Player, MaterialType, LocationType>;
|
|
16
|
+
protected getMemory(player?: Player): GameMemory<Player> | PlayerMemory<Player>;
|
|
17
|
+
memorize<T = any>(key: keyof any, value: T | ((lastValue: T) => T), player?: Player): void;
|
|
18
|
+
remind<T = any>(key: keyof any, player?: Player): T;
|
|
19
|
+
forget(key: keyof any, player?: Player): void;
|
|
20
|
+
}
|
|
21
|
+
export interface MaterialRulesPartCreator<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> {
|
|
22
|
+
new (game: MaterialGame<Player, MaterialType, LocationType>, material: (type: MaterialType) => Material<Player, MaterialType, LocationType>): MaterialRulesPart<Player, MaterialType, LocationType>;
|
|
23
|
+
}
|
|
@@ -1,65 +1,65 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.MaterialRulesPart = void 0;
|
|
19
|
-
var Rules_1 = require("../../Rules");
|
|
20
|
-
var items_1 = require("../items");
|
|
21
|
-
var memory_1 = require("../memory");
|
|
22
|
-
var MaterialRulesMovesBuilder_1 = require("./MaterialRulesMovesBuilder");
|
|
23
|
-
var MaterialRulesPart = (function (_super) {
|
|
24
|
-
__extends(MaterialRulesPart, _super);
|
|
25
|
-
function MaterialRulesPart() {
|
|
26
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
27
|
-
}
|
|
28
|
-
MaterialRulesPart.prototype.material = function (type) {
|
|
29
|
-
var _a;
|
|
30
|
-
return new items_1.Material(type, Array.from(((_a = this.game.items[type]) !== null && _a !== void 0 ? _a : []).entries()).filter(function (entry) { return entry[1].quantity !== 0; }));
|
|
31
|
-
};
|
|
32
|
-
MaterialRulesPart.prototype.beforeItemMove = function (_move) {
|
|
33
|
-
return [];
|
|
34
|
-
};
|
|
35
|
-
MaterialRulesPart.prototype.afterItemMove = function (_move) {
|
|
36
|
-
return [];
|
|
37
|
-
};
|
|
38
|
-
MaterialRulesPart.prototype.onRuleStart = function (_move, _previousRule) {
|
|
39
|
-
return [];
|
|
40
|
-
};
|
|
41
|
-
MaterialRulesPart.prototype.onRuleEnd = function (_move) {
|
|
42
|
-
return [];
|
|
43
|
-
};
|
|
44
|
-
MaterialRulesPart.prototype.onCustomMove = function (_move) {
|
|
45
|
-
return [];
|
|
46
|
-
};
|
|
47
|
-
MaterialRulesPart.prototype.rules = function () {
|
|
48
|
-
return new MaterialRulesMovesBuilder_1.MaterialRulesMovesBuilder(this.game);
|
|
49
|
-
};
|
|
50
|
-
MaterialRulesPart.prototype.getMemory = function (player) {
|
|
51
|
-
return player === undefined ? new memory_1.GameMemory(this.game) : new memory_1.PlayerMemory(this.game, player);
|
|
52
|
-
};
|
|
53
|
-
MaterialRulesPart.prototype.memorize = function (key, value, player) {
|
|
54
|
-
this.getMemory(player).memorize(key, value);
|
|
55
|
-
};
|
|
56
|
-
MaterialRulesPart.prototype.remind = function (key, player) {
|
|
57
|
-
return this.getMemory(player).remind(key);
|
|
58
|
-
};
|
|
59
|
-
MaterialRulesPart.prototype.forget = function (key, player) {
|
|
60
|
-
this.getMemory(player).forget(key);
|
|
61
|
-
};
|
|
62
|
-
return MaterialRulesPart;
|
|
63
|
-
}(Rules_1.Rules));
|
|
64
|
-
exports.MaterialRulesPart = MaterialRulesPart;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.MaterialRulesPart = void 0;
|
|
19
|
+
var Rules_1 = require("../../Rules");
|
|
20
|
+
var items_1 = require("../items");
|
|
21
|
+
var memory_1 = require("../memory");
|
|
22
|
+
var MaterialRulesMovesBuilder_1 = require("./MaterialRulesMovesBuilder");
|
|
23
|
+
var MaterialRulesPart = (function (_super) {
|
|
24
|
+
__extends(MaterialRulesPart, _super);
|
|
25
|
+
function MaterialRulesPart() {
|
|
26
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
27
|
+
}
|
|
28
|
+
MaterialRulesPart.prototype.material = function (type) {
|
|
29
|
+
var _a;
|
|
30
|
+
return new items_1.Material(type, Array.from(((_a = this.game.items[type]) !== null && _a !== void 0 ? _a : []).entries()).filter(function (entry) { return entry[1].quantity !== 0; }));
|
|
31
|
+
};
|
|
32
|
+
MaterialRulesPart.prototype.beforeItemMove = function (_move, _context) {
|
|
33
|
+
return [];
|
|
34
|
+
};
|
|
35
|
+
MaterialRulesPart.prototype.afterItemMove = function (_move, _context) {
|
|
36
|
+
return [];
|
|
37
|
+
};
|
|
38
|
+
MaterialRulesPart.prototype.onRuleStart = function (_move, _previousRule, _context) {
|
|
39
|
+
return [];
|
|
40
|
+
};
|
|
41
|
+
MaterialRulesPart.prototype.onRuleEnd = function (_move, _context) {
|
|
42
|
+
return [];
|
|
43
|
+
};
|
|
44
|
+
MaterialRulesPart.prototype.onCustomMove = function (_move, _context) {
|
|
45
|
+
return [];
|
|
46
|
+
};
|
|
47
|
+
MaterialRulesPart.prototype.rules = function () {
|
|
48
|
+
return new MaterialRulesMovesBuilder_1.MaterialRulesMovesBuilder(this.game);
|
|
49
|
+
};
|
|
50
|
+
MaterialRulesPart.prototype.getMemory = function (player) {
|
|
51
|
+
return player === undefined ? new memory_1.GameMemory(this.game) : new memory_1.PlayerMemory(this.game, player);
|
|
52
|
+
};
|
|
53
|
+
MaterialRulesPart.prototype.memorize = function (key, value, player) {
|
|
54
|
+
this.getMemory(player).memorize(key, value);
|
|
55
|
+
};
|
|
56
|
+
MaterialRulesPart.prototype.remind = function (key, player) {
|
|
57
|
+
return this.getMemory(player).remind(key);
|
|
58
|
+
};
|
|
59
|
+
MaterialRulesPart.prototype.forget = function (key, player) {
|
|
60
|
+
this.getMemory(player).forget(key);
|
|
61
|
+
};
|
|
62
|
+
return MaterialRulesPart;
|
|
63
|
+
}(Rules_1.Rules));
|
|
64
|
+
exports.MaterialRulesPart = MaterialRulesPart;
|
|
65
65
|
//# sourceMappingURL=MaterialRulesPart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialRulesPart.js","sourceRoot":"","sources":["../../../src/material/rules/MaterialRulesPart.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,
|
|
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,9 +1,9 @@
|
|
|
1
|
-
import { MaterialMove } from '../moves';
|
|
2
|
-
import { MaterialRulesPart } from './MaterialRulesPart';
|
|
3
|
-
export declare abstract class PlayerTurnRule<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends MaterialRulesPart<Player, MaterialType, LocationType> {
|
|
4
|
-
get player(): Player;
|
|
5
|
-
get nextPlayer(): Player;
|
|
6
|
-
getActivePlayer(): Player;
|
|
7
|
-
getLegalMoves(player: Player): MaterialMove<Player, MaterialType, LocationType>[];
|
|
8
|
-
getPlayerMoves(): MaterialMove<Player, MaterialType, LocationType>[];
|
|
9
|
-
}
|
|
1
|
+
import { MaterialMove } from '../moves';
|
|
2
|
+
import { MaterialRulesPart } from './MaterialRulesPart';
|
|
3
|
+
export declare abstract class PlayerTurnRule<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends MaterialRulesPart<Player, MaterialType, LocationType> {
|
|
4
|
+
get player(): Player;
|
|
5
|
+
get nextPlayer(): Player;
|
|
6
|
+
getActivePlayer(): Player;
|
|
7
|
+
getLegalMoves(player: Player): MaterialMove<Player, MaterialType, LocationType>[];
|
|
8
|
+
getPlayerMoves(): MaterialMove<Player, MaterialType, LocationType>[];
|
|
9
|
+
}
|
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.PlayerTurnRule = void 0;
|
|
19
|
-
var MaterialRulesPart_1 = require("./MaterialRulesPart");
|
|
20
|
-
var PlayerTurnRule = (function (_super) {
|
|
21
|
-
__extends(PlayerTurnRule, _super);
|
|
22
|
-
function PlayerTurnRule() {
|
|
23
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
24
|
-
}
|
|
25
|
-
Object.defineProperty(PlayerTurnRule.prototype, "player", {
|
|
26
|
-
get: function () {
|
|
27
|
-
return this.game.rule.player;
|
|
28
|
-
},
|
|
29
|
-
enumerable: false,
|
|
30
|
-
configurable: true
|
|
31
|
-
});
|
|
32
|
-
Object.defineProperty(PlayerTurnRule.prototype, "nextPlayer", {
|
|
33
|
-
get: function () {
|
|
34
|
-
return this.game.players[(this.game.players.indexOf(this.player) + 1) % this.game.players.length];
|
|
35
|
-
},
|
|
36
|
-
enumerable: false,
|
|
37
|
-
configurable: true
|
|
38
|
-
});
|
|
39
|
-
PlayerTurnRule.prototype.getActivePlayer = function () {
|
|
40
|
-
return this.player;
|
|
41
|
-
};
|
|
42
|
-
PlayerTurnRule.prototype.getLegalMoves = function (player) {
|
|
43
|
-
if (player !== this.getActivePlayer())
|
|
44
|
-
return [];
|
|
45
|
-
return this.getPlayerMoves();
|
|
46
|
-
};
|
|
47
|
-
PlayerTurnRule.prototype.getPlayerMoves = function () {
|
|
48
|
-
return [];
|
|
49
|
-
};
|
|
50
|
-
return PlayerTurnRule;
|
|
51
|
-
}(MaterialRulesPart_1.MaterialRulesPart));
|
|
52
|
-
exports.PlayerTurnRule = PlayerTurnRule;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.PlayerTurnRule = void 0;
|
|
19
|
+
var MaterialRulesPart_1 = require("./MaterialRulesPart");
|
|
20
|
+
var PlayerTurnRule = (function (_super) {
|
|
21
|
+
__extends(PlayerTurnRule, _super);
|
|
22
|
+
function PlayerTurnRule() {
|
|
23
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(PlayerTurnRule.prototype, "player", {
|
|
26
|
+
get: function () {
|
|
27
|
+
return this.game.rule.player;
|
|
28
|
+
},
|
|
29
|
+
enumerable: false,
|
|
30
|
+
configurable: true
|
|
31
|
+
});
|
|
32
|
+
Object.defineProperty(PlayerTurnRule.prototype, "nextPlayer", {
|
|
33
|
+
get: function () {
|
|
34
|
+
return this.game.players[(this.game.players.indexOf(this.player) + 1) % this.game.players.length];
|
|
35
|
+
},
|
|
36
|
+
enumerable: false,
|
|
37
|
+
configurable: true
|
|
38
|
+
});
|
|
39
|
+
PlayerTurnRule.prototype.getActivePlayer = function () {
|
|
40
|
+
return this.player;
|
|
41
|
+
};
|
|
42
|
+
PlayerTurnRule.prototype.getLegalMoves = function (player) {
|
|
43
|
+
if (player !== this.getActivePlayer())
|
|
44
|
+
return [];
|
|
45
|
+
return this.getPlayerMoves();
|
|
46
|
+
};
|
|
47
|
+
PlayerTurnRule.prototype.getPlayerMoves = function () {
|
|
48
|
+
return [];
|
|
49
|
+
};
|
|
50
|
+
return PlayerTurnRule;
|
|
51
|
+
}(MaterialRulesPart_1.MaterialRulesPart));
|
|
52
|
+
exports.PlayerTurnRule = PlayerTurnRule;
|
|
53
53
|
//# sourceMappingURL=PlayerTurnRule.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export type RuleStep<Player extends number = number, RuleId extends number = number> = {
|
|
2
|
-
id: RuleId;
|
|
3
|
-
player?: Player;
|
|
4
|
-
players?: Player[];
|
|
5
|
-
};
|
|
1
|
+
export type RuleStep<Player extends number = number, RuleId extends number = number> = {
|
|
2
|
+
id: RuleId;
|
|
3
|
+
player?: Player;
|
|
4
|
+
players?: Player[];
|
|
5
|
+
};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
//# sourceMappingURL=RuleStep.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { MaterialMove } from '../moves';
|
|
2
|
-
import { MaterialRulesPart } from './MaterialRulesPart';
|
|
3
|
-
export declare abstract class SimultaneousRule<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends MaterialRulesPart<Player, MaterialType, LocationType> {
|
|
4
|
-
isTurnToPlay(player: Player): boolean;
|
|
5
|
-
getLegalMoves(player: Player): MaterialMove<Player, MaterialType, LocationType>[];
|
|
6
|
-
abstract getActivePlayerLegalMoves(playerId: Player): MaterialMove<Player, MaterialType, LocationType>[];
|
|
7
|
-
getAutomaticMoves(): MaterialMove<Player, MaterialType, LocationType>[];
|
|
8
|
-
abstract getMovesAfterPlayersDone(): MaterialMove<Player, MaterialType, LocationType>[];
|
|
9
|
-
}
|
|
1
|
+
import { MaterialMove } from '../moves';
|
|
2
|
+
import { MaterialRulesPart } from './MaterialRulesPart';
|
|
3
|
+
export declare abstract class SimultaneousRule<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> extends MaterialRulesPart<Player, MaterialType, LocationType> {
|
|
4
|
+
isTurnToPlay(player: Player): boolean;
|
|
5
|
+
getLegalMoves(player: Player): MaterialMove<Player, MaterialType, LocationType>[];
|
|
6
|
+
abstract getActivePlayerLegalMoves(playerId: Player): MaterialMove<Player, MaterialType, LocationType>[];
|
|
7
|
+
getAutomaticMoves(): MaterialMove<Player, MaterialType, LocationType>[];
|
|
8
|
+
abstract getMovesAfterPlayersDone(): MaterialMove<Player, MaterialType, LocationType>[];
|
|
9
|
+
}
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.SimultaneousRule = void 0;
|
|
19
|
-
var MaterialRulesPart_1 = require("./MaterialRulesPart");
|
|
20
|
-
var SimultaneousRule = (function (_super) {
|
|
21
|
-
__extends(SimultaneousRule, _super);
|
|
22
|
-
function SimultaneousRule() {
|
|
23
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
24
|
-
}
|
|
25
|
-
SimultaneousRule.prototype.isTurnToPlay = function (player) {
|
|
26
|
-
var _a, _b, _c;
|
|
27
|
-
return (_c = (_b = (_a = this.game.rule) === null || _a === void 0 ? void 0 : _a.players) === null || _b === void 0 ? void 0 : _b.includes(player)) !== null && _c !== void 0 ? _c : false;
|
|
28
|
-
};
|
|
29
|
-
SimultaneousRule.prototype.getLegalMoves = function (player) {
|
|
30
|
-
return this.isTurnToPlay(player) ? this.getActivePlayerLegalMoves(player) : [];
|
|
31
|
-
};
|
|
32
|
-
SimultaneousRule.prototype.getAutomaticMoves = function () {
|
|
33
|
-
var _a, _b;
|
|
34
|
-
if (!((_b = (_a = this.game.rule) === null || _a === void 0 ? void 0 : _a.players) === null || _b === void 0 ? void 0 : _b.length)) {
|
|
35
|
-
return this.getMovesAfterPlayersDone();
|
|
36
|
-
}
|
|
37
|
-
return [];
|
|
38
|
-
};
|
|
39
|
-
return SimultaneousRule;
|
|
40
|
-
}(MaterialRulesPart_1.MaterialRulesPart));
|
|
41
|
-
exports.SimultaneousRule = SimultaneousRule;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.SimultaneousRule = void 0;
|
|
19
|
+
var MaterialRulesPart_1 = require("./MaterialRulesPart");
|
|
20
|
+
var SimultaneousRule = (function (_super) {
|
|
21
|
+
__extends(SimultaneousRule, _super);
|
|
22
|
+
function SimultaneousRule() {
|
|
23
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
24
|
+
}
|
|
25
|
+
SimultaneousRule.prototype.isTurnToPlay = function (player) {
|
|
26
|
+
var _a, _b, _c;
|
|
27
|
+
return (_c = (_b = (_a = this.game.rule) === null || _a === void 0 ? void 0 : _a.players) === null || _b === void 0 ? void 0 : _b.includes(player)) !== null && _c !== void 0 ? _c : false;
|
|
28
|
+
};
|
|
29
|
+
SimultaneousRule.prototype.getLegalMoves = function (player) {
|
|
30
|
+
return this.isTurnToPlay(player) ? this.getActivePlayerLegalMoves(player) : [];
|
|
31
|
+
};
|
|
32
|
+
SimultaneousRule.prototype.getAutomaticMoves = function () {
|
|
33
|
+
var _a, _b;
|
|
34
|
+
if (!((_b = (_a = this.game.rule) === null || _a === void 0 ? void 0 : _a.players) === null || _b === void 0 ? void 0 : _b.length)) {
|
|
35
|
+
return this.getMovesAfterPlayersDone();
|
|
36
|
+
}
|
|
37
|
+
return [];
|
|
38
|
+
};
|
|
39
|
+
return SimultaneousRule;
|
|
40
|
+
}(MaterialRulesPart_1.MaterialRulesPart));
|
|
41
|
+
exports.SimultaneousRule = SimultaneousRule;
|
|
42
42
|
//# sourceMappingURL=SimultaneousRule.js.map
|
|
@@ -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;
|
|
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,5 +1,5 @@
|
|
|
1
|
-
export * from './MaterialRulesMovesBuilder';
|
|
2
|
-
export * from './MaterialRulesPart';
|
|
3
|
-
export * from './PlayerTurnRule';
|
|
4
|
-
export * from './RuleStep';
|
|
5
|
-
export * from './SimultaneousRule';
|
|
1
|
+
export * from './MaterialRulesMovesBuilder';
|
|
2
|
+
export * from './MaterialRulesPart';
|
|
3
|
+
export * from './PlayerTurnRule';
|
|
4
|
+
export * from './RuleStep';
|
|
5
|
+
export * from './SimultaneousRule';
|