@gamepark/rules-api 6.23.0 → 6.24.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 +0 -19
- package/dist/Action.js +0 -59
- package/dist/Action.js.map +1 -1
- package/dist/Bot.d.ts +12 -0
- package/dist/Bot.js +51 -0
- package/dist/Bot.js.map +1 -0
- package/dist/Competitive.d.ts +0 -1
- package/dist/Competitive.js +1 -31
- package/dist/Competitive.js.map +1 -1
- package/dist/Eliminations.js.map +1 -1
- package/dist/GameSetup.d.ts +3 -0
- package/dist/HiddenInformation.d.ts +5 -0
- package/dist/HiddenInformation.js +9 -0
- package/dist/HiddenInformation.js.map +1 -0
- package/dist/LocalMovePreview.js.map +1 -1
- package/dist/RandomMove.d.ts +0 -3
- package/dist/RandomMove.js +0 -12
- package/dist/RandomMove.js.map +1 -1
- package/dist/Rules.d.ts +5 -0
- package/dist/SecretInformation.d.ts +9 -0
- package/dist/SecretInformation.js +9 -0
- package/dist/SecretInformation.js.map +1 -0
- package/dist/TimeLimit.d.ts +0 -4
- package/dist/TimeLimit.js +1 -6
- package/dist/TimeLimit.js.map +1 -1
- package/dist/Undo.js.map +1 -1
- package/dist/UnpredictableMove.d.ts +5 -4
- package/dist/UnpredictableMove.js.map +1 -1
- package/dist/index.d.ts +3 -8
- package/dist/index.js +3 -8
- package/dist/index.js.map +1 -1
- package/dist/material/HiddenMaterialRules.d.ts +3 -3
- package/dist/material/HiddenMaterialRules.js +7 -7
- package/dist/material/HiddenMaterialRules.js.map +1 -1
- package/dist/material/MaterialGame.d.ts +3 -5
- package/dist/material/MaterialGameSetup.d.ts +3 -1
- package/dist/material/MaterialGameSetup.js +14 -6
- package/dist/material/MaterialGameSetup.js.map +1 -1
- package/dist/material/MaterialRules.d.ts +7 -7
- package/dist/material/MaterialRules.js +13 -10
- package/dist/material/MaterialRules.js.map +1 -1
- package/dist/material/SecretMaterialRules.d.ts +1 -1
- package/dist/material/SecretMaterialRules.js.map +1 -1
- package/dist/material/index.d.ts +1 -0
- package/dist/material/index.js +1 -0
- package/dist/material/index.js.map +1 -1
- package/dist/material/items/Material.d.ts +9 -14
- package/dist/material/items/Material.js +66 -93
- package/dist/material/items/Material.js.map +1 -1
- package/dist/material/items/MaterialDeck.d.ts +9 -0
- package/dist/material/items/MaterialDeck.js +43 -0
- package/dist/material/items/MaterialDeck.js.map +1 -0
- package/dist/material/items/MaterialMutator.d.ts +3 -5
- package/dist/material/items/MaterialMutator.js +11 -23
- package/dist/material/items/MaterialMutator.js.map +1 -1
- package/dist/material/items/index.d.ts +1 -0
- package/dist/material/items/index.js +1 -0
- package/dist/material/items/index.js.map +1 -1
- package/dist/material/location/Location.d.ts +1 -0
- package/dist/material/location/Location.js +12 -0
- package/dist/material/location/Location.js.map +1 -1
- package/dist/material/location/strategy/FillGapStrategy.js.map +1 -1
- package/dist/material/location/strategy/PositiveSequenceStrategy.js.map +1 -1
- package/dist/material/memory/GameMemory.js.map +1 -1
- package/dist/material/memory/PlayerMemory.js.map +1 -1
- package/dist/material/moves/CustomMove.js.map +1 -1
- package/dist/material/moves/MaterialMoveBuilder.d.ts +16 -0
- package/dist/material/moves/MaterialMoveBuilder.js +45 -0
- package/dist/material/moves/MaterialMoveBuilder.js.map +1 -0
- package/dist/material/moves/MoveKind.js.map +1 -1
- package/dist/material/moves/index.d.ts +1 -0
- package/dist/material/moves/index.js +1 -0
- package/dist/material/moves/index.js.map +1 -1
- package/dist/material/moves/items/CreateItem.js.map +1 -1
- package/dist/material/moves/items/CreateItemsAtOnce.js.map +1 -1
- package/dist/material/moves/items/DeleteItem.js.map +1 -1
- package/dist/material/moves/items/DeleteItemsAtOnce.js.map +1 -1
- package/dist/material/moves/items/ItemMoveType.js.map +1 -1
- package/dist/material/moves/items/MoveItem.js.map +1 -1
- package/dist/material/moves/items/MoveItemsAtOnce.d.ts +1 -1
- package/dist/material/moves/items/MoveItemsAtOnce.js +2 -2
- package/dist/material/moves/items/MoveItemsAtOnce.js.map +1 -1
- package/dist/material/moves/items/RollItem.js.map +1 -1
- package/dist/material/moves/items/SelectItem.js.map +1 -1
- package/dist/material/moves/items/Shuffle.js.map +1 -1
- package/dist/material/moves/items/index.d.ts +0 -1
- package/dist/material/moves/items/index.js +0 -1
- package/dist/material/moves/items/index.js.map +1 -1
- package/dist/material/moves/local/CloseTutorialPopup.js.map +1 -1
- package/dist/material/moves/local/DisplayHelp.d.ts +0 -4
- package/dist/material/moves/local/DisplayHelp.js +1 -20
- package/dist/material/moves/local/DisplayHelp.js.map +1 -1
- package/dist/material/moves/local/DropItem.d.ts +0 -1
- package/dist/material/moves/local/DropItem.js +0 -7
- package/dist/material/moves/local/DropItem.js.map +1 -1
- package/dist/material/moves/local/LocalMove.js.map +1 -1
- package/dist/material/moves/local/SetTutorialStep.js.map +1 -1
- package/dist/material/rules/MaterialRulesPart.d.ts +2 -3
- package/dist/material/rules/MaterialRulesPart.js +7 -7
- package/dist/material/rules/MaterialRulesPart.js.map +1 -1
- package/dist/material/rules/PlayerTurnRule.js.map +1 -1
- package/dist/material/rules/SimultaneousRule.d.ts +5 -3
- package/dist/material/rules/SimultaneousRule.js +8 -8
- package/dist/material/rules/SimultaneousRule.js.map +1 -1
- package/dist/material/rules/index.d.ts +0 -1
- package/dist/material/rules/index.js +0 -1
- package/dist/material/rules/index.js.map +1 -1
- package/dist/material/tutorial/TutorialState.d.ts +7 -0
- package/dist/material/tutorial/TutorialState.js +3 -0
- package/dist/material/tutorial/TutorialState.js.map +1 -0
- package/dist/material/tutorial/index.d.ts +1 -0
- package/dist/material/tutorial/index.js +18 -0
- package/dist/material/tutorial/index.js.map +1 -0
- package/dist/setup/DefaultGameSetup.d.ts +7 -0
- package/dist/setup/DefaultGameSetup.js +15 -0
- package/dist/setup/DefaultGameSetup.js.map +1 -0
- package/dist/setup/GameSetup.d.ts +3 -0
- package/dist/setup/GameSetup.js +3 -0
- package/dist/setup/GameSetup.js.map +1 -0
- package/dist/setup/GameSetupCreator.d.ts +4 -0
- package/dist/setup/GameSetupCreator.js +3 -0
- package/dist/setup/GameSetupCreator.js.map +1 -0
- package/dist/setup/index.d.ts +2 -0
- package/dist/setup/index.js +19 -0
- package/dist/setup/index.js.map +1 -0
- package/dist/utils/action-view.util.d.ts +17 -0
- package/dist/utils/action-view.util.js +48 -0
- package/dist/utils/action-view.util.js.map +1 -0
- package/dist/utils/action.util.d.ts +5 -0
- package/dist/utils/action.util.js +25 -0
- package/dist/utils/action.util.js.map +1 -0
- package/dist/utils/automatic-moves.util.d.ts +2 -0
- package/dist/utils/automatic-moves.util.js +25 -0
- package/dist/utils/automatic-moves.util.js.map +1 -0
- package/dist/utils/coordinates.util.d.ts +5 -0
- package/dist/utils/coordinates.util.js +16 -0
- package/dist/utils/coordinates.util.js.map +1 -0
- package/dist/utils/enum.util.d.ts +7 -0
- package/dist/utils/enum.util.js +20 -0
- package/dist/utils/enum.util.js.map +1 -0
- package/dist/utils/game-view.util.d.ts +2 -0
- package/dist/utils/game-view.util.js +18 -0
- package/dist/utils/game-view.util.js.map +1 -0
- package/dist/utils/grid.squares.util.d.ts +1 -1
- package/dist/utils/grid.squares.util.js +6 -5
- package/dist/utils/grid.squares.util.js.map +1 -1
- package/dist/utils/grid.util.js.map +1 -1
- package/dist/utils/index.d.ts +8 -2
- package/dist/utils/index.js +8 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/listing.util.js.map +1 -1
- package/dist/utils/loops.util.d.ts +4 -0
- package/dist/utils/loops.util.js +15 -0
- package/dist/utils/loops.util.js.map +1 -0
- package/dist/utils/random.util.d.ts +4 -0
- package/dist/utils/random.util.js +18 -0
- package/dist/utils/random.util.js.map +1 -0
- package/dist/utils/rank.util.d.ts +2 -0
- package/dist/utils/rank.util.js +35 -0
- package/dist/utils/rank.util.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"game-view.util.js","sourceRoot":"","sources":["../../src/utils/game-view.util.ts"],"names":[],"mappings":";;;AAAA,0DAA2D;AAE3D,0DAA2D;AAE3D,SAAgB,WAAW,CAA2B,KAAiC,EAAE,QAAmB;IAC1G,IAAI,IAAA,wCAAoB,EAA+B,KAAK,CAAC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACxF,OAAO,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;IACtC,CAAC;SAAM,IAAI,IAAA,wCAAoB,EAAW,KAAK,CAAC,EAAE,CAAC;QACjD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAA;IACxB,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC,IAAuB,CAAA;IACtC,CAAC;AACH,CAAC;AARD,kCAQC"}
|
|
@@ -8,4 +8,4 @@ export declare enum Direction {
|
|
|
8
8
|
West = 4
|
|
9
9
|
}
|
|
10
10
|
export declare const directions: Direction[];
|
|
11
|
-
export declare const getSquareInDirection: (origin: Partial<XYCoordinates>, direction: Direction) => XYCoordinates;
|
|
11
|
+
export declare const getSquareInDirection: (origin: Partial<XYCoordinates>, direction: Direction, distance?: number) => XYCoordinates;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getSquareInDirection = exports.directions = exports.Direction = exports.getDistanceBetweenSquares = exports.areAdjacentSquares = void 0;
|
|
4
|
-
var
|
|
4
|
+
var enum_util_1 = require("./enum.util");
|
|
5
5
|
var grid_util_1 = require("./grid.util");
|
|
6
6
|
var areAdjacentSquares = function (square1, square2) {
|
|
7
7
|
return (0, grid_util_1.isXYCoordinates)(square1) && (0, grid_util_1.isXYCoordinates)(square2) && (0, exports.getDistanceBetweenSquares)(square1, square2) === 1;
|
|
@@ -18,13 +18,14 @@ var Direction;
|
|
|
18
18
|
Direction[Direction["East"] = 3] = "East";
|
|
19
19
|
Direction[Direction["West"] = 4] = "West";
|
|
20
20
|
})(Direction || (exports.Direction = Direction = {}));
|
|
21
|
-
exports.directions =
|
|
22
|
-
var getSquareInDirection = function (origin, direction) {
|
|
21
|
+
exports.directions = (0, enum_util_1.getEnumValues)(Direction);
|
|
22
|
+
var getSquareInDirection = function (origin, direction, distance) {
|
|
23
|
+
if (distance === void 0) { distance = 1; }
|
|
23
24
|
if (origin.x === undefined || origin.y === undefined)
|
|
24
25
|
throw new Error('Missing x or y to getSquareInDirection');
|
|
25
26
|
return {
|
|
26
|
-
x: direction === Direction.East ? origin.x
|
|
27
|
-
y: direction === Direction.North ? origin.y -
|
|
27
|
+
x: direction === Direction.East ? origin.x + distance : direction === Direction.West ? origin.x - distance : origin.x,
|
|
28
|
+
y: direction === Direction.North ? origin.y - distance : direction === Direction.South ? origin.y + distance : origin.y
|
|
28
29
|
};
|
|
29
30
|
};
|
|
30
31
|
exports.getSquareInDirection = getSquareInDirection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid.squares.util.js","sourceRoot":"","sources":["../../src/utils/grid.squares.util.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"grid.squares.util.js","sourceRoot":"","sources":["../../src/utils/grid.squares.util.ts"],"names":[],"mappings":";;;AAAA,yCAA2C;AAC3C,yCAA4D;AAQrD,IAAM,kBAAkB,GAAG,UAAC,OAA+B,EAAE,OAA+B;IACjG,OAAA,IAAA,2BAAe,EAAC,OAAO,CAAC,IAAI,IAAA,2BAAe,EAAC,OAAO,CAAC,IAAI,IAAA,iCAAyB,EAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC;AAAzG,CAAyG,CAAA;AAD9F,QAAA,kBAAkB,sBAC4E;AASpG,IAAM,yBAAyB,GAAG,UAAC,OAAsB,EAAE,OAAsB;IACtF,OAAA,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;AAAjE,CAAiE,CAAA;AADtD,QAAA,yBAAyB,6BAC6B;AAKnE,IAAY,SAEX;AAFD,WAAY,SAAS;IACnB,2CAAS,CAAA;IAAE,2CAAK,CAAA;IAAE,yCAAI,CAAA;IAAE,yCAAI,CAAA;AAC9B,CAAC,EAFW,SAAS,yBAAT,SAAS,QAEpB;AAKY,QAAA,UAAU,GAAG,IAAA,yBAAa,EAAC,SAAS,CAAC,CAAA;AAS3C,IAAM,oBAAoB,GAAG,UAAC,MAA8B,EAAE,SAAoB,EAAE,QAAY;IAAZ,yBAAA,EAAA,YAAY;IACrG,IAAI,MAAM,CAAC,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,CAAC,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;IAC/G,OAAO;QACL,CAAC,EAAE,SAAS,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACrH,CAAC,EAAE,SAAS,KAAK,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;KACxH,CAAA;AACH,CAAC,CAAA;AANY,QAAA,oBAAoB,wBAMhC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid.util.js","sourceRoot":"","sources":["../../src/utils/grid.util.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"grid.util.js","sourceRoot":"","sources":["../../src/utils/grid.util.ts"],"names":[],"mappings":";;;AAaO,IAAM,eAAe,GAAG,UAAC,WAAgB;IAC9C,OAAO,OAAO,WAAW,KAAK,QAAQ,IAAI,OAAO,WAAW,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,WAAW,CAAC,CAAC,KAAK,QAAQ,CAAA;AAClH,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B"}
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
export * from './
|
|
1
|
+
export * from './action.util';
|
|
2
|
+
export * from './action-view.util';
|
|
3
|
+
export * from './automatic-moves.util';
|
|
4
|
+
export * from './enum.util';
|
|
5
|
+
export * from './game-view.util';
|
|
2
6
|
export * from './grid.util';
|
|
3
7
|
export * from './grid.squares.util';
|
|
4
|
-
export * from './isDeadEndMove.util';
|
|
5
8
|
export * from './listing.util';
|
|
9
|
+
export * from './loops.util';
|
|
10
|
+
export * from './random.util';
|
|
11
|
+
export * from './rank.util';
|
package/dist/utils/index.js
CHANGED
|
@@ -14,9 +14,15 @@ 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("./
|
|
17
|
+
__exportStar(require("./action.util"), exports);
|
|
18
|
+
__exportStar(require("./action-view.util"), exports);
|
|
19
|
+
__exportStar(require("./automatic-moves.util"), exports);
|
|
20
|
+
__exportStar(require("./enum.util"), exports);
|
|
21
|
+
__exportStar(require("./game-view.util"), exports);
|
|
18
22
|
__exportStar(require("./grid.util"), exports);
|
|
19
23
|
__exportStar(require("./grid.squares.util"), exports);
|
|
20
|
-
__exportStar(require("./isDeadEndMove.util"), exports);
|
|
21
24
|
__exportStar(require("./listing.util"), exports);
|
|
25
|
+
__exportStar(require("./loops.util"), exports);
|
|
26
|
+
__exportStar(require("./random.util"), exports);
|
|
27
|
+
__exportStar(require("./rank.util"), exports);
|
|
22
28
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,8CAA2B;AAC3B,sDAAmC;AACnC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,qDAAkC;AAClC,yDAAsC;AACtC,8CAA2B;AAC3B,mDAAgC;AAChC,8CAA2B;AAC3B,sDAAmC;AACnC,iDAA8B;AAC9B,+CAA4B;AAC5B,gDAA6B;AAC7B,8CAA2B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listing.util.js","sourceRoot":"","sources":["../../src/utils/listing.util.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"listing.util.js","sourceRoot":"","sources":["../../src/utils/listing.util.ts"],"names":[],"mappings":";;;AAMA,SAAgB,aAAa,CAAmB,OAAmC;IACjF,IAAM,IAAI,GAAQ,EAAE,CAAA;IACpB,KAAK,IAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,IAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAM,CAAA;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,GAAG,CAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACnB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AATD,sCASC;AAQD,SAAgB,aAAa,CAAmB,IAAS;IACvD,IAAM,OAAO,GAA+B,EAAE,CAAA;IAC9C,KAAgB,UAAI,EAAJ,aAAI,EAAJ,kBAAI,EAAJ,IAAI,EAAE,CAAC;QAAlB,IAAM,CAAC,aAAA;QACV,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IAC/C,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAND,sCAMC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loopWithFuse = void 0;
|
|
4
|
+
function loopWithFuse(repeat, options) {
|
|
5
|
+
var attempts = (options === null || options === void 0 ? void 0 : options.attempts) || (process.env.NODE_ENV === 'development' ? 1000 : 10000);
|
|
6
|
+
var errorFn = (options === null || options === void 0 ? void 0 : options.errorFn) || (function () { return new Error('Infinite loop detected'); });
|
|
7
|
+
while (repeat()) {
|
|
8
|
+
if (attempts == 0) {
|
|
9
|
+
throw errorFn();
|
|
10
|
+
}
|
|
11
|
+
attempts--;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.loopWithFuse = loopWithFuse;
|
|
15
|
+
//# sourceMappingURL=loops.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loops.util.js","sourceRoot":"","sources":["../../src/utils/loops.util.ts"],"names":[],"mappings":";;;AAAA,SAAgB,YAAY,CAAC,MAAqB,EAAE,OAAsD;IACxG,IAAI,QAAQ,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,QAAQ,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IAC3F,IAAM,OAAO,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,KAAI,CAAC,cAAM,OAAA,IAAI,KAAK,CAAC,wBAAwB,CAAC,EAAnC,CAAmC,CAAC,CAAA;IAC/E,OAAO,MAAM,EAAE,EAAE,CAAC;QAChB,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,OAAO,EAAE,CAAA;QACjB,CAAC;QACD,QAAQ,EAAE,CAAA;IACZ,CAAC;AACH,CAAC;AATD,oCASC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { RandomMove } from '../RandomMove';
|
|
2
|
+
import { Rules } from '../Rules';
|
|
3
|
+
export declare function hasRandomMove<Game, Move, RandomizedMove>(rules: Rules<Game, Move>): rules is Rules<Game, Move> & RandomMove<Move, RandomizedMove>;
|
|
4
|
+
export declare function randomizeMoves<Game, Move, RandomizedMove = Move>(rules: Rules<Game, Move>, moves: Move[]): (Move & RandomizedMove)[];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.randomizeMoves = exports.hasRandomMove = void 0;
|
|
4
|
+
function hasRandomMove(rules) {
|
|
5
|
+
var test = rules;
|
|
6
|
+
return typeof test.randomize === 'function';
|
|
7
|
+
}
|
|
8
|
+
exports.hasRandomMove = hasRandomMove;
|
|
9
|
+
function randomizeMoves(rules, moves) {
|
|
10
|
+
if (hasRandomMove(rules)) {
|
|
11
|
+
return moves.map(function (move) { return rules.randomize(move); });
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
return moves;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.randomizeMoves = randomizeMoves;
|
|
18
|
+
//# sourceMappingURL=random.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"random.util.js","sourceRoot":"","sources":["../../src/utils/random.util.ts"],"names":[],"mappings":";;;AAQA,SAAgB,aAAa,CAC3B,KAAwB;IAExB,IAAM,IAAI,GAAG,KAA6D,CAAA;IAC1E,OAAO,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU,CAAA;AAC7C,CAAC;AALD,sCAKC;AAQD,SAAgB,cAAc,CAAoC,KAAwB,EAAE,KAAa;IACvG,IAAI,aAAa,CAA6B,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAArB,CAAqB,CAAC,CAAA;IACjD,CAAC;SAAM,CAAC;QACN,OAAO,KAAkC,CAAA;IAC3C,CAAC;AACH,CAAC;AAND,wCAMC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rankPlayers = void 0;
|
|
4
|
+
var Competitive_1 = require("../Competitive");
|
|
5
|
+
var rankPlayers = function (rules, playerA, playerB) {
|
|
6
|
+
if ((0, Competitive_1.isCompetitiveRank)(rules)) {
|
|
7
|
+
return rules.rankPlayers(playerA, playerB);
|
|
8
|
+
}
|
|
9
|
+
if ((0, Competitive_1.isCompetitiveScore)(rules)) {
|
|
10
|
+
var scoreA = rules.getScore(playerA);
|
|
11
|
+
var scoreB = rules.getScore(playerB);
|
|
12
|
+
if (scoreA !== scoreB) {
|
|
13
|
+
return scoreB - scoreA;
|
|
14
|
+
}
|
|
15
|
+
if (rules.getTieBreaker) {
|
|
16
|
+
for (var tieBreaker = 1; tieBreaker <= 10; tieBreaker++) {
|
|
17
|
+
var tieBreakerA = rules.getTieBreaker(tieBreaker, playerA);
|
|
18
|
+
var tieBreakerB = rules.getTieBreaker(tieBreaker, playerB);
|
|
19
|
+
if (tieBreakerA === undefined) {
|
|
20
|
+
return tieBreakerB === undefined ? 0 : Infinity;
|
|
21
|
+
}
|
|
22
|
+
else if (tieBreakerB === undefined) {
|
|
23
|
+
return -Infinity;
|
|
24
|
+
}
|
|
25
|
+
else if (tieBreakerA !== tieBreakerB) {
|
|
26
|
+
return tieBreakerB - tieBreakerA;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
console.error('getTieBreaker must return "undefined" after the last tie breaker is still a tie!');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return 0;
|
|
33
|
+
};
|
|
34
|
+
exports.rankPlayers = rankPlayers;
|
|
35
|
+
//# sourceMappingURL=rank.util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rank.util.js","sourceRoot":"","sources":["../../src/utils/rank.util.ts"],"names":[],"mappings":";;;AAAA,8CAAsE;AAG/D,IAAM,WAAW,GAAG,UAAiB,KAAgC,EAAE,OAAiB,EAAE,OAAiB;IAChH,IAAI,IAAA,+BAAiB,EAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC5C,CAAC;IACD,IAAI,IAAA,gCAAkB,EAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,IAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtC,IAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QACtC,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,OAAO,MAAM,GAAG,MAAM,CAAA;QACxB,CAAC;QACD,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;YACxB,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,UAAU,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC;gBACxD,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;gBAC5D,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;gBAC5D,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;oBAC9B,OAAO,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;gBACjD,CAAC;qBAAM,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;oBACrC,OAAO,CAAC,QAAQ,CAAA;gBAClB,CAAC;qBAAM,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;oBACvC,OAAO,WAAW,GAAG,WAAW,CAAA;gBAClC,CAAC;YACH,CAAC;YACD,OAAO,CAAC,KAAK,CAAC,kFAAkF,CAAC,CAAA;QACnG,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AA1BY,QAAA,WAAW,eA0BvB"}
|