@gamepark/rules-api
Version:
API to implement the rules of a board game
13 lines (12 loc) • 940 B
TypeScript
import { MaterialGame } from '../MaterialGame';
import { CustomMove, EndGame, EndPlayerTurn, StartPlayerTurn, StartRule, StartSimultaneousRule } from '../moves';
export declare class MaterialRulesMovesBuilder<Player extends number = number, MaterialType extends number = number, LocationType extends number = number> {
game: MaterialGame<Player, MaterialType, LocationType>;
constructor(game: MaterialGame<Player, MaterialType, LocationType>);
startPlayerTurn<RuleId extends number = number>(id: RuleId, player: Player): StartPlayerTurn<Player, RuleId>;
startSimultaneousRule<RuleId extends number = number>(id: RuleId, players?: Player[]): StartSimultaneousRule<Player, RuleId>;
endPlayerTurn(player: Player): EndPlayerTurn<Player>;
startRule<RuleId extends number = number>(id: RuleId): StartRule<RuleId>;
customMove<Type extends number = number>(type: Type, data?: any): CustomMove;
endGame(): EndGame;
}