UNPKG

tsgammon-core

Version:

A Backgammon library for Typescript, formerly developed as a part of tsgammon-ui

36 lines (33 loc) 1.07 kB
import { boardState } from '../BoardState' import { cube } from '../CubeState' import { GameConf, standardConf } from '../GameConf' import { cbOpening } from './CubeGameState' import { openingState } from './SingleGameState' /** * ルール設定から、デフォルト状態=各ゲーム開始時の状態を表すBGStateオブジェクトを生成する * @param gameConf ルール設定 * @returns */ export function defaultBGState(gameConf: GameConf = standardConf) { return { cbState: cbOpening(cube(1)), sgState: defaultSGState(gameConf), } } /** * ルール設定から、デフォルト状態=各ゲーム開始時の状態を表すSGStateオブジェクトを生成する * @param gameConf ルール設定 * @returns */ export function defaultSGState(gameConf: GameConf = standardConf) { return openingState( boardState( gameConf.initialPos, [0, 0], gameConf.innerPos, gameConf.isEoGFunc ), undefined, gameConf.movesForDoublet ) }