Saltar al contenido principal

ItemsAdder

Bloques, muebles, cultivos, HUD y objetos de ItemsAdder en eventos, objetivos y hechos de TypeWriter.

De pagov1.7Integraciones
RequiereTypeWriter0.9ItemsAdderQuest (TypeWriter extension)Basic (TypeWriter extension)

Descripción general​

ItemsAdder te permite añadir a tu servidor bloques, muebles, objetos, cultivos, HUD y entidades personalizados mediante un paquete de recursos. Esta extensión hace que todos ellos se puedan usar en TypeWriter. Una misión puede pedir a los jugadores que rompan un mineral personalizado o coloquen una lámpara personalizada, un diálogo puede reaccionar a que un jugador se siente en tus muebles, y un criterio puede comprobar que el jugador sostiene tu espada personalizada.

Todo usa el id con namespace de ItemsAdder (namespace:id, por ejemplo my_pack:ruby_ore). Nada de esto crea contenido: sigues definiendo bloques, muebles y objetos en ItemsAdder y luego usas sus ids en las entradas de TypeWriter.

Características​

  • Eventos de bloques y muebles — triggers cuando un bloque o mueble personalizado se rompe, se coloca o se interactúa con él.
  • Evento previo a la colocación — un trigger que se activa justo antes de que se genere un mueble.
  • Muerte de entidad personalizada — un trigger cuando un jugador mata una entidad personalizada de ItemsAdder.
  • Objetivos de recuento — romper o colocar bloques y muebles personalizados como objetivo de misión.
  • Herramientas de inventario de objetos — da o quita objetos de ItemsAdder, y reacciona a recogerlos, soltarlos o consumirlos.
  • Facts de objetos y del mundo — objeto sostenido, cantidad de objetos, usos y durabilidad restantes, bloque mirado o pisado, mueble mirado.
  • Facts de cultivos y HUD — etapa de crecimiento del cultivo, si un cultivo está maduro y si un HUD con nombre es visible.
  • Variables — ids y propiedades de objetos sostenidos, bloques y muebles, glifos de imágenes de fuente y listas del registro, listas para cualquier texto.
  • Entrada de sonido — usa un id de sonido de ItemsAdder dondequiera que TypeWriter pida un sonido.

Instalación​

  1. Instala ItemsAdder y deja que genere su paquete de recursos. Esta extensión no se carga sin él.
  2. Asegúrate de que las extensiones Quest y Basic de TypeWriter están instaladas.
  3. Descarga la extensión desde las tiendas (consulta los botones del panel de arriba) y coloca el JAR en plugins/Typewriter/extensions/.
  4. Reinicia el servidor.

Primeros pasos​

Este recorrido crea una misión que pide al jugador romper tres bloques de mineral personalizado.

  1. En el panel web, crea una misión con la extensión Quest y un fact para guardar el progreso (un fact permanente es una buena opción).
  2. En una página de manifest, añade un objetivo Break Block.
  3. Establece quest con tu misión y fact con el fact de progreso. Establece item con el id del bloque, por ejemplo my_pack:ruby_ore, y amount en 3. Deja item vacío para contar cualquier bloque personalizado.
  4. Establece display con la línea que se muestra en el rastreador de misiones, por ejemplo Mine ruby ore. El progreso (1/3) se añade automáticamente.
  5. Opcionalmente, enlaza onComplete con una secuencia que dé una recompensa, por ejemplo con Give Item e itemId my_pack:ruby_pendant.
  6. Publish, inicia la misión y rompe el bloque.

Para reaccionar una sola vez en lugar de contar, usa un evento: añade una entrada On Custom Block Break a una página de sequence, rellena blockId y enlaza sus triggers con las entradas que se ejecutarán.

Ids de bloques

Lista lo que ItemsAdder tiene cargado con la variable Registry IDs, o en el juego con los comandos de ItemsAdder, y copia el id con namespace exacto.

Cómo funciona​

Los eventos transportan datos sobre lo ocurrido. Las entradas activadas pueden leer el id del bloque o mueble y su posición, el clic usado (en la interacción con bloques) y el objeto en la mano.

Los objetivos cuentan cada posición una vez por jugador. Romper y volver a colocar el mismo bloque en el mismo sitio no suma al recuento. Solo cuentan mientras el jugador tiene activa la misión enlazada. Las acciones canceladas (por ejemplo, en una región protegida) no cuentan ni activan eventos.

Configuración​

Las líneas de objetivo del rastreador de misiones se construyen a partir de dos snippets de TypeWriter que puedes cambiar en el archivo de snippets de TypeWriter:

SnippetValor por defecto
advancedQuest.display<display> <dark_gray>(<gray><current><dark_gray>/<gray><required><dark_gray>)
advancedQuest.completed<green>✔</green> <st><display></st> <dark_gray>(<gray><current><dark_gray>/<gray><required><dark_gray>)

Entradas​

35 entradas, generadas a partir del código fuente de la extensión.

Acciones2
Eventos11
Objetivos4
Hechos10
Variables7
Sonidos1

Solución de problemas​

La extensión no aparece en el panel. ItemsAdder no está instalado o no se activó. Cada entrada llama a la API de ItemsAdder, así que la extensión se niega a cargarse sin el plugin.

Un evento nunca se activa. Comprueba el id: debe ser el namespace:id completo, no solo el id. Un id vacío coincide con cualquier cosa. Si rellenaste location, solo coincide esa posición exacta de bloque. Los eventos que otro plugin canceló (un plugin de protección, por ejemplo) se ignoran.

El objetivo no avanza. El jugador debe tener activa la misión enlazada y debe haber un fact establecido en el objetivo. La misma posición de bloque cuenta solo una vez por jugador.

Un fact siempre devuelve 0. El objeto sostenido o el bloque no es de ItemsAdder. Los facts que miran bloques solo comprueban el primer bloque dentro de range bloques (5 por defecto). Los facts de usos y durabilidad devuelven 0 cuando el objeto no tiene usos ni durabilidad personalizada.

La variable Registry IDs está vacía. ItemsAdder carga su contenido en segundo plano. La variable no devuelve nada hasta que ItemsAdder informa de que sus objetos están cargados, así que no la leas durante el inicio.

Give Item no da nada. El itemId es desconocido para ItemsAdder, así que no se construye ningún objeto y no se da nada. La acción informa de 0 entregados. Lo que sobra y no cabe se suelta a los pies del jugador, salvo que dropOverflow esté desactivado.

El fact de HUD siempre es 0. El id del HUD debe existir en ItemsAdder y el jugador debe tenerlo. ItemsAdder no puede listar los HUD, así que el fact solo comprueba el que nombras.

Extensiones relacionadas​

  • Nexo y Craft Engine — la misma integración para los otros plugins de contenido personalizado.