本文へ移動

Houseki宝石

5つの宝石と石のゲームの仕組みを使い、測定したチャレンジやレッスンで遊び、再現できるゲームを保存できます。

宝石(ほうせき)は、宝石や貴石を意味する日本語です。 名前について(英語)

目次

リファレンス · ジェムスワップ

GameStatus型

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

A compact native status derived from the authoritative state for a host’s labels.

インポート

import type { GameStatus } from "@johnmorrisdotca/houseki/gem-swap";

定義

interface GameStatus {
    readonly phase: GamePhase;
    readonly score: number;
    readonly moves: number;
    readonly legalMoveCount: number;
    readonly usedFallback: boolean;
    readonly availableToolCount: number;
    readonly inventory: ToolInventory;
    readonly toolProgress: number;
    readonly toolAwardCursor: number;
    readonly assisted: boolean;
    readonly blackHoleCharges: 0 | 1;
    readonly blackHoleProgress: number;
    readonly blackHole: BlackHolePortal | null;
    readonly mode: GameMode;
    readonly outcome: GameOutcome;
    readonly remainingMoves: number | null;
    readonly elapsedMs: number;
    readonly remainingMs: number | null;
    readonly goals: readonly Goal[];
    readonly goalProgress: readonly {
        readonly kind: Goal['kind'];
        readonly current: number;
        readonly target: number;
        readonly colour?: GemColour;
        readonly complete: boolean;
    }[];
    readonly bestChain: number;
}

メンバー

名前型説明
phaseGamePhase
scorenumber
movesnumber
legalMoveCountnumber
usedFallbackboolean
availableToolCountnumber
inventoryReadonly<Record<OrdinaryToolKind, number>>
toolProgressnumber
toolAwardCursornumber
assistedboolean
blackHoleCharges0 | 1
blackHoleProgressnumber
blackHoleBlackHolePortal | null
modeGameMode
outcomeGameOutcome
remainingMovesnumber | null
elapsedMsnumber
remainingMsnumber | null
goalsreadonly Goal[]
goalProgressreadonly { readonly kind: Goal["kind"]; readonly current: number; readonly target: number; readonly colour?: GemColour; readonly complete: boolean; }[]
bestChainnumber

例

import { createGame, statusOf } from "@johnmorrisdotca/houseki/gem-swap";
import type { GameStatus } from "@johnmorrisdotca/houseki/gem-swap";

const state=createGame({seed:"docs"});
const value: GameStatus = statusOf(state);
console.log(value == null ? value : typeof value === "object" ? Object.keys(value).slice(0,6) : value);
[
  'phase',
  'score',
  'moves',
  'legalMoveCount',
  'usedFallback',
  'availableToolCount'
]

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

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

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