tsgammon-core
Version:
A Backgammon library for Typescript, formerly developed as a part of tsgammon-ui
24 lines (23 loc) • 914 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.findMove = void 0;
/**
* ある局面について、指定された位置で指定の目が適用できるかどうかを判定する
*
* @param node 局面
* @param pos 目を適用したい位置
* @param useMinorFirst 小さい目を優先して使用する場合はtrue
* @returns 適用後の状態を表す子局面、またはNoMove
*/
function findMove(node, pos, useMinorFirst) {
// すでに作成済みの候補リストから、該当するムーブ(の適用後の局面)を探す
const nodesAfterMove = useMinorFirst
? node.minorFirst(pos).hasValue
? node.minorFirst(pos)
: node.majorFirst(pos)
: node.majorFirst(pos).hasValue
? node.majorFirst(pos)
: node.minorFirst(pos);
return nodesAfterMove;
}
exports.findMove = findMove;