メインコンテンツまでスキップ

メニューを開く

作成したメニューをプレイヤーが開く方法には、基本コマンド、動的コマンド登録、別メニューからの画面遷移があります。


基本コマンド​

EasyMenuが標準で提供するコマンドです。

メインメニューを開く​

/menu

plugins/EasyMenu/main.yml で定義されたメインメニューを開きます。デフォルトでは全プレイヤーが実行可能です。

サブメニューを直接開く​

/submenu <メニューID>
# または短縮エイリアス
/sm <メニューID>

例えば plugins/EasyMenu/sub/shop.yml を開く場合は /submenu shop を実行します。


動的オープンコマンド (open-command)​

各メニューファイルで open-command を設定すると、そのメニュー専用のカスタムコマンド(例: /shop, /warp)をサーバーに自動登録できます。

plugins/EasyMenu/sub/shop.yml
menu-title: "&a&lショップメニュー"
menu-size: 27

# 専用のオープンコマンドを登録
open-command:
name: "shop"
aliases:
- "store"
- "market"
permission: "myserver.command.shop"
permission-default: true

menu-items:
- slot: 13
material: EMERALD
name: "&a購入"
command: "shop buy"

open-command の設定項目​

キー型既定値説明
name文字列必須登録するメインコマンド名(先頭のスラッシュなし)。
aliases文字列リスト[]コマンドの別名(エイリアス)リスト。
permission文字列なしコマンド実行に必要なパーミッションノード。
permission-default真偽値false権限の既定許可対象。true で全プレイヤーに許可、false でOPのみに許可。

name と aliases の各要素は、英数字・_・- だけで、32文字以内にします。スラッシュや空白、日本語などを含むとエラー(invalid-open-command)になり、リロードが拒否されます。 permission に指定したノードがまだ存在しなければ、EasyMenuが permission-default の設定で自動登録します。すでに他のプラグインが同名のノードを定義している場合は、そちらの設定が優先されます。 コンソールから open-command を実行すると「プレイヤーのみ使用できます」というメッセージが表示されます。

コマンド名の重複チェック

既に他のプラグインが所有しているコマンド名や、EasyMenu内の別メニューと重複する名前を指定した場合、リロード時にエラー(衝突)が検出され、安全にリロードが拒否されます。他のプラグインのコマンドを誤って上書きしてしまうことはありません。


開封条件 (open-when)​

特定の条件を満たしたプレイヤーのみにメニューを開かせることができます。

# VIP権限を持つプレイヤーのみ開けるメニュー
open-when:
permission: "myserver.vip"

# 権限がない場合に表示するメッセージ
open-denied-message: "&cこのメニューはVIPランク専用です。"

/menu、/submenu <id>、および open-command のどの経路から開いた場合でも、open-when の条件が共通して適用されます。条件構文の詳細は 条件 を参照してください。