Reference · Rules, solvers and generation
liftGamefunction
The finger lifted: the stroke is counted if it changed the board, the board may be solved, and an explosion may go off.
Import it
import { liftGame } from "@johnmorrisdotca/tsunagi";
Definition
function liftGame(game: TsunagiGame): TsunagiGame
Parameters
| Name | Type | Description |
|---|---|---|
game | TsunagiGame | The current immutable native puzzle state. |
Returns
TsunagiGame
The finger lifted: the stroke is counted if it changed the board, the board may be solved, and an explosion may go off.
Examples
import { TSUNAGI_4 } from "@johnmorrisdotca/tsunagi/levels-4";
import { liftGame, newTsunagiGame } from "@johnmorrisdotca/tsunagi";
const givens = TSUNAGI_4[0][0];
const answer = TSUNAGI_4[0][1];
const game = newTsunagiGame(givens,4,{answer,cheats:true})!;
console.log(liftGame(game));{
layout: {
size: 4,
cells: [
0, -1, -1, 0, 1, -1,
-1, 1, 2, -1, -1, 2,
3, -1, -1, 3
],
ends: [ [Array], [Array], [Array], [Array] ],
walls: Set(0) {},
waypoints: Map(0) {},
wrap: false,
portalPairs: [],
portals: Map(0) {},
hex: false,
sparse: false,
strokes: null,
explosions: null
},
givens: 'A..AB..BC..CD..D',
answer: 'AAAABBBBCCCCDDDD',
lines: [ [], [], [], [] ],
undo: [],
strokes: 0,
drawing: null,
before: null,
reach: { dr: 0, dc: 0 },
flagged: null,
blasted: null,
exploded: null,
checked: null,
cheats: true,
explosions: 'on',
eased: null,
cheated: false,
solved: false
}What it prints (run when this page was built)