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

メニューの設計

Dungeon には 2 つのメニューがあり、どちらもあなたが描きます。このページでは、最小限の組を作ります。ダンジョンのスロットが 2 つあるブラウザと、準備完了・退出・自動参加のボタンがあるロビーです。Dungeon Instance と Dungeon Category を、はじめにの手順のとおりにすでに作成済みであることを前提とします。

GUI のレイアウトは初めてですか? 先に GUI の入門とレイアウトのガイドをお読みください。以下のメニューは、Open GUI アクションと同じ layoutPool と mainLayoutId のフィールドを使います。

グローバルメニュー​

  1. sequence ページに Dungeon Global Menu を追加し、category をあなたのカテゴリに設定します。inventoryRows を 3、inventoryTitle を <gold>Dungeons にします。
  2. layoutPool に、id が main のタイプ simple のレイアウトを追加します。mainLayoutId に main と入力します。
  3. items に枠を追加します。x が 0、y が 0 で、count が 9、direction が right、displayName が空白 1 文字の、グレーの色付きガラス板です。y が 2 でも繰り返します。
  4. buttonType が DUNGEON_INSTANCE_SLOT のアイテムを、x が 3、y が 1、count が 3、direction が right、gap が 1 で追加します。素材は関係ありません。マーカーだからです。カテゴリの最初の 3 つのダンジョンが、3 つの位置を埋めます。
  5. 任意で、buttonType が DUNGEON_FIND_PARTY のアイテムを x が 8、y が 1 に追加し(例えば <yellow>Find a party という名前のコンパス)、ヘルプの本用に buttonType が DUNGEON_INFO のアイテムも追加します。
  6. エントリを、NPC の会話の選択肢かコマンドイベントからトリガーし、Publish します。

各ダンジョンの見た目は、レイアウトではなくカテゴリで決まります。Dungeon Category を開き、そのスロットの unlockedItem、unlockedName、unlockLore を編集してください。{dungeon_name}、{players}、{max} は、メニューを開いたときと、再描画のたびに置き換えられます。一部のプレイヤーに対してダンジョンをロックするには、そのスロットに criteria を追加します。そのプレイヤーにはロック時の見た目が表示され、開けません。

パーティメニュー​

  1. Dungeon Party Menu を 1 つ追加します。dungeonInstance を空のままにすればすべてのダンジョンを担当し、ダンジョンを指定すればそのダンジョン専用のメニューになります。dungeonInstance が空のメニューは、他のどのメニューにも指定されていないダンジョンを担当します。
  2. inventoryRows を 3、inventoryTitle を <gold>Lobbies にします。
  3. ロビーの見た目を選びます。lobbyItem(デフォルトは紙)、lobbyName を Lobby {index}、lobbyLore を {players}/{max} players と {player_names} のようにします。
  4. layoutPool に simple のレイアウト main を追加し、mainLayoutId を設定します。ロビーを表示したい場所に、buttonType が DUNGEON_LOBBY_SLOT のアイテムを置きます(1 行にするには count、direction、gap を使います)。マーカーがない場合、ロビーは左上の角から描画され、lobbyOffsetX と lobbyOffsetY で、枠やボタンから離せます。
  5. 最下段に 3 つのボタンアイテムを追加します。DUNGEON_READY(例えば <green>Ready という名前のライムの染料)、DUNGEON_LEAVE(バリア)、DUNGEON_AUTO_FILL です。
  6. Publish します。このエントリを自分でトリガーしないでください。プレイヤーがグローバルメニューでダンジョンをクリックしたときに開きます。

ダンジョンには maxSimultaneousInstances ごとに 1 つのロビーがあるため、maxSimultaneousInstances が 1 のダンジョンでは、ロビーが 1 つだけ表示されます。

プレイヤーの体験​

  1. プレイヤーがグローバルメニューを開き、ダンジョンをクリックします。パーティメニューが開きます。
  2. ロビーをクリックして参加します。MMOCore、Parties、または Typewriter のパーティ拡張機能がインストールされている場合、空きがあれば、プレイヤーのパーティ全員が一緒にロビーに参加します(Dungeon はそれらのパーティを読み取るだけで、変更はしません)。
  3. 他のプレイヤーは、クリックしなくても新しいメンバーが見えます。両方のメニューは自動で更新されます(autoRefreshTicks)。各プレイヤーが準備完了ボタンを押します。全員が準備完了で minPartySize に達すると、startCooldownSeconds のカウントダウンが進み、その後パーティがスポーン地点にテレポートされます。
  4. ランが終わると、プレイヤーは元いた場所に戻ります。

ヒント​

まずプロトタイプを

装飾用のアイテムを使った普通の Open GUI メニューでレイアウトを描き、位置を確認してから、layoutPool を Dungeon のメニューにコピーし、動的なアイテムにタグを付けてください。

ボタンの種類は正確に

buttonType は、メニューに記載のとおり大文字で書く必要があります。綴りを間違えてもエラーにはなりません。そのアイテムは通常のアイテムのままで、特別なことは何も起こりません。