NarraLeaf

KeyMap

ゲームアクションのキーバインドを設定・取得・照合する KeyMap のメソッド

このページは作成中です。

KeyMap は、さまざまなゲームアクションに対するキーボードのバインドを保存・操作する役割を持ちます。

公開メソッド

setKeyBinding

特定のアクションのキーバインドを設定(または上書き)します。

game.keyMap.setKeyBinding(KeyBindingType.skipAction, " ");
// または、一度に**複数**のキーをバインドする
game.keyMap.setKeyBinding(KeyBindingType.skipAction, ["Control", "F3"]);
// バインドを削除する
game.keyMap.setKeyBinding(KeyBindingType.skipAction, null);
  • type: KeyBindingType | string – アクションの種類
  • value: KeyBindingValue – 単一のキー、キーのリスト、またはバインドを削除する null

getKeyBinding

アクションの現在のバインドを取得します。

const current = game.keyMap.getKeyBinding(KeyBindingType.skipAction);

addKeyBinding

既存のバインドに 1 つ以上のキーを追加します。

game.keyMap.addKeyBinding(KeyBindingType.skipAction, "F3");
// キーのリストを追加する
game.keyMap.addKeyBinding(KeyBindingType.skipAction, ["Alt", "Shift"]);

getKeyBindings

すべてのバインドを取得します。

onKeyBindingChange

バインドの変化を購読します。

const token = game.keyMap.onKeyBindingChange(KeyBindingType.skipAction, (value) => {
    console.log("Binding changed", value);
});

token.cancel(); // 監視を止める

match

あるキーが事前に定義したバインドに一致するかどうかを判定します(大文字小文字は区別しません)。

if (game.keyMap.match(KeyBindingType.skipAction, event.key)) {
    // do something
}

関連フック

バインドが変化するたびに UI を自動更新する、便利な React フックについては useKeyBinding を参照してください。

このページの目次