Skip to the content

Suido水道

Turn pipes to connect the pumps and drains, through fixed levels or seeded puzzles.

Suido means water supply in Japanese. About the name

Contents

Reference · Pipes, rules and solving

bigShapesInfunction

The big pieces of a board and which shape each is, read from masks (one for every cell of the board, as a board's pieces or an answer's stand): the board's pieces for the facing it starts in, an answer's for the facing the water needs. A big piece whose four masks make none of the shapes is left out, which no board that decodes has.

Import it

import { bigShapesIn } from "@johnmorrisdotca/suido";

Definition

function bigShapesIn(layout: { width: number; bigs?: readonly number[]; }, masks: readonly number[]): BigOnBoard[]

Parameters

NameTypeDescription
layout{ width: number; bigs?: readonly number[]; }

The decoded board with its dimensions, pipe masks and rule settings.

masksreadonly number[]

Current pipe masks in row-major cell order.

Returns

BigOnBoard[]

The big pieces of a board and which shape each is, read from masks (one for every cell of the board, as a board's pieces or an answer's stand): the board's pieces for the facing it starts in, an answer's for the facing the water needs. A big piece whose four masks make none of the shapes is left out, which no board that decodes has.

Examples

import { SUIDO_5X5 } from "@johnmorrisdotca/suido/levels-5x5";
import { bigShapesIn, decodeLayout } from "@johnmorrisdotca/suido";

const row = SUIDO_5X5[0];
const code = row[0];
const layout = decodeLayout(code)!;
const blockLayout = {...layout,bigs:[0]};
console.log(bigShapesIn(blockLayout,blockLayout.cells).length);
0

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/suido 1.7.0.