本文へ移動

Meikyuu迷宮

シード付きの迷路と矢印パズルを作り、番号付きの問題を進め、平面や立体表面で遊べます。

「迷宮」は迷路のように入り組んだ場所を表す言葉です。 名前について(英語)

目次

リファレンス · 迷路・矢印・混合の盤

ArrowBoard型

リファレンスの説明と例は英語です。見出しと目次は日本語です。

The native arrow recipe, shape mask, arrow paths and locked flags.

インポート

import type { ArrowBoard } from "@johnmorrisdotca/meikyuu";

定義

type ArrowBoard = {
    readonly recipe: ArrowRecipe;
    readonly w: number;
    readonly h: number;
    readonly inShape: readonly boolean[];
    readonly arrows: readonly Arrow[];
    readonly locked: readonly boolean[];
};

メンバー

名前型説明
recipeArrowRecipe
wnumber
hnumber
inShapereadonly boolean[]

Which cells are part of the picture, whether an arrow is on them or not.

arrowsreadonly Arrow[]
lockedreadonly boolean[]

Which arrows are locked: the ones the mixed puzzles hide behind a button.

例

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
  ]
}

出力(このページを作ったときに実行した結果)

ソースを見るGitHub で編集@johnmorrisdotca/meikyuu 3.2.0 のソースから作成しました。

この日本語は、まだ日本語を母語とする方の確認を受けていません。訂正を歓迎します。