UndoFrametype
Data sufficient to restore the complete game immediately before a committed move.
Import it
import type { UndoFrame } from "@johnmorrisdotca/houseki/stone-collapse";
Definition
interface UndoFrame {
readonly board: readonly (Stone | null)[];
readonly score: number;
readonly moves: number;
readonly removed: number;
readonly randomState: number;
readonly nextId: number;
readonly usedFallback: boolean;
readonly finishAdjustmentApplied: boolean;
readonly selectedId: number | null;
readonly selectedIds: readonly number[];
readonly previewScore: number;
readonly witnessIndex: number;
readonly inventory: ToolInventory;
readonly toolProgress: number;
readonly toolAwardCursor: 0 | 1;
readonly selectedTool: StoredTool | null;
readonly toolTarget: number | null;
readonly toolPreview: readonly number[];
}
Members
| Name | Type | Description |
|---|---|---|
board | readonly (Stone | null)[] | |
score | number | |
moves | number | |
removed | number | |
randomState | number | |
nextId | number | |
usedFallback | boolean | |
finishAdjustmentApplied | boolean | |
selectedId | number | null | |
selectedIds | readonly number[] | |
previewScore | number | |
witnessIndex | number | |
inventory | ToolInventory | |
toolProgress | number | |
toolAwardCursor | 0 | 1 | |
selectedTool | StoredTool | null | |
toolTarget | number | null | |
toolPreview | readonly number[] |
Examples
import { createGame } from "@johnmorrisdotca/houseki/stone-collapse";
import type { UndoFrame } from "@johnmorrisdotca/houseki/stone-collapse";
const state=createGame({seed:"docs"});
const value: UndoFrame = {board:state.board,score:0,moves:0,removed:0,randomState:state.randomState,nextId:state.nextId,usedFallback:false,finishAdjustmentApplied:false,selectedId:null,selectedIds:[],previewScore:0,witnessIndex:0,inventory:state.inventory,toolProgress:0,toolAwardCursor:0,selectedTool:null,toolTarget:null,toolPreview:[]};
console.log(value == null ? value : typeof value === "object" ? Object.keys(value).slice(0,6) : value);[ 'board', 'score', 'moves', 'removed', 'randomState', 'nextId' ]What it prints (run when this page was built)