UNPKG

@gamepark/rules-api

Version:

API to implement the rules of a board game

36 lines 1.71 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MaterialRulesMovesBuilder = void 0; var moves_1 = require("../moves"); var MaterialRulesMovesBuilder = (function () { function MaterialRulesMovesBuilder(game) { this.game = game; } MaterialRulesMovesBuilder.prototype.startPlayerTurn = function (id, player) { return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartPlayerTurn, id: id, player: player }; }; MaterialRulesMovesBuilder.prototype.startSimultaneousRule = function (id, players) { var move = { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartSimultaneousRule, id: id }; if (players) move.players = players; return move; }; MaterialRulesMovesBuilder.prototype.endPlayerTurn = function (player) { return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.EndPlayerTurn, player: player }; }; MaterialRulesMovesBuilder.prototype.startRule = function (id) { return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.StartRule, id: id }; }; MaterialRulesMovesBuilder.prototype.customMove = function (type, data) { var move = { kind: moves_1.MoveKind.CustomMove, type: type }; if (data !== undefined) move.data = data; return move; }; MaterialRulesMovesBuilder.prototype.endGame = function () { return { kind: moves_1.MoveKind.RulesMove, type: moves_1.RuleMoveType.EndGame }; }; return MaterialRulesMovesBuilder; }()); exports.MaterialRulesMovesBuilder = MaterialRulesMovesBuilder; //# sourceMappingURL=MaterialRulesMovesBuilder.js.map