Skip to the content

Meikyuu迷宮

Generate seeded mazes and arrow puzzles, follow numbered levels, and play on flat grids or three-dimensional surfaces.

Meikyuu is the Japanese word 迷宮 for labyrinth. About the name

Contents

Reference · Mazes, arrows and mixed boards

stepsToLinefunction

The cells steps walk from the maze's start, or null if any step goes where a line cannot: into a wall, off the maze, or back onto the line.

Import it

import { stepsToLine } from "@johnmorrisdotca/meikyuu";

Definition

function stepsToLine(maze: MazeCore, steps: string): number[] | null

Parameters

NameTypeDescription
mazeMazeCore

The valid flat/surface maze or required maze-core fields.

stepsstring

The encoded native directional steps.

Returns

number[] | null

The cells steps walk from the maze's start, or null if any step goes where a line cannot: into a wall, off the maze, or back onto the line.

Examples

import type { MazeRecipe } from "@johnmorrisdotca/meikyuu";
import { buildMaze, lineToSteps, solutionOf, stepsToLine } from "@johnmorrisdotca/meikyuu";

const recipe: MazeRecipe = {shape:"square",w:5,h:5,algorithm:"backtracker",mode:"to-goal",seed:42};
const maze = buildMaze(recipe);
const route = solutionOf(maze);
console.log(stepsToLine(maze,lineToSteps(maze,route)!));
[
   6,  5,  0,  1,  2,  7,
   8,  9, 14, 19, 18, 23,
  22, 21, 16, 15
]

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/meikyuu 3.2.0.