Die Menüs gestalten
Dungeon hat zwei Menüs, und du zeichnest beide. Diese Seite baut ein minimales Paar: einen Browser mit zwei Dungeon-Slots und eine Lobby mit Buttons für Bereit, Verlassen und Automatisch auffüllen. Sie setzt voraus, dass du bereits eine Dungeon Instance und eine Dungeon Category wie in den Schritten unter Erste Schritte erstellt hast.
Neu bei GUI-Layouts? Lies zuerst die GUI-Einführung und die Layout-Anleitung. Die folgenden Menüs verwenden dieselben Felder layoutPool und mainLayoutId wie die Open GUI-Action.
Das globale Menü
- Füge auf einer Sequence-Page ein Dungeon Global Menu hinzu und setze
categoryauf deine Kategorie. SetzeinventoryRowsauf3undinventoryTitleauf<gold>Dungeons. - Füge in
layoutPoolein Layout vom Typsimplemit deridmainhinzu. GibmaininmainLayoutIdein. - Füge in
itemseinen Rand hinzu: eine graue Glasscheibe beix0,y0, mitcount9,directionrightund einem einzelnen Leerzeichen alsdisplayName. Wiederhole das beiy2. - Füge ein Item mit
buttonTypeDUNGEON_INSTANCE_SLOTbeix3,y1,count3,directionright,gap1hinzu. Sein Material spielt keine Rolle: Es ist ein Marker. Die ersten drei Dungeons der Kategorie füllen die drei Positionen. - Füge optional ein Item mit
buttonTypeDUNGEON_FIND_PARTYbeix8,y1hinzu (zum Beispiel einen Kompass mit dem Namen<yellow>Party suchen) und eines mitbuttonTypeDUNGEON_INFOfür ein Hilfebuch. - Löse den Entry aus einer NPC-Dialogoption oder einem Command-Event aus und führe dann Publish aus.
Wie jeder Dungeon aussieht, wird in der Kategorie festgelegt, nicht im Layout: Öffne die Dungeon Category und bearbeite unlockedItem, unlockedName und unlockLore ihres Slots. {dungeon_name}, {players} und {max} werden ersetzt, wenn das Menü geöffnet wird und jedes Mal, wenn es neu gezeichnet wird. Um einen Dungeon für manche Spieler zu sperren, füge seinem Slot criteria hinzu: Sie sehen das gesperrte Aussehen und können ihn nicht öffnen.
Das Party-Menü
- Füge ein Dungeon Party Menu hinzu. Lass sein
dungeonInstanceleer, um jeden Dungeon zu bedienen, oder nenne einen Dungeon, um ihm ein eigenes Menü zu geben. Ein Menü mit leeremdungeonInstancebedient die Dungeons, die kein anderes Menü nennt. - Setze
inventoryRowsauf3undinventoryTitleauf<gold>Lobbys. - Wähle das Aussehen der Lobby:
lobbyItem(standardmäßig ein Papier),lobbyNameLobby {index}und einelobbyLorewie{players}/{max} Spielerund{player_names}. - Füge in
layoutPooleinsimple-Layoutmainhinzu und setzemainLayoutId. Platziere ein Item mitbuttonTypeDUNGEON_LOBBY_SLOTdort, wo Lobbys erscheinen sollen (verwendecount,directionundgapfür eine Reihe). Ohne Marker werden Lobbys von der oberen linken Ecke aus gezeichnet, undlobbyOffsetXundlobbyOffsetYverschieben sie von deinem Rand oder deinen Buttons weg. - Füge drei Button-Items in der unteren Reihe hinzu:
DUNGEON_READY(zum Beispiel ein Lime Dye mit dem Namen<green>Bereit),DUNGEON_LEAVE(eine Barriere) undDUNGEON_AUTO_FILL. - Publish. Löse diesen Entry nicht selbst aus: Er öffnet sich, wenn ein Spieler im globalen Menü einen Dungeon anklickt.
Ein Dungeon hat eine Lobby pro maxSimultaneousInstances, ein Dungeon mit maxSimultaneousInstances 1 zeigt also eine einzelne Lobby.
Was ein Spieler erlebt
- Der Spieler öffnet das globale Menü und klickt einen Dungeon an. Das Party-Menü öffnet sich.
- Er klickt eine Lobby an, um sie zu betreten. Ist MMOCore, Parties oder die Typewriter-Party-Erweiterung installiert, betritt die gesamte Party eines Spielers die Lobby gemeinsam, wenn Platz ist (Dungeon liest diese Parties nur und ändert sie nie).
- Andere Spieler sehen das neue Mitglied ohne Klick: Beide Menüs aktualisieren sich von selbst (
autoRefreshTicks). Jeder Spieler drückt den Bereit-Button. Sind alle bereit und istminPartySizeerreicht, läuft der CountdownstartCooldownSeconds, dann wird die Party zum Spawnpunkt teleportiert. - Wenn der Durchlauf endet, kommen die Spieler dorthin zurück, wo sie waren.
Tipps
Zeichne das Layout in einem einfachen Open-GUI-Menü mit Dekorations-Items, prüfe die Positionen, kopiere dann den layoutPool in das Dungeon-Menü und kennzeichne die dynamischen Items.
buttonType muss in Großbuchstaben geschrieben werden, wie unter Menüs aufgelistet. Ein falsch geschriebener Typ ist kein Fehler: Das Item bleibt ein normales Item und tut nichts Besonderes.