board-game-engine 1.0.5 → 2.0.1
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/.github/workflows/ci.yml +33 -0
- package/dist/board-game-engine.cjs +463 -349
- package/dist/board-game-engine.js +463 -349
- package/dist/board-game-engine.min.js +22 -22
- package/dist/board-game-engine.mjs +461 -348
- package/dist/client/client.d.ts +76 -0
- package/dist/client/client.d.ts.map +1 -0
- package/dist/game-factory/bank/bank-slot.d.ts +30 -0
- package/dist/game-factory/bank/bank-slot.d.ts.map +1 -0
- package/dist/game-factory/bank/bank.d.ts +34 -0
- package/dist/game-factory/bank/bank.d.ts.map +1 -0
- package/dist/game-factory/board.d.ts +4 -0
- package/dist/game-factory/board.d.ts.map +1 -0
- package/dist/game-factory/condition/condition-factory.d.ts +4 -0
- package/dist/game-factory/condition/condition-factory.d.ts.map +1 -0
- package/dist/game-factory/condition/condition.d.ts +13 -0
- package/dist/game-factory/condition/condition.d.ts.map +1 -0
- package/dist/game-factory/condition/contains-condition.d.ts +8 -0
- package/dist/game-factory/condition/contains-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/contains-same-condition.d.ts +7 -0
- package/dist/game-factory/condition/contains-same-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/evaluate-condition.d.ts +8 -0
- package/dist/game-factory/condition/evaluate-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/every-condition.d.ts +12 -0
- package/dist/game-factory/condition/every-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/has-line-condition.d.ts +8 -0
- package/dist/game-factory/condition/has-line-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/in-line-condition.d.ts +8 -0
- package/dist/game-factory/condition/in-line-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/is-condition.d.ts +8 -0
- package/dist/game-factory/condition/is-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/is-full-condition.d.ts +7 -0
- package/dist/game-factory/condition/is-full-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/no-possible-moves-condition.d.ts +7 -0
- package/dist/game-factory/condition/no-possible-moves-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/not-condition.d.ts +7 -0
- package/dist/game-factory/condition/not-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/or-condition.d.ts +7 -0
- package/dist/game-factory/condition/or-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/position-condition.d.ts +7 -0
- package/dist/game-factory/condition/position-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/some-condition.d.ts +8 -0
- package/dist/game-factory/condition/some-condition.d.ts.map +1 -0
- package/dist/game-factory/condition/would-condition.d.ts +8 -0
- package/dist/game-factory/condition/would-condition.d.ts.map +1 -0
- package/dist/game-factory/entity.d.ts +13 -0
- package/dist/game-factory/entity.d.ts.map +1 -0
- package/dist/game-factory/expand-game-rules.d.ts +3 -0
- package/dist/game-factory/expand-game-rules.d.ts.map +1 -0
- package/dist/game-factory/game-factory.d.ts +10 -0
- package/dist/game-factory/game-factory.d.ts.map +1 -0
- package/{src/game-factory/move/end-turn.js → dist/game-factory/move/end-turn.d.ts} +2 -4
- package/dist/game-factory/move/end-turn.d.ts.map +1 -0
- package/dist/game-factory/move/for-each.d.ts +5 -0
- package/dist/game-factory/move/for-each.d.ts.map +1 -0
- package/dist/game-factory/move/index.d.ts +6 -0
- package/dist/game-factory/move/index.d.ts.map +1 -0
- package/dist/game-factory/move/move-entity.d.ts +7 -0
- package/dist/game-factory/move/move-entity.d.ts.map +1 -0
- package/dist/game-factory/move/move-factory.d.ts +18 -0
- package/dist/game-factory/move/move-factory.d.ts.map +1 -0
- package/dist/game-factory/move/move.d.ts +54 -0
- package/dist/game-factory/move/move.d.ts.map +1 -0
- package/dist/game-factory/move/pass-turn.d.ts +5 -0
- package/dist/game-factory/move/pass-turn.d.ts.map +1 -0
- package/{src/game-factory/move/pass.js → dist/game-factory/move/pass.d.ts} +2 -4
- package/dist/game-factory/move/pass.d.ts.map +1 -0
- package/dist/game-factory/move/place-new.d.ts +5 -0
- package/dist/game-factory/move/place-new.d.ts.map +1 -0
- package/dist/game-factory/move/remove-entity.d.ts +5 -0
- package/dist/game-factory/move/remove-entity.d.ts.map +1 -0
- package/dist/game-factory/move/set-active-players.d.ts +5 -0
- package/dist/game-factory/move/set-active-players.d.ts.map +1 -0
- package/dist/game-factory/move/set-state.d.ts +5 -0
- package/dist/game-factory/move/set-state.d.ts.map +1 -0
- package/dist/game-factory/move/shuffle.d.ts +5 -0
- package/dist/game-factory/move/shuffle.d.ts.map +1 -0
- package/dist/game-factory/move/take-from.d.ts +11 -0
- package/dist/game-factory/move/take-from.d.ts.map +1 -0
- package/dist/game-factory/space/space.d.ts +10 -0
- package/dist/game-factory/space/space.d.ts.map +1 -0
- package/dist/game-factory/space-group/grid.d.ts +15 -0
- package/dist/game-factory/space-group/grid.d.ts.map +1 -0
- package/dist/game-factory/space-group/space-group.d.ts +20 -0
- package/dist/game-factory/space-group/space-group.d.ts.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/registry.d.ts +17 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/types/bagel-types.d.ts +339 -0
- package/dist/types/bagel-types.d.ts.map +1 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/rule-with-conditions.d.ts +9 -0
- package/dist/types/rule-with-conditions.d.ts.map +1 -0
- package/dist/utils/any-valid-moves.d.ts +2 -0
- package/dist/utils/any-valid-moves.d.ts.map +1 -0
- package/dist/utils/bgio-resolve-types.d.ts +25 -0
- package/dist/utils/bgio-resolve-types.d.ts.map +1 -0
- package/dist/utils/check-conditions.d.ts +7 -0
- package/dist/utils/check-conditions.d.ts.map +1 -0
- package/dist/utils/create-payload.d.ts +5 -0
- package/dist/utils/create-payload.d.ts.map +1 -0
- package/dist/utils/deserialize-bgio-arguments.d.ts +3 -0
- package/dist/utils/deserialize-bgio-arguments.d.ts.map +1 -0
- package/dist/utils/do-moves.d.ts +8 -0
- package/dist/utils/do-moves.d.ts.map +1 -0
- package/dist/utils/entity-matches.d.ts +6 -0
- package/dist/utils/entity-matches.d.ts.map +1 -0
- package/dist/utils/find-met-condition.d.ts +6 -0
- package/dist/utils/find-met-condition.d.ts.map +1 -0
- package/dist/utils/get-current-moves.d.ts +24 -0
- package/dist/utils/get-current-moves.d.ts.map +1 -0
- package/dist/utils/get-scenario-results.d.ts +3 -0
- package/dist/utils/get-scenario-results.d.ts.map +1 -0
- package/dist/utils/get-steps.d.ts +13 -0
- package/dist/utils/get-steps.d.ts.map +1 -0
- package/dist/utils/get.d.ts +7 -0
- package/dist/utils/get.d.ts.map +1 -0
- package/dist/utils/grid-contains-sequence.d.ts +27 -0
- package/dist/utils/grid-contains-sequence.d.ts.map +1 -0
- package/dist/utils/json-transformer.d.ts +8 -0
- package/dist/utils/json-transformer.d.ts.map +1 -0
- package/dist/utils/prepare-payload.d.ts +2 -0
- package/dist/utils/prepare-payload.d.ts.map +1 -0
- package/dist/utils/resolve-entity.d.ts +3 -0
- package/dist/utils/resolve-entity.d.ts.map +1 -0
- package/dist/utils/resolve-expression.d.ts +6 -0
- package/dist/utils/resolve-expression.d.ts.map +1 -0
- package/dist/utils/resolve-properties.d.ts +4 -0
- package/dist/utils/resolve-properties.d.ts.map +1 -0
- package/dist/utils/simulate-move.d.ts +16 -0
- package/dist/utils/simulate-move.d.ts.map +1 -0
- package/examples/checkers.json +2 -2
- package/examples/connect-four.json +1 -1
- package/examples/eights.json +15 -15
- package/package.json +9 -3
- package/playwright-report/index.html +1 -1
- package/scripts/build.mjs +2 -2
- package/src/client/client.ts +306 -0
- package/src/game-factory/bank/bank-slot.ts +81 -0
- package/src/game-factory/bank/bank.ts +125 -0
- package/src/game-factory/{board.js → board.ts} +1 -1
- package/src/game-factory/condition/condition-factory.ts +59 -0
- package/src/game-factory/condition/condition.ts +50 -0
- package/src/game-factory/condition/{contains-condition.js → contains-condition.ts} +5 -4
- package/src/game-factory/condition/{contains-same-condition.js → contains-same-condition.ts} +8 -5
- package/src/game-factory/condition/{evaluate-condition.js → evaluate-condition.ts} +4 -3
- package/src/game-factory/condition/every-condition.ts +27 -0
- package/src/game-factory/condition/has-line-condition.ts +15 -0
- package/src/game-factory/condition/in-line-condition.ts +25 -0
- package/src/game-factory/condition/is-condition.ts +24 -0
- package/src/game-factory/condition/is-full-condition.ts +10 -0
- package/src/game-factory/condition/{no-possible-moves-condition.js → no-possible-moves-condition.ts} +3 -2
- package/src/game-factory/condition/{not-condition.js → not-condition.ts} +3 -2
- package/src/game-factory/condition/{or-condition.js → or-condition.ts} +3 -2
- package/src/game-factory/condition/position-condition.ts +13 -0
- package/src/game-factory/condition/{some-condition.js → some-condition.ts} +5 -3
- package/src/game-factory/condition/would-condition.ts +104 -0
- package/src/game-factory/entity.ts +37 -0
- package/src/game-factory/expand-game-rules.ts +263 -0
- package/src/game-factory/game-factory.ts +263 -0
- package/src/game-factory/move/end-turn.ts +7 -0
- package/src/game-factory/move/for-each.ts +20 -0
- package/src/game-factory/move/move-entity.ts +18 -0
- package/src/game-factory/move/move-factory.ts +107 -0
- package/src/game-factory/move/move.ts +147 -0
- package/src/game-factory/move/pass-turn.ts +15 -0
- package/src/game-factory/move/pass.ts +7 -0
- package/src/game-factory/move/place-new.ts +42 -0
- package/src/game-factory/move/remove-entity.ts +11 -0
- package/src/game-factory/move/set-active-players.ts +26 -0
- package/src/game-factory/move/set-state.ts +14 -0
- package/src/game-factory/move/shuffle.ts +9 -0
- package/src/game-factory/move/take-from.ts +12 -0
- package/src/game-factory/space/space.ts +36 -0
- package/src/game-factory/space-group/grid.ts +48 -0
- package/src/game-factory/space-group/space-group.ts +44 -0
- package/src/index.ts +5 -0
- package/src/types/bagel-types.ts +449 -0
- package/src/types/boardgame-io-core.d.ts +7 -0
- package/src/types/index.ts +70 -0
- package/src/types/rule-with-conditions.ts +9 -0
- package/src/utils/{any-valid-moves.js → any-valid-moves.ts} +54 -49
- package/src/utils/bgio-resolve-types.ts +27 -0
- package/src/utils/check-conditions.ts +28 -0
- package/src/utils/create-payload.ts +19 -0
- package/src/utils/deserialize-bgio-arguments.ts +10 -0
- package/src/utils/do-moves.ts +22 -0
- package/src/utils/entity-matches.ts +30 -0
- package/src/utils/expr-eval.d.ts +6 -0
- package/src/utils/find-met-condition.ts +23 -0
- package/src/utils/get-current-moves.ts +39 -0
- package/src/utils/get-scenario-results.ts +30 -0
- package/src/utils/get-steps.ts +38 -0
- package/src/utils/get.ts +28 -0
- package/src/utils/{grid-contains-sequence.js → grid-contains-sequence.ts} +71 -33
- package/src/utils/json-transformer.ts +17 -0
- package/src/utils/prepare-payload.ts +20 -0
- package/src/utils/resolve-entity.ts +15 -0
- package/src/utils/resolve-expression.ts +16 -0
- package/src/utils/resolve-properties.ts +172 -0
- package/src/utils/simulate-move.ts +32 -0
- package/src/wackson.d.ts +4 -0
- package/tsconfig.build.json +14 -0
- package/tsconfig.json +21 -0
- package/src/client/client.js +0 -224
- package/src/game-factory/bank/bank-slot.js +0 -69
- package/src/game-factory/bank/bank.js +0 -114
- package/src/game-factory/condition/condition-factory.js +0 -52
- package/src/game-factory/condition/condition.js +0 -39
- package/src/game-factory/condition/every-condition.js +0 -25
- package/src/game-factory/condition/has-line-condition.js +0 -14
- package/src/game-factory/condition/in-line-condition.js +0 -19
- package/src/game-factory/condition/is-condition.js +0 -23
- package/src/game-factory/condition/is-full-condition.js +0 -9
- package/src/game-factory/condition/position-condition.js +0 -12
- package/src/game-factory/condition/would-condition.js +0 -94
- package/src/game-factory/entity.js +0 -29
- package/src/game-factory/expand-game-rules.js +0 -271
- package/src/game-factory/game-factory.js +0 -239
- package/src/game-factory/move/for-each.js +0 -18
- package/src/game-factory/move/move-entity.js +0 -16
- package/src/game-factory/move/move-factory.js +0 -89
- package/src/game-factory/move/move.js +0 -131
- package/src/game-factory/move/pass-turn.js +0 -10
- package/src/game-factory/move/place-new.js +0 -33
- package/src/game-factory/move/remove-entity.js +0 -7
- package/src/game-factory/move/set-active-players.js +0 -23
- package/src/game-factory/move/set-state.js +0 -11
- package/src/game-factory/move/shuffle.js +0 -7
- package/src/game-factory/move/take-from.js +0 -7
- package/src/game-factory/space/space.js +0 -30
- package/src/game-factory/space-group/grid.js +0 -43
- package/src/game-factory/space-group/space-group.js +0 -29
- package/src/index.js +0 -2
- package/src/utils/check-conditions.js +0 -28
- package/src/utils/create-payload.js +0 -16
- package/src/utils/deserialize-bgio-arguments.js +0 -8
- package/src/utils/do-moves.js +0 -18
- package/src/utils/entity-matches.js +0 -20
- package/src/utils/find-met-condition.js +0 -22
- package/src/utils/get-current-moves.js +0 -12
- package/src/utils/get-scenario-results.js +0 -23
- package/src/utils/get-steps.js +0 -29
- package/src/utils/get.js +0 -25
- package/src/utils/json-transformer.js +0 -12
- package/src/utils/prepare-payload.js +0 -16
- package/src/utils/resolve-entity.js +0 -9
- package/src/utils/resolve-expression.js +0 -10
- package/src/utils/resolve-properties.js +0 -149
- package/src/utils/simulate-move.js +0 -25
- /package/src/game-factory/move/{index.js → index.ts} +0 -0
- /package/src/{registry.js → registry.ts} +0 -0
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { Client as BoardgameIOClient } from "@mnbroatch/boardgame.io/client";
|
|
2
|
+
import { Debug } from "@mnbroatch/boardgame.io/debug";
|
|
3
|
+
import { SocketIO } from "@mnbroatch/boardgame.io/multiplayer";
|
|
4
|
+
import type { BoardGameEngineGame } from "../game-factory/game-factory.js";
|
|
5
|
+
export interface ClientOptions {
|
|
6
|
+
boardgameIOGame?: BoardGameEngineGame;
|
|
7
|
+
/** JSON string of a {@link GameFactoryInput} rule object */
|
|
8
|
+
gameRules?: string;
|
|
9
|
+
gameName?: string;
|
|
10
|
+
server?: string;
|
|
11
|
+
numPlayers?: number;
|
|
12
|
+
debug?: {
|
|
13
|
+
collapseOnLoad?: boolean;
|
|
14
|
+
impl?: typeof Debug;
|
|
15
|
+
};
|
|
16
|
+
matchID?: string;
|
|
17
|
+
playerID?: string | null;
|
|
18
|
+
credentials?: string;
|
|
19
|
+
multiplayer?: ReturnType<typeof SocketIO>;
|
|
20
|
+
onClientUpdate?: () => void;
|
|
21
|
+
}
|
|
22
|
+
interface MoveBuilder {
|
|
23
|
+
targets: unknown[];
|
|
24
|
+
stepIndex: number;
|
|
25
|
+
eliminatedMoves: string[];
|
|
26
|
+
}
|
|
27
|
+
export declare class Client {
|
|
28
|
+
options: ClientOptions;
|
|
29
|
+
game: BoardGameEngineGame;
|
|
30
|
+
client?: ReturnType<typeof BoardgameIOClient>;
|
|
31
|
+
moveBuilder?: MoveBuilder;
|
|
32
|
+
optimisticWinner?: unknown | null;
|
|
33
|
+
constructor(options: ClientOptions);
|
|
34
|
+
connect(): this | undefined;
|
|
35
|
+
update(): void;
|
|
36
|
+
getState(): {
|
|
37
|
+
state?: undefined;
|
|
38
|
+
gameover?: undefined;
|
|
39
|
+
moves?: undefined;
|
|
40
|
+
currentMoves?: undefined;
|
|
41
|
+
allClickable?: undefined;
|
|
42
|
+
_wrappedMoves?: undefined;
|
|
43
|
+
_possibleMoveMeta?: undefined;
|
|
44
|
+
} | {
|
|
45
|
+
state: import("@mnbroatch/boardgame.io").State<unknown> & {
|
|
46
|
+
isActive: boolean;
|
|
47
|
+
isConnected: boolean;
|
|
48
|
+
log: import("@mnbroatch/boardgame.io").LogEntry[];
|
|
49
|
+
};
|
|
50
|
+
gameover: any;
|
|
51
|
+
moves: Record<string, (...args: any[]) => void>;
|
|
52
|
+
currentMoves: Record<string, unknown> | never[];
|
|
53
|
+
allClickable?: undefined;
|
|
54
|
+
_wrappedMoves?: undefined;
|
|
55
|
+
_possibleMoveMeta?: undefined;
|
|
56
|
+
} | {
|
|
57
|
+
state: import("@mnbroatch/boardgame.io").State<unknown> & {
|
|
58
|
+
isActive: boolean;
|
|
59
|
+
isConnected: boolean;
|
|
60
|
+
log: import("@mnbroatch/boardgame.io").LogEntry[];
|
|
61
|
+
};
|
|
62
|
+
gameover: any;
|
|
63
|
+
allClickable: Set<unknown>;
|
|
64
|
+
_wrappedMoves: Record<string, unknown>;
|
|
65
|
+
_possibleMoveMeta: Record<string, {
|
|
66
|
+
clickableForMove: Set<unknown>;
|
|
67
|
+
}>;
|
|
68
|
+
moves?: undefined;
|
|
69
|
+
currentMoves?: undefined;
|
|
70
|
+
};
|
|
71
|
+
doStep(_target: unknown): void;
|
|
72
|
+
reset(): void;
|
|
73
|
+
undoStep(): void;
|
|
74
|
+
}
|
|
75
|
+
export {};
|
|
76
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAG/D,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,iCAAiC,CAAC;AAa1F,MAAM,WAAW,aAAa;IAC5B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE;QACN,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,IAAI,CAAC,EAAE,OAAO,KAAK,CAAC;KACrB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;CAC7B;AAED,UAAU,WAAW;IACnB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,qBAAa,MAAM;IACjB,OAAO,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IAC9C,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;gBAErB,OAAO,EAAE,aAAa;IAWnC,OAAO;IAsCP,MAAM;IAIN,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BA8HoD,GAAG,CAAC,OAAO,CAAC;;;;;IAtFxE,MAAM,CAAE,OAAO,EAAE,OAAO;IAuDxB,KAAK;IAOL,QAAQ;CAWT"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { BgioResolveState } from "../../utils/bgio-resolve-types.js";
|
|
2
|
+
declare class BankSlot {
|
|
3
|
+
bank: {
|
|
4
|
+
createEntity: (rule: Record<string, unknown>) => unknown;
|
|
5
|
+
};
|
|
6
|
+
rule: Record<string, unknown> & {
|
|
7
|
+
count?: number | string;
|
|
8
|
+
name?: string;
|
|
9
|
+
};
|
|
10
|
+
pool: unknown[];
|
|
11
|
+
remaining: number;
|
|
12
|
+
constructor(rule: Record<string, unknown> & {
|
|
13
|
+
count?: number | string;
|
|
14
|
+
name?: string;
|
|
15
|
+
}, bank: BankSlot["bank"]);
|
|
16
|
+
getOne(bgioArguments: BgioResolveState, options: {
|
|
17
|
+
state?: unknown;
|
|
18
|
+
}, context: Record<string, unknown>): unknown;
|
|
19
|
+
getMultiple(bgioArguments: BgioResolveState, count?: number, options?: {
|
|
20
|
+
state?: unknown;
|
|
21
|
+
}, context?: Record<string, unknown>): unknown[];
|
|
22
|
+
returnToBank(entity: {
|
|
23
|
+
rule: {
|
|
24
|
+
state?: unknown;
|
|
25
|
+
};
|
|
26
|
+
state?: unknown;
|
|
27
|
+
}): void;
|
|
28
|
+
}
|
|
29
|
+
export default BankSlot;
|
|
30
|
+
//# sourceMappingURL=bank-slot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bank-slot.d.ts","sourceRoot":"","sources":["../../../src/game-factory/bank/bank-slot.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,cAAM,QAAQ;IACZ,IAAI,EAAE;QAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAA;KAAE,CAAC;IACnE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3E,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;gBAEL,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC;IAO/G,MAAM,CAAE,aAAa,EAAE,gBAAgB,EAAE,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIvG,WAAW,CACT,aAAa,EAAE,gBAAgB,EAC/B,KAAK,GAAE,MAAiB,EACxB,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO,EACjC,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IA2CvC,YAAY,CAAE,MAAM,EAAE;QAAE,IAAI,EAAE;YAAE,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAWrE;AAED,eAAe,QAAQ,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { RuleWithConditions } from "../../types/rule-with-conditions.js";
|
|
2
|
+
import BankSlot from "./bank-slot.js";
|
|
3
|
+
import type { BgioResolveState } from "../../utils/bgio-resolve-types.js";
|
|
4
|
+
declare class Bank {
|
|
5
|
+
currentEntityId: number;
|
|
6
|
+
tracker: Record<number, unknown>;
|
|
7
|
+
slots: InstanceType<typeof BankSlot>[];
|
|
8
|
+
constructor(entityRules: Record<string, unknown>[]);
|
|
9
|
+
createEntity(definition?: Record<string, unknown>, options?: Record<string, unknown>): unknown;
|
|
10
|
+
track(entity: {
|
|
11
|
+
entityId: number;
|
|
12
|
+
}): void;
|
|
13
|
+
locate(entityId: unknown): unknown;
|
|
14
|
+
findAll(bgioArguments: BgioResolveState, rule: RuleWithConditions, context: Record<string, unknown>): unknown[];
|
|
15
|
+
findOne(bgioArguments: BgioResolveState, rule: RuleWithConditions, context: Record<string, unknown>): unknown;
|
|
16
|
+
find(bgioArguments: BgioResolveState, rule: RuleWithConditions & {
|
|
17
|
+
matchMultiple?: boolean;
|
|
18
|
+
}, context: Record<string, unknown>): unknown;
|
|
19
|
+
findParent(entity: unknown): unknown;
|
|
20
|
+
getOne(bgioArguments: BgioResolveState, rule: RuleWithConditions & {
|
|
21
|
+
state?: unknown;
|
|
22
|
+
}, context: Record<string, unknown>): unknown;
|
|
23
|
+
getMultiple(bgioArguments: BgioResolveState, rule: RuleWithConditions & {
|
|
24
|
+
state?: unknown;
|
|
25
|
+
}, count: number, context: Record<string, unknown>): unknown[];
|
|
26
|
+
getSlot(bgioArguments: BgioResolveState, rule: RuleWithConditions, context: Record<string, unknown>): BankSlot | undefined;
|
|
27
|
+
getSlots(bgioArguments: BgioResolveState, rule: RuleWithConditions, context: Record<string, unknown>): BankSlot[];
|
|
28
|
+
returnToBank(bgioArguments: BgioResolveState, entity: {
|
|
29
|
+
entityId: number;
|
|
30
|
+
rule: Record<string, unknown>;
|
|
31
|
+
}): void;
|
|
32
|
+
}
|
|
33
|
+
export default Bank;
|
|
34
|
+
//# sourceMappingURL=bank.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bank.d.ts","sourceRoot":"","sources":["../../../src/game-factory/bank/bank.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAE9E,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,cAAM,IAAI;IACR,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,KAAK,EAAE,YAAY,CAAC,OAAO,QAAQ,CAAC,EAAE,CAAC;gBAE1B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;IAMnD,YAAY,CAAE,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAmBzF,KAAK,CAAE,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE;IAInC,MAAM,CAAE,QAAQ,EAAE,OAAO;IAIzB,OAAO,CAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAepG,OAAO,CAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIpG,IAAI,CAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,GAAG;QAAE,aAAa,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAM/H,UAAU,CAAE,MAAM,EAAE,OAAO;IAO3B,MAAM,CAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,GAAG;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAQzH,WAAW,CAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,GAAG;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAW7I,OAAO,CAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAUpG,QAAQ,CAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAUrG,YAAY,CAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE;CAK3G;AAED,eAAe,IAAI,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board.d.ts","sourceRoot":"","sources":["../../src/game-factory/board.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,kBAAkB,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,KAAK;CAAG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"condition-factory.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/condition-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,KAAK,aAAa,MAAM,gBAAgB,CAAC;AAkBhD,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAE,IAAI,EAAE,aAAa,GAAG,aAAa,GAAG,SAAS,CAuCxF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export default abstract class Condition {
|
|
2
|
+
rule: unknown;
|
|
3
|
+
constructor(rule: unknown);
|
|
4
|
+
check(bgioArguments: unknown, payload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
5
|
+
conditionIsMet: boolean;
|
|
6
|
+
};
|
|
7
|
+
abstract checkCondition(bgioArguments: unknown, rule: unknown, conditionPayload: Record<string, unknown>, newContext: Record<string, unknown>): {
|
|
8
|
+
conditionIsMet: boolean;
|
|
9
|
+
[k: string]: unknown;
|
|
10
|
+
};
|
|
11
|
+
isMet(...args: unknown[]): boolean;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/condition.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,SAAS;IACrC,IAAI,EAAE,OAAO,CAAC;gBAED,IAAI,EAAE,OAAO;IAI1B,KAAK,CAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;IAyBjG,QAAQ,CAAC,cAAc,CACrB,aAAa,EAAE,OAAO,EACtB,IAAI,EAAE,OAAO,EACb,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClC;QAAE,cAAc,EAAE,OAAO,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE;IAEpD,KAAK,CAAE,GAAG,IAAI,EAAE,OAAO,EAAE;CAO1B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Condition from "../condition/condition.js";
|
|
2
|
+
export default class ContainsCondition extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, payload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
matches: unknown[];
|
|
5
|
+
conditionIsMet: boolean;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=contains-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contains-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/contains-condition.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAGlD,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,SAAS;IACtD,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CAe1H"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class ContainsSame extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, conditionPayload: Record<string, unknown>, _newContext: Record<string, unknown>): {
|
|
4
|
+
conditionIsMet: boolean;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=contains-same-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contains-same-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/contains-same-condition.ts"],"names":[],"mappings":"AAEA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;CAwBvI"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Condition from "../condition/condition.js";
|
|
2
|
+
export default class Evaluate extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, payload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
result: unknown;
|
|
5
|
+
conditionIsMet: boolean;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=evaluate-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evaluate-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/evaluate-condition.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAIlD,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,SAAS;IAC7C,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CAY1H"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class EveryCondition extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, conditionPayload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
conditionIsMet: boolean;
|
|
5
|
+
results: {
|
|
6
|
+
results: unknown[];
|
|
7
|
+
failedAt: unknown;
|
|
8
|
+
conditionsAreMet: boolean;
|
|
9
|
+
}[];
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=every-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"every-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/every-condition.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,SAAS;IACnD,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;CAqBnI"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class HasLineCondition extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, payload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
matches: unknown[];
|
|
5
|
+
conditionIsMet: boolean;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=has-line-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"has-line-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/has-line-condition.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAIvC,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,SAAS;IACrD,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CAS1H"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class InLineCondition extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, payload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
matches: unknown[][];
|
|
5
|
+
conditionIsMet: boolean;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=in-line-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"in-line-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/in-line-condition.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAKvC,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,SAAS;IACpD,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CAkB1H"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class Is extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, { target }: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
target: unknown;
|
|
5
|
+
conditionIsMet: boolean;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=is-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/is-condition.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAIvC,MAAM,CAAC,OAAO,OAAO,EAAG,SAAQ,SAAS;IACvC,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CAkB7H"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class IsFull extends Condition {
|
|
3
|
+
checkCondition(_bgioArguments: unknown, _rule: unknown, payload: Record<string, unknown>, _context: Record<string, unknown>): {
|
|
4
|
+
conditionIsMet: boolean;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=is-full-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is-full-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/is-full-condition.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,SAAS;IAC3C,cAAc,CAAE,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;CAM7H"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class NoPossibleMoves extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, _unused: unknown, _payload: unknown, context: Record<string, unknown>): {
|
|
4
|
+
conditionIsMet: boolean;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=no-possible-moves-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"no-possible-moves-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/no-possible-moves-condition.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAKvC,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,SAAS;IACpD,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;CAQ9G"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class NotCondition extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, payload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
conditionIsMet: boolean;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=not-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"not-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/not-condition.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,SAAS;IACjD,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;CAS1H"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class Or extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, payload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
conditionIsMet: boolean;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=or-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"or-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/or-condition.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,EAAG,SAAQ,SAAS;IACvC,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;CAS1H"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class Position extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, conditionPayload: Record<string, unknown>, _newContext: Record<string, unknown>): {
|
|
4
|
+
conditionIsMet: boolean;
|
|
5
|
+
};
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=position-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"position-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/position-condition.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,SAAS;IAC7C,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;CASvI"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class SomeCondition extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, conditionPayload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
conditionIsMet: boolean;
|
|
5
|
+
result: unknown;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=some-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"some-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/some-condition.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAGvC,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,SAAS;IAClD,cAAc,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CAoBnI"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import Condition from "./condition.js";
|
|
2
|
+
export default class WouldCondition extends Condition {
|
|
3
|
+
checkCondition(bgioArguments: unknown, rule: unknown, conditionPayload: Record<string, unknown>, context: Record<string, unknown>): {
|
|
4
|
+
results: unknown;
|
|
5
|
+
conditionIsMet: boolean;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=would-condition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"would-condition.d.ts","sourceRoot":"","sources":["../../../src/game-factory/condition/would-condition.ts"],"names":[],"mappings":"AACA,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAavC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,SAAS;IACnD,cAAc,CACZ,aAAa,EAAE,OAAO,EACtB,IAAI,EAAE,OAAO,EACb,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;CAqDnC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export default class Entity {
|
|
2
|
+
rule: Record<string, unknown>;
|
|
3
|
+
entityId: number;
|
|
4
|
+
state: Record<string, unknown>;
|
|
5
|
+
constructor(options: {
|
|
6
|
+
fromBank?: boolean;
|
|
7
|
+
initialStateGroups?: Record<string, string>;
|
|
8
|
+
} | undefined, rule: Record<string, unknown>, id: number);
|
|
9
|
+
get attributes(): {
|
|
10
|
+
[x: string]: unknown;
|
|
11
|
+
} & this & Record<string, unknown>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=entity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/game-factory/entity.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,MAAM;IACzB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAG7B,OAAO,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,GAAG,SAAS,EACxF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,EAAE,EAAE,MAAM;IAqBZ,IAAI,UAAU;;uCAMb;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expand-game-rules.d.ts","sourceRoot":"","sources":["../../src/game-factory/expand-game-rules.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA2C,gBAAgB,EAAE,iBAAiB,EAAkB,MAAM,yBAAyB,CAAC;AAyO5I,MAAM,CAAC,OAAO,UAAU,eAAe,CAAE,SAAS,EAAE,gBAAgB,GAAG,iBAAiB,CA4BvF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { GameFactoryInput } from "../types/bagel-types.js";
|
|
2
|
+
import type { BgioResolveState } from "../utils/bgio-resolve-types.js";
|
|
3
|
+
/** boardgame.io-style arguments (minimal typing; engine passes full objects). */
|
|
4
|
+
export type BgioArguments = BgioResolveState;
|
|
5
|
+
/** Object returned from `gameFactory` (boardgame.io game definition). */
|
|
6
|
+
export type BoardGameEngineGame = Record<string, unknown> & {
|
|
7
|
+
name: string;
|
|
8
|
+
};
|
|
9
|
+
export default function gameFactory(gameRules: GameFactoryInput, gameName: string): BoardGameEngineGame;
|
|
10
|
+
//# sourceMappingURL=game-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"game-factory.d.ts","sourceRoot":"","sources":["../../src/game-factory/game-factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAA8B,MAAM,yBAAyB,CAAC;AAO5F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAEvE,iFAAiF;AACjF,MAAM,MAAM,aAAa,GAAG,gBAAgB,CAAC;AAE7C,yEAAyE;AACzE,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7E,MAAM,CAAC,OAAO,UAAU,WAAW,CACjC,SAAS,EAAE,gBAAgB,EAC3B,QAAQ,EAAE,MAAM,GACf,mBAAmB,CAkHrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"end-turn.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/end-turn.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,IAAI;IACvC,EAAE,CAAE,aAAa,EAAE,OAAO;CAG3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"for-each.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/for-each.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,IAAI;IACvC,EAAE,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CActG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,kBAAkB,CAAA;AAEzC,QAAA,MAAM,SAAS;;CAEd,CAAA;AAED,eAAe,SAAS,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"move-entity.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/move-entity.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,IAAI;IAC1C,EAAE,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,eAAe,EAAE,OAAO;CAcnF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import MoveEntity from "./move-entity.js";
|
|
2
|
+
import RemoveEntity from "./remove-entity.js";
|
|
3
|
+
import PlaceNew from "./place-new.js";
|
|
4
|
+
import TakeFrom from "./take-from.js";
|
|
5
|
+
import SetState from "./set-state.js";
|
|
6
|
+
import SetActivePlayers from "./set-active-players.js";
|
|
7
|
+
import EndTurn from "./end-turn.js";
|
|
8
|
+
import PassTurn from "./pass-turn.js";
|
|
9
|
+
import ForEach from "./for-each.js";
|
|
10
|
+
import Pass from "./pass.js";
|
|
11
|
+
import Shuffle from "./shuffle.js";
|
|
12
|
+
import type { MoveDefinition } from "../../types/bagel-types.js";
|
|
13
|
+
export default function moveFactory(moveRule: MoveDefinition, game: unknown): {
|
|
14
|
+
(bgioArguments: unknown, serializablePayload: unknown): any;
|
|
15
|
+
moveInstance: MoveEntity | RemoveEntity | PlaceNew | TakeFrom | SetState | ForEach | Pass | Shuffle | SetActivePlayers | EndTurn | PassTurn;
|
|
16
|
+
};
|
|
17
|
+
export declare function getMoveInstance(moveRule: MoveDefinition): MoveEntity | RemoveEntity | PlaceNew | TakeFrom | SetState | ForEach | Pass | Shuffle | SetActivePlayers | EndTurn | PassTurn;
|
|
18
|
+
//# sourceMappingURL=move-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"move-factory.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/move-factory.ts"],"names":[],"mappings":"AAIA,OAAO,UAAU,MAAM,kBAAkB,CAAC;AAC1C,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,gBAAgB,MAAM,yBAAyB,CAAC;AACvD,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,OAAO,MAAM,eAAe,CAAC;AACpC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAUjE,MAAM,CAAC,OAAO,UAAU,WAAW,CAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO;oBAQzD,OAAO,uBACD,OAAO;;EA2B/B;AAoBD,wBAAgB,eAAe,CAAE,QAAQ,EAAE,cAAc,iIAyBxD"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { INVALID_MOVE } from "@mnbroatch/boardgame.io/dist/cjs/core.js";
|
|
2
|
+
import type { MoveDefinition } from "../../types/bagel-types.js";
|
|
3
|
+
export default class Move {
|
|
4
|
+
rule: MoveDefinition;
|
|
5
|
+
constructor(rule: MoveDefinition);
|
|
6
|
+
checkValidity(bgioArguments: unknown, payload: {
|
|
7
|
+
arguments: Record<string, unknown>;
|
|
8
|
+
}, context: Record<string, unknown>): false | {
|
|
9
|
+
argumentResults: Record<string, {
|
|
10
|
+
results: unknown[];
|
|
11
|
+
conditionsAreMet: boolean;
|
|
12
|
+
}>;
|
|
13
|
+
moveResults: {
|
|
14
|
+
results: unknown[];
|
|
15
|
+
failedAt: unknown;
|
|
16
|
+
conditionsAreMet: boolean;
|
|
17
|
+
};
|
|
18
|
+
conditionsAreMet: boolean;
|
|
19
|
+
};
|
|
20
|
+
isValid(bgioArguments: unknown, payload: {
|
|
21
|
+
arguments: Record<string, unknown>;
|
|
22
|
+
}, context: Record<string, unknown>): boolean;
|
|
23
|
+
doMove(bgioArguments: unknown, payload: {
|
|
24
|
+
arguments?: Record<string, unknown>;
|
|
25
|
+
} | undefined, context: Record<string, unknown>, { skipCheck }?: {
|
|
26
|
+
skipCheck?: boolean | undefined;
|
|
27
|
+
}): typeof INVALID_MOVE | {
|
|
28
|
+
conditionResults: boolean | {
|
|
29
|
+
argumentResults: Record<string, {
|
|
30
|
+
results: unknown[];
|
|
31
|
+
conditionsAreMet: boolean;
|
|
32
|
+
}>;
|
|
33
|
+
moveResults: {
|
|
34
|
+
results: unknown[];
|
|
35
|
+
failedAt: unknown;
|
|
36
|
+
conditionsAreMet: boolean;
|
|
37
|
+
};
|
|
38
|
+
conditionsAreMet: boolean;
|
|
39
|
+
} | undefined;
|
|
40
|
+
};
|
|
41
|
+
do(_bgioArguments: unknown, _rule: unknown, _resolvedPayload: unknown, _context: unknown): void;
|
|
42
|
+
transformRule(rule: {
|
|
43
|
+
arguments?: Record<string, {
|
|
44
|
+
playerChoice?: boolean;
|
|
45
|
+
resolveAsEntity?: boolean;
|
|
46
|
+
}>;
|
|
47
|
+
}): {
|
|
48
|
+
arguments?: Record<string, {
|
|
49
|
+
playerChoice?: boolean;
|
|
50
|
+
resolveAsEntity?: boolean;
|
|
51
|
+
}>;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=move.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"move.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/move.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AACxE,OAAO,KAAK,EAAa,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAK5E,MAAM,CAAC,OAAO,OAAO,IAAI;IACvB,IAAI,EAAE,cAAc,CAAC;gBAER,IAAI,EAAE,cAAc;IAIjC,aAAa,CAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;qBAgBrE,OAAO,EAAE;8BAAoB,OAAO;;;;;;;;;IAkDvF,OAAO,CAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAUlH,MAAM,CACJ,aAAa,EAAE,OAAO,EACtB,OAAO,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG,SAAS,EAC5D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,EAAE,SAAiB,EAAE;;KAAK;;;yBAhEuB,OAAO,EAAE;kCAAoB,OAAO;;;;;;;;;;IAqGvF,EAAE,CAAE,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO;IAIzF,aAAa,CAAE,IAAI,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,YAAY,CAAC,EAAE,OAAO,CAAC;YAAC,eAAe,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC,CAAA;KAAE;oBAAvE,MAAM,CAAC,MAAM,EAAE;YAAE,YAAY,CAAC,EAAE,OAAO,CAAC;YAAC,eAAe,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;;CAYzG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pass-turn.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/pass-turn.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,IAAI;IACxC,EAAE,CAAE,aAAa,EAAE,OAAO;CAW3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pass.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/pass.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,IAAI;IACpC,EAAE,CAAE,aAAa,EAAE,OAAO;CAG3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"place-new.d.ts","sourceRoot":"","sources":["../../../src/game-factory/move/place-new.ts"],"names":[],"mappings":"AAGA,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,IAAI;IACxC,EAAE,CAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAiCtG"}
|