Skip to the content

Narabe並べ

Play forty-eight abstract board games through immutable moves, legal choices and replayable records.

Narabe means arranging in Japanese, as in gomoku-narabe: five in a row. About the name

Contents

Reference · Go rules

walledInfunction

The empty points stone has already walled in: every empty region whose border is that colour's stones and nothing else — the ground scoreArea counts as theirs.

A stone played there gains its owner nothing under area scoring, and it fills the eyes the group lives by. So it is never a move worth making, and the computer players leave it out; a player who has nothing else left passes, which is how Go ends.

Import it

import { walledIn } from "@johnmorrisdotca/narabe/rules/go";

Definition

function walledIn(board: Cell[], size: number, stone: Stone): Set<number>

Parameters

NameTypeDescription
boardCell[]

The row-major board cells; null marks an empty point.

sizenumber

The number of cells on each side of the board.

stoneStone

The black or white colour being examined.

Returns

Set<number>

Indices of empty points bordered only by the requested colour.

Examples

import { createGame, playMove } from "@johnmorrisdotca/narabe";
import { walledIn } from "@johnmorrisdotca/narabe/rules/go";

const go = playMove(createGame({variant:"go",size:9}),{row:4,col:4});
console.log(walledIn(go.board, go.settings.size, "black").size);
80

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/narabe 1.3.0.