applyGoMovefunction
A stone of stone played at point: the board it leaves, and what it
captured — or null, meaning the move is suicide and illegal. Enemy
groups left with no liberties come off first; only then is the played
stone's own group checked for a liberty of its own, since a capture can
open one that was not there before the board was read.
Import it
import { applyGoMove } from "@johnmorrisdotca/narabe/rules/go";
Definition
function applyGoMove(board: Cell[], size: number, point: Point, stone: Stone): { board: Cell[]; captured: Point[]; } | null
Parameters
| Name | Type | Description |
|---|---|---|
board | Cell[] | The row-major board cells; null marks an empty point. |
size | number | The number of cells on each side of the board. |
point | Point | A zero-based row and column on the board. |
stone | Stone | The black or white colour being examined. |
Returns
{ board: Cell[]; captured: Point[]; } | null
The copied board and captured points, or null if the move is suicide.
Examples
import { createGame, playMove } from "@johnmorrisdotca/narabe";
import { applyGoMove } from "@johnmorrisdotca/narabe/rules/go";
const point = {row:7,col:7};
const go = playMove(createGame({variant:"go",size:9}),{row:4,col:4});
console.log(applyGoMove(go.board, go.settings.size, point, "black")?.captured);[]What it prints (run when this page was built)