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 · Rules and records

drawnByLengthfunction

Whether a finished game was drawn because it ran to its length, rather than because the board filled or both sides made a line at once.

The status line has to say which: "both made a line at once" is a different thing from "we agreed to stop here", and telling a player the wrong one is worse than telling them nothing.

Import it

import { drawnByLength } from "@johnmorrisdotca/narabe";

Definition

function drawnByLength(state: GameState): boolean

Parameters

NameTypeDescription
stateGameState

The current immutable game position.

Returns

boolean

Whether a finished game was drawn because it ran to its length, rather than because the board filled or both sides made a line at once. The status line has to say which: "both made a line at once" is a different thing from "we agreed to stop here", and telling a player the wrong one is worse than telling them nothing.

Examples

import { createGame, drawnByLength } from "@johnmorrisdotca/narabe";

const state = createGame({variant:"freestyle",size:15});
console.log(drawnByLength(state));
false

What it prints (run when this page was built)

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