Contenido generado con IA — puede contener errores.

Referencia

Índice de módulos

Los cuarenta y seis módulos, para qué sirve cada uno, y dónde está su punto de entrada.

Todos los módulos se alcanzan igual: una clase estática con el nombre del módulo, normalmente con un of(plugin) que devuelve una vista que pertenece a tu plugin.

Fundamentos

MóduloPunto de entradaPara qué sirve
TaskTasks.of(plugin)Programación que corre en Spigot, Paper y Folia desde una llamada.
ConfigConfigs.define(plugin, nombre, tipo)Archivos YAML declarados y leídos como records de Java.
TextText.of(cadena)Cada cadena visible, a componentes de Adventure.
PlaceholdersPlaceholders.group(plugin, prefijo)Un registro para %placeholders%, con o sin PlaceholderAPI.
FormatsFormats, AmountsNúmeros, dinero, porcentajes y fechas que lee un jugador — y cantidades que teclea.
DebugDebug.of(plugin)Salida de consola con color, con un interruptor global.
ReloadingReloads.of(plugin)Pasos de recarga con nombre y fallos contenidos, más listeners de recarga de la librería.

Almacenamiento

MóduloPunto de entradaPara qué sirve
DatabaseDatabases.of(plugin)Records en H2, MySQL, MariaDB, PostgreSQL o MongoDB.
TransferTransfers.of(plugin)La base de datos entera de un plugin a un archivo y de vuelta.
RedisconfiguraciónUna caché compartida que hace que una base de datos se vea igual desde cada servidor.
SnapshotsSnapshots.of(plugin)El estado de un jugador guardado para después, en memoria o almacenado.

Interfaces

MóduloPunto de entradaPara qué sirve
MenusMenus.of(plugin)Menús escritos en configuración: listas, plantillas, condiciones, animaciones.
ItemsItems.of(plugin)Items descritos en configuración, leídos una vez y dibujados por jugador.
ActionsActions.of(plugin, namespace)Acciones compiladas y con namespace, compartidas por menús e items.
InputInputs.of(plugin)Pedirle a un jugador texto, números, opciones o un formulario entero.
EditorsEditors.of(plugin)Pantallas para editar las listas que configura un plugin.
WizardsWizards.of(plugin)Guiar a un jugador por varias preguntas, aplicadas solo al confirmar.
PreviewsPreviews.of(plugin)Mostrarle a un jugador un efecto contra un cielo vacío.
HeadsHeads.browse(inputs, …)El catálogo de cabezas decorativas, buscable desde un menú, una página cada vez.

En pantalla

MóduloPunto de entradaPara qué sirve
EffectsEffects.play(config, viewer)Títulos, barras de acción, boss bars, sonidos, partículas, fuegos.
SequencesSequences.of(plugin)Efectos coreografiados desde configuración: veinticinco formas, sonidos, pausas, displays y cuerpos.
DisplaysDisplays.of(plugin)Displays de objeto, bloque y texto que se mueven, giran y caen solos, animados por el cliente.
NPCsNpcs.of(plugin)Cuerpos con forma de jugador que solo existen en un cliente.
RagdollsRagdolls.of(plugin)Uno de esos cuerpos deshaciéndose, en once poses.
OverlaysOverlays.of(plugin)Objetos en el inventario del jugador que el servidor no tiene.
PacketsPackets.of(plugin)Vanish, bloques falsos, congelar, un espectador falso y mirar cofres en silencio.
ScoreboardScoreboards.show(plugin, player, config)Sidebars por paquetes declarados en config.
HologramHolograms.show(plugin, id, location, config)Hologramas por paquetes declarados en config.
NametagsNametags.of(plugin)Color del nombre, brillo y colisión según quién mira.
ChatChats.rule(plugin, rule)Quién lee los mensajes de quién, quitados de la audiencia antes de entregar.
CosmeticsCosmetics.rule(plugin, rule)Si se dibujan los cosméticos de un jugador — la pregunta que hace cada plugin cosmético.
ClientClients.of(plugin)Waypoints, cooldowns y marcadores de compañero en Lunar y Feather.
SkullsSkulls.player(nombre)Cabezas de jugador desde base64, una URL o un nombre — cacheadas y sin bloquear.

Mundo

MóduloPunto de entradaPara qué sirve
RegionsRegions.of(plugin)Formas, un índice espacial, políticas de solape, eventos de entrada y salida, contornos.
SchematicsSchematics.of(plugin)Guardar una caja del mundo y pegarla de vuelta.
WorldWorlds.create(key, nombre)Crear y borrar mundos, desde cualquier hilo.
WorldGuardWorldGuardRegions, WorldGuardFlagsConsultas de región y las flags propias del ecosistema — kill-effects, hit-effects, arrows-effects — sin dependencia en compilación.

Jugadores

MóduloPunto de entradaPara qué sirve
SessionsSessions.of(plugin)Un registro de reservas para que dos plugins no tengan al mismo jugador.
CooldownsCooldowns.of(plugin)La base sobre la que se apoya cada cooldown del ecosistema.
SchedulesSchedules.of(plugin)Horarios: qué arranca solo, cuándo y bajo qué condiciones.
TeleportTeleports.of(plugin)Calentamientos, aterrizajes seguros, /back, peticiones y traspasos.
CombatCombat.isTagged(player)Si un jugador está peleando, sobre DeluxeCombat o PvPManager.
ClanClans.clanOf(uuid)Una API sobre ocho plugins de clanes y puentes externos.

Lo que gana un jugador

MóduloPunto de entradaPara qué sirve
RewardsRewards.of(plugin)Items, comandos, dinero, probabilidades y condiciones — a prueba de desconexiones.
LootLoot.parseAll(lineas)Lo que sale de un cofre, un generador o un bloque roto.
EconomyEconomy.balance(uuid)Saldos, cobros y transferencias sobre Vault, PlayerPoints o tu propia moneda.

No son módulos

ClaseQué es
net.exylia.lib.ExyliaLibEl plugin en sí: ciclo de vida y limpieza, nada más.
net.exylia.lib.platform.Platformcurrent(), isFolia(), isPaper().
net.exylia.lib.practicebot.PracticeBotsUn puente al plugin de bots de práctica: get() y available(). Vacío cuando no está.
net.exylia.lib.internal.*Interno. Libre de cambiar sin aviso.
CleanupSin API: plugins/ExyliaLib/cleanup.yml. Barre la carpeta logs/ del servidor de archivos con más de keep-days días, un minuto tras arrancar y cada seis horas.

Recargar

Reloads.of(this)
        .step("configs", () -> { settings.reload(); menus.reload(); })
        .step("arenas", () -> arenas.load())
        .run(sender);

Cada paso informa por sí mismo: uno que lance se nombra en consola y al emisor se le dice cuántos salieron bien. Un plugin recargado a medias que no dice nada es peor que uno que nombra lo que falló.

Reloads.onLibraryReload(this, () -> menus.reload());

El /exylialib reload de la propia librería dispara ese listener. El motivo habitual de quererlo es que cambie la paleta: cada menú compilado se queda con los colores de la semana pasada hasta que se vuelve a leer.

Salida de depuración

Debug debug = Debug.of(this);
 
debug.success("Configs cargadas");
debug.warn("La arena 'main' no tiene esquemática");
debug.error("No se pudo alcanzar la base de datos", failure);
debug.debug("Sesión vaciada: " + entries);      // solo con debug activo

Debug.all(true) enciende las líneas de debug de todos los plugins a la vez, que es el interruptor al que acudir para reproducir algo en vez de editar la config de cada plugin.

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