Skip to the content

Tsunagi繋ぎ

Join each pair with a separate line and fill the board, through fixed levels or seeded puzzles.

Tsunagi means joining in Japanese. About the name

Contents

Reference · Rules, solvers and generation

linesOfAnswerfunction

A level's answer drawn back as lines: each pair's cells, in order, from its first marble to its second. How a solved level opens on its solved board. Null for an answer that does not draw every pair as one unbroken line.

Import it

import { linesOfAnswer } from "@johnmorrisdotca/tsunagi";

Definition

function linesOfAnswer(layout: LinkLayout, answer: string): Lines | null

Parameters

NameTypeDescription
layoutLinkLayout

The decoded native board and its rule settings.

answerstring

The native complete answer string or solved lines specified by the signature.

Returns

Lines | null

A level's answer drawn back as lines: each pair's cells, in order, from its first marble to its second. How a solved level opens on its solved board. null for an answer that does not draw every pair as one unbroken line.

Examples

import { TSUNAGI_4 } from "@johnmorrisdotca/tsunagi/levels-4";
import { decodeLayout, linesOfAnswer } from "@johnmorrisdotca/tsunagi";

const givens = TSUNAGI_4[0][0];
const answer = TSUNAGI_4[0][1];
const layout = decodeLayout(givens,4)!;
console.log(linesOfAnswer(layout,answer));
[
  [ 0, 1, 2, 3 ],
  [ 4, 5, 6, 7 ],
  [ 8, 9, 10, 11 ],
  [ 12, 13, 14, 15 ]
]

What it prints (run when this page was built)

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