UNPKG

tsgammon-core

Version:

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

33 lines (31 loc) 936 B
import { EOGStatus } from '../../EOGStatus' import { SGResult } from '../../records/SGResult' import { SGState, eogStateWhite, eogStateRed, eogStateNogame, } from '../SingleGameState' /** * 任意の局面と、勝敗の指定からSGEoGオブジェクトを生成する * @param sgState 現局面 * @param sgResult 勝敗 * @param eogStatus 終局状態 * @returns */ export function sgResultToSGEoG( sgState: SGState, sgResult: SGResult, eogStatus: EOGStatus ) { const stakeValue = eogStatus.calcStake(1) const { absBoard, boardState } = sgState switch (sgResult) { case SGResult.WHITEWON: return eogStateWhite(stakeValue, eogStatus, absBoard, boardState) case SGResult.REDWON: return eogStateRed(stakeValue, eogStatus, absBoard, boardState) case SGResult.NOGAME: return eogStateNogame(eogStatus, absBoard, boardState) } }