Saltar al contenido principal

Crear menús del Codex

Quest Codex no tiene ninguna pantalla integrada. Cada menú es un conjunto de layouts de GUI que diseñas tú, y el codex solo rellena las ranuras marcador que coloques en él. Lee primero las guías de GUI: Entender un menú GUI, Layouts, marcos y ranuras e Interacciones y navegación.

Las piezas​

EntradaFunción
Quest CategoryDeclara una categoría: título, icono, padre, criterios.
Quest AssignmentColoca misiones en una categoría, con orden y sobrescrituras por estado.
Category MenuEl menú de una categoría (o el menú principal, o el menú de seguimiento). Su campo menu hace referencia a una entrada Open GUI que contiene los layouts.

Marcadores​

Coloca un objeto en un layout simple de la entrada Open GUI referenciada, establece buttonPrefix en codex_button: y buttonType en un marcador:

buttonTypeSe sustituye por
CATEGORY_SLOTUna categoría raíz por ranura, en el menú principal.
QUEST_SLOTUna misión por ranura, en un menú de categoría.
TRACKED_QUEST_SLOTUna misión seguida por ranura, en el menú @tracked.
SORT_SLOTEl botón de ordenación, dibujado sobre el layout para que nunca se desplace.

Dos reglas:

  1. Un marcador, una ranura. Un marcador solo se expande mediante sus propios count, direction, gap y repeatY. Una cuadrícula de 7 por 8 es un único objeto con count 7, direction right y repeatY 8. Sin direction, el marcador sigue siendo una sola ranura. gap es un paso: 1 significa adyacente.
  2. Los marcadores siguen al layout. Se indexan en orden de lectura antes de analizar el layout, así que si colocas el objeto marcador en el layout simple que envuelve un layout scrollable, la lista de misiones se desplaza con un orden estable.

Los marcadores fuera de los layouts simple, o en un chasis compartido en lugar de en la entrada Open GUI indicada en menu, no se rellenan.

Un menú de categoría desplazable​

Un explorador de seis filas con borde, controles fijos y una ventana desplazable de 7 por 4 sobre una cuadrícula de misiones de 7 por 8:

  1. Crea una entrada Open GUI main_quests_gui con guiType CUSTOM y size SIZE_54.
  2. Añade un layout simple llamado deco. Añade un panel de cristal negro en x 0, y 0 con count 9, direction right y el nombre establecido en un único espacio, y lo mismo en y 5. En la fila 5 añade un objeto BACK en x 0 (buttonPrefix codex_button:, buttonType BACK), un objeto SORT_SLOT en x 4 y un objeto CLOSE en x 8.
  3. Añade un layout simple llamado quest_grid con un objeto: buttonPrefix codex_button:, buttonType QUEST_SLOT, x 0, y 0, count 7, direction right, repeatY 8.
  4. Añade un layout scrollable llamado quests con innerId quest_grid, virtualWidth 7, virtualHeight 8 y dos buttons: una flecha UP en x 1, y 4 y una flecha DOWN en x 5, y 4.
  5. Añade un layout frame llamado root con dos marcos: deco en 0,0 de tamaño 9 por 6, y quests en 1,1 de tamaño 7 por 4. Establece mainLayoutId en root.
  6. Crea el Category Menu con category main_quests, rows 6 y menu establecido en main_quests_gui.

La cuadrícula de misiones vive dentro del contenido desplazable, así que las misiones se desplazan con la ventana. Las flechas solo aparecen cuando hay algo hacia lo que desplazarse.

El botón de ordenación​

SORT_SLOT muestra el modo de ordenación actual y cambia de modo con cada clic: All (Todas), Not started (Sin empezar), In progress (En curso), Completed (Completadas). El modo se conserva por jugador hasta que se reinicie el servidor y se aplica a todos los menús de categoría. Configura el objeto, la etiqueta y el lore de cada modo en sortDisplay del Category Menu; si no lo haces, se usa una etiqueta integrada.

Botones de navegación​

Etiqueta una ranura con PAGE_NEXT, PAGE_PREV, SCROLL_UP, SCROLL_DOWN, SCROLL_LEFT, SCROLL_RIGHT, BACK, CLOSE o SORT para asignarle su acción de clic. Se conservan el objeto, el nombre y el lore que configures; la flecha, la barrera o la tolva predeterminadas solo aparecen cuando la ranura no tiene objeto. También puedes usar objetos normales con comandos gui:back, gui:close o gui:scroll.

PAGE_NEXT y PAGE_PREV paginan la lista de misiones o categorías cuando el menú tiene marcadores, y en caso contrario paginan un layout paginated.

Aspecto de las misiones​

Una ranura de misión se adapta al progreso del jugador. Quest Lore añade lore por estado, y la Quest Assignment puede sobrescribir el icono, el nombre, el lore y la visibilidad por estado. Al hacer clic en una misión activa se empieza o se deja de seguirla; al hacer clic en una misión sin empezar o completada se envía el mensaje correspondiente de los ajustes globales.

Lista de comprobación​

  1. Una entrada Quest Codex Global Settings, con un artefacto de seguimiento.
  2. Al menos una Quest Category, sin parent para el menú principal.
  3. Una Quest Assignment por categoría.
  4. Un Category Menu por categoría, y uno con category vacío para el menú principal, cada uno con su marcador.
  5. rows del Category Menu igual a la altura de la entrada Open GUI.
  6. Los jugadores tienen typewriter.codex.open, o abren el menú desde una acción.