Contenido generado con IA — puede contener errores.

Referencia

API

Generar las plantillas de ExyliaMobs desde otro plugin con el almacén compartido de mobs de ExyliaLib, leerlas y guardarlas con sus listas de recompensas, y abrir la pantalla del mob.

ExyliaMobs no tiene un artefacto de API propio. Responde al almacén compartido de mobs de ExyliaLib: al arrancar le entrega a la librería un MobStore, y cualquier plugin lo pide con Mobs.store(), sin depender de ExyliaMobs. Los tipos del almacén son de ExyliaLib, documentados en El almacén compartido.

Mobs.store().ifPresent(store -> {
    MobTemplate template = store.mobs().template("stone_golem");
    if (template != null) store.mobs().spawn(template, spot);
});

Mobs.store() está vacío cuando ExyliaMobs no está instalado, y vuelve a vaciarse cuando se desactiva.

Añadir ExyliaLib a tu proyecto

El artefacto, el repositorio y la línea de plugin.yml están en la página de la API pública. Añade ExyliaMobs a tu softdepend para que se active antes.

Qué responde el almacén

MétodoQué hace
mobs()El PluginMobs de ExyliaMobs: sus plantillas registradas, apariciones y manejadores.
stored()Todas las plantillas de la base de datos, leídas en ese momento y no de la caché, cada una con sus Payouts. Una fila que este servidor no puede leer se deja fuera.
save(template, payouts)Guarda una plantilla y la registra. Con payouts en null se queda lo que paga la fila guardada (nada para una nueva). Se completa cuando la escritura ha terminado.
edit(player, id, back)Abre la pantalla del mob de ExyliaMobs sobre una plantilla. Su VOLVER ejecuta back; con null vuelve a la lista de mobs. false si no existe esa plantilla.

Payouts

MobStore.Payouts es lo que paga ExyliaMobs aparte de las recompensas propias de la plantilla, que son la lista del que más daño hizo.

CampoSignificado
boosterLa fuente de potenciador. En blanco es mobs.
modeLa entrega de items del mob, DROP o INVENTORY. En blanco sigue reward-mode de config.yml.
listsListas de recompensas por nombre: SECOND, THIRD, SHARED, HIT, LAST_HIT, EVERYONE, NEARBY, DEATH, ESCAPED. Los nombres desconocidos se ignoran.

Guardar con payouts sustituye cada lista que nombra y vacía las que no nombra. El modo de entrega propio de cada lista, elegido en ENTREGA DE ÍTEMS, se conserva tal como está guardado. Consulta Recompensas para saber a quién paga cada lista.

Mobs generados a través del almacén

Un mob generado con store.mobs() es de ExyliaMobs: paga sus listas de recompensas como cualquier otro, cuenta en /mobsadmin y lo quita /mobsadmin killall. Un manejador añadido con onHit u onDeath en el PluginMobs del almacén oye todos sus mobs, así que filtra por tus propias entidades, y quita el manejador cuando tu plugin se desactive.

ExyliaRewards usa exactamente esto para las piñatas de las fiestas de votos: genera el mob elegido a través del almacén, y su botón EDIT MOB llama a edit con un back que vuelve a la piñata.

¿Falta algo en esta página? Dínoslo en Discord