UNPKG

tsgammon-core

Version:

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

50 lines (49 loc) 1.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.score = exports.scoreAsWhite = exports.scoreAsRed = void 0; /** * 赤の得点を生成する * @param n 赤の得点 * @returns */ function scoreAsRed(n) { return score({ whiteScore: 0, redScore: n, }); } exports.scoreAsRed = scoreAsRed; /** * 白の得点を生成する * @param n 白の点数 * @returns */ function scoreAsWhite(n) { return score({ whiteScore: n, redScore: 0, }); } exports.scoreAsWhite = scoreAsWhite; /** * 任意の内容の累計点を生成する * @param value 累計点 * @returns */ function score(value = { redScore: 0, whiteScore: 0, }) { var _a, _b; const redScore = (_a = value.redScore) !== null && _a !== void 0 ? _a : 0; const whiteScore = (_b = value.whiteScore) !== null && _b !== void 0 ? _b : 0; return { redScore, whiteScore, add(score) { return Object.assign(Object.assign({}, this), { redScore: this.redScore + score.redScore, whiteScore: this.whiteScore + score.whiteScore }); }, value: redScore + whiteScore, }; } exports.score = score;