本文へ移動

Jirai地雷

シード付きの地雷の盤を作り、見える数字からヒントを証明し、四角・四近傍・六角・端がつながる盤で遊べます。

「地雷」は、地面に埋められた爆弾のことです。 名前について(英語)

目次

リファレンス · 規則・生成・推論

GRID_SPECS定数

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

Neighbour offsets and edge behaviour for each topology. Hex coordinates are axial: each row is displaced half a cell to the right.

インポート

import { GRID_SPECS } from "@johnmorrisdotca/jirai";

定義

const GRID_SPECS: Record<Grid, { offsets: readonly (readonly [number, number])[]; wrap: boolean; }> = {
    square: { offsets: [[-1, -1], [0, -1], [1, -1], [-1, 0], [1, 0], [-1, 1], [0, 1], [1, 1]], wrap: false },
    orthogonal: { offsets: [[0, -1], [-1, 0], [1, 0], [0, 1]], wrap: false },
    hex: { offsets: [[-1, 0], [1, 0], [0, -1], [1, -1], [-1, 1], [0, 1]], wrap: false },
    wrap: { offsets: [[-1, -1], [0, -1], [1, -1], [-1, 0], [1, 0], [-1, 1], [0, 1], [1, 1]], wrap: true },
}

メンバー

名前型説明
orthogonal{ offsets: readonly (readonly [number, number])[]; wrap: boolean; }
square{ offsets: readonly (readonly [number, number])[]; wrap: boolean; }
hex{ offsets: readonly (readonly [number, number])[]; wrap: boolean; }
wrap{ offsets: readonly (readonly [number, number])[]; wrap: boolean; }

例

import { GRID_SPECS } from "@johnmorrisdotca/jirai";

console.log(GRID_SPECS);
{
  square: {
    offsets: [
      [Array], [Array],
      [Array], [Array],
      [Array], [Array],
      [Array], [Array]
    ],
    wrap: false
  },
  orthogonal: { offsets: [ [Array], [Array], [Array], [Array] ], wrap: false },
  hex: {
    offsets: [ [Array], [Array], [Array], [Array], [Array], [Array] ],
    wrap: false
  },
  wrap: {
    offsets: [
      [Array], [Array],
      [Array], [Array],
      [Array], [Array],
      [Array], [Array]
    ],
    wrap: true
  }
}

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

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

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