Reference · Mazes, arrows and mixed boards
canLayStonefunction
Whether a stone may be laid on a cell now, and if not, why not. A stone already there is has-stone: ask takeStone for it.
Import it
import { canLayStone } from "@johnmorrisdotca/meikyuu";
Definition
function canLayStone(game: MazeGame<MazeCore>, cell: number): StoneVerdict
Parameters
| Name | Type | Description |
|---|---|---|
game | MazeGame<MazeCore> | The current immutable native game state. |
cell | number | A zero-based native cell index. |
Returns
StoneVerdict
Whether a stone may be laid on a cell now, and if not, why not. A stone already there is has-stone: ask takeStone for it.
Examples
import type { MazeRecipe } from "@johnmorrisdotca/meikyuu";
import { buildMaze, canLayStone, newMazeGame } from "@johnmorrisdotca/meikyuu";
const recipe: MazeRecipe = {shape:"square",w:5,h:5,algorithm:"backtracker",mode:"to-goal",seed:42};
const maze = buildMaze(recipe);
const stoneGame = newMazeGame(maze,{limit:5,reach:1});
console.log(canLayStone(stoneGame,maze.goal));no-lineWhat it prints (run when this page was built)