cheatLine関数
リファレンスの説明と例は英語です。見出しと目次は日本語です。
CHEAT: one unfinished line drawn for the player, correctly. John, 2026-09-26: beyond Check, which only flashes the unjoined pairs, "a Cheat button that draws one unfinished line correctly", offered only where "Allow cheating" was chosen at set-up. Flow Free's hint does the same — it draws one whole flow.
The line is the lowest-numbered pair not yet joined; where every pair is joined but the board is wrong, the lowest whose line is not the answer's. It is drawn as the answer has it, and any other line in its way is cut back to before the first cell it would share — on a bridge only where both go the same way over it, since two lines may cross there. Null when there is nothing to draw: every line already the answer's. Pure: new lines, the old untouched.
インポート
import { cheatLine } from "@johnmorrisdotca/tsunagi";
定義
function cheatLine(layout: LinkLayout, lines: Lines, answer: Lines): { lines: Lines; pair: number; } | null
引数
| 名前 | 型 | 説明 |
|---|---|---|
layout | LinkLayout | The decoded native board and its rule settings. |
lines | Lines | The native cell lists for every pair. |
answer | Lines | The native complete answer string or solved lines specified by the signature. |
戻り値
{ lines: Lines; pair: number; } | null
The updated lines and helped pair, or null when every pair is already joined.
例
import { TSUNAGI_4 } from "@johnmorrisdotca/tsunagi/levels-4";
import { cheatLine, decodeLayout, linesOfAnswer, noLines } from "@johnmorrisdotca/tsunagi";
const givens = TSUNAGI_4[0][0];
const answer = TSUNAGI_4[0][1];
const layout = decodeLayout(givens,4)!;
const lines = noLines(layout);
const solvedLines = linesOfAnswer(layout,answer)!;
console.log(cheatLine(layout,lines,solvedLines));{ lines: [ [ 0, 1, 2, 3 ], [], [], [] ], pair: 0 }出力(このページを作ったときに実行した結果)
この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。