Construire les menus du Codex
Quest Codex n'a pas d'écran intégré. Chaque menu est un pool de layouts GUI que vous concevez, et le codex ne remplit que les emplacements marqueurs que vous y placez. Lisez d'abord les guides GUI : Comprendre un menu GUI, Layouts, frames et slots et Interactions et navigation.
Les éléments
| Entrée | Rôle |
|---|---|
| Quest Category | Déclare une catégorie : titre, icône, parent, critères. |
| Quest Assignment | Place des quêtes dans une catégorie, avec un ordre et des surcharges par statut. |
| Category Menu | Le menu d'une catégorie (ou le menu principal, ou le menu des quêtes suivies). Son champ menu référence un Open GUI qui contient les layouts. |
Marqueurs
Placez un objet dans un layout simple de l'Open GUI référencé, définissez buttonPrefix sur codex_button: et buttonType sur un marqueur :
buttonType | Remplacé par |
|---|---|
CATEGORY_SLOT | Une catégorie racine par emplacement, dans le menu principal. |
QUEST_SLOT | Une quête par emplacement, dans un menu de catégorie. |
TRACKED_QUEST_SLOT | Une quête suivie par emplacement, dans le menu @tracked. |
SORT_SLOT | Le bouton de tri, dessiné au-dessus du layout pour qu'il ne défile jamais hors de vue. |
Deux règles :
- Un marqueur, un emplacement. Un marqueur ne s'étend que via ses propres
count,direction,gapetrepeatY. Une grille de 7 par 8 correspond à un seul objet aveccount7,directionrightetrepeatY8. Sansdirection, le marqueur reste un seul emplacement.gapest un pas :1signifie adjacent. - Les marqueurs suivent le layout. Ils sont indexés dans l'ordre de lecture avant l'analyse du layout ; placez donc l'objet marqueur dans le layout
simplequ'enveloppe un layoutscrollable, et la liste des quêtes défilera avec un ordre stable.
Les marqueurs placés hors des layouts simple, ou dans un châssis partagé plutôt que dans l'Open GUI désigné par menu, ne sont pas remplis.
Un menu de catégorie défilant
Un navigateur de six lignes avec une bordure, des commandes fixes et une fenêtre défilante de 7 par 4 sur une grille de quêtes de 7 par 8 :
- Créez un Open GUI
main_quests_guiavecguiTypeCUSTOMetsizeSIZE_54. - Ajoutez un layout
simpledeco. Ajoutez une vitre noire àx0,y0 aveccount9,directionrightet le nom défini sur un seul espace, puis la même ày5. Sur la ligne 5, ajoutez un objetBACKàx0 (buttonPrefixcodex_button:,buttonTypeBACK), un objetSORT_SLOTàx4 et un objetCLOSEàx8. - Ajoutez un layout
simplequest_gridavec un seul objet :buttonPrefixcodex_button:,buttonTypeQUEST_SLOT,x0,y0,count7,directionright,repeatY8. - Ajoutez un layout
scrollablequestsavecinnerIdquest_grid,virtualWidth7,virtualHeight8 et deuxbuttons, une flècheUPàx1,y4 et une flècheDOWNàx5,y4. - Ajoutez un layout
framerootavec deux frames :decoen 0,0 de taille 9 par 6, etquestsen 1,1 de taille 7 par 4. DéfinissezmainLayoutIdsurroot. - Créez le Category Menu avec
categorymain_quests,rows6etmenudéfini surmain_quests_gui.
La grille de quêtes se trouve à l'intérieur du contenu défilant, les quêtes défilent donc avec la fenêtre. Les flèches n'apparaissent que lorsqu'il y a quelque chose à faire défiler.
Le bouton de tri
SORT_SLOT affiche le mode de tri actuel et change de mode à chaque clic : Toutes, Non commencées, En cours, Terminées. Le mode est conservé par joueur jusqu'au redémarrage du serveur et s'applique à tous les menus de catégorie. Configurez l'objet, le libellé et le lore de chaque mode dans sortDisplay du Category Menu ; sans cela, un libellé intégré est utilisé.
Boutons de navigation
Étiquetez un emplacement avec PAGE_NEXT, PAGE_PREV, SCROLL_UP, SCROLL_DOWN, SCROLL_LEFT, SCROLL_RIGHT, BACK, CLOSE ou SORT pour câbler son action de clic. L'objet, le nom et le lore que vous configurez sont conservés ; la flèche, la barrière ou l'entonnoir par défaut n'apparaît que lorsque l'emplacement n'a pas d'objet. Vous pouvez aussi utiliser de simples objets avec les commandes gui:back, gui:close ou gui:scroll.
PAGE_NEXT et PAGE_PREV paginent la liste des quêtes ou des catégories lorsque le menu contient des marqueurs, et paginent sinon un layout paginated.
Apparence des quêtes
Un emplacement de quête s'adapte à la progression du joueur. Quest Lore ajoute du lore par statut, et le Quest Assignment peut surcharger l'icône, le nom, le lore et la visibilité par statut. Cliquer sur une quête active la suit ou arrête son suivi ; cliquer sur une quête non commencée ou terminée envoie le message correspondant défini dans les paramètres globaux.
Liste de vérification
- Une entrée Quest Codex Global Settings, avec un artifact de suivi.
- Au moins une Quest Category, sans
parentpour le menu principal. - Un Quest Assignment par catégorie.
- Un Category Menu par catégorie, et un avec un
categoryvide pour le menu principal, chacun avec son marqueur. rowsdu Category Menu égal à la hauteur de l'Open GUI.- Les joueurs possèdent
typewriter.codex.open, ou ouvrent le menu depuis une action.