/// <summary>Loads a new puzzle and sets it to be the current puzzle in the grid.</summary> /// <param name="state">The puzzle to load.</param> public void LoadNewPuzzle(PuzzleState state) { ClearUndoCheckpoints(); ClearOriginalPuzzleCheckpoint(); SetOriginalPuzzleCheckpoint(state.Clone()); State = state; _selectedCell = FirstEmptyCell; }
public PuzzleStateNode CloneAndAddChild(string name, PuzzleNode node) { PuzzleStateNode n = new PuzzleStateNode(state.Clone()); n.step = step + 1; new PuzzleStateEdge(name, node, this, n); return(n); }