Reference · Mazes, arrows and mixed boards
ArrowBoardtype
The native arrow recipe, shape mask, arrow paths and locked flags.
Import it
import type { ArrowBoard } from "@johnmorrisdotca/meikyuu";
Definition
type ArrowBoard = {
readonly recipe: ArrowRecipe;
readonly w: number;
readonly h: number;
readonly inShape: readonly boolean[];
readonly arrows: readonly Arrow[];
readonly locked: readonly boolean[];
};
Members
| Name | Type | Description |
|---|---|---|
recipe | ArrowRecipe | |
w | number | |
h | number | |
inShape | readonly boolean[] | Which cells are part of the picture, whether an arrow is on them or not. |
arrows | readonly Arrow[] | |
locked | readonly boolean[] | Which arrows are locked: the ones the mixed puzzles hide behind a button. |
Examples
import type { ArrowBoard, ArrowRecipe } from "@johnmorrisdotca/meikyuu";
import { makeArrows } from "@johnmorrisdotca/meikyuu";
const arrowRecipe: ArrowRecipe = {shape:"square",w:5,h:5,longest:3,seed:42};
const arrows = makeArrows(arrowRecipe);
const value: ArrowBoard = arrows;
console.log(value);{
recipe: { shape: 'square', w: 5, h: 5, longest: 3, seed: 42 },
w: 5,
h: 5,
inShape: [
true, true, true, true, true,
true, true, true, true, true,
true, true, true, true, true,
true, true, true, true, true,
true, true, true, true, true
],
arrows: [
{ cells: [Array], dir: 1 },
{ cells: [Array], dir: 3 },
{ cells: [Array], dir: 0 },
{ cells: [Array], dir: 0 },
{ cells: [Array], dir: 0 },
{ cells: [Array], dir: 3 },
{ cells: [Array], dir: 0 },
{ cells: [Array], dir: 2 },
{ cells: [Array], dir: 1 },
{ cells: [Array], dir: 3 },
{ cells: [Array], dir: 2 },
{ cells: [Array], dir: 2 },
{ cells: [Array], dir: 3 }
],
locked: [
false, false, false,
false, false, false,
false, false, false,
false, false, false,
false
]
}What it prints (run when this page was built)