Contenido generado con IA — puede contener errores.

Configurar

Archivos de clase

Todas las claves que acepta un archivo de clase, cómo se asigna una clase a un jugador y la notación de las líneas de efectos, sonidos y partículas.

Una clase es un archivo .yml en plugins/ExyliaClasses/classes/. El nombre del archivo en minúsculas es el id de la clase.

El archivo entero

classes/Archer.yml
display-name: "<#c8c8c8><bold>ARCHER</bold>"
permission: "NONE"
 
equipment:
  helmet: LEATHER_HELMET
  chestplate: LEATHER_CHESTPLATE
  leggings: LEATHER_LEGGINGS
  boots: LEATHER_BOOTS
 
passive-effects:
  - SPEED|3
  - DAMAGE_RESISTANCE|2
 
special-passives: []
 
warmup:
  time: 5
 
energy:
  enabled: false
 
abilities: {}
hold-effects: {}
weapons: {}
ClavePor defectoQué hace
display-nameel idEl nombre en cada mensaje, y la respuesta que da %exyliaclasses_classes_class% a un scoreboard o a un plugin de tab. Funcionan etiquetas de color y tokens de paleta.
permissionNONEEl nodo que necesita el jugador. NONE, vacío o ausente significa que puede cualquiera.
equipmentningunoLa armadura que mete al jugador en la clase.
passive-effectsningunoEfectos mientras se lleve la clase. Ver Pasivas.
special-passivesningunoEfectos mientras se cumpla una condición. Ver Pasivas.
warmup5 segundosEl retardo antes de que la clase se active.
energyapagadaEl recurso que gastan las habilidades. Ver Energía.
abilitiesningunaObjetos de clic derecho. Ver Habilidades.
hold-effectsningunoEfectos mientras se sostiene un objeto. Ver Habilidades.
weaponsningunaUn arma de marca o de apuñalamiento. Ver Armas.

Equipamiento

Solo existen cuatro ranuras, y solo se comprueban las que escribas:

equipment:
  helmet: TURTLE_HELMET
  chestplate: NETHERITE_CHESTPLATE
  leggings: NETHERITE_LEGGINGS
  boots: NETHERITE_BOOTS
Clave de ranuraPieza
helmetCabeza
chestplatePecho
leggingsPiernas
bootsPies

Un material desconocido se registra en consola y esa ranura se ignora, lo que hace la clase más fácil de conseguir sin avisar — revisa la consola después de editar.

Solo se compara el material

Encantamientos, nombres, trims, durabilidad y datos personalizados dan igual. Una pechera de netherita con Protección IV y una recién hecha son la misma pechera para este plugin.

Cómo se asigna la clase

La armadura se vuelve a comprobar cuando el jugador entra (dos ticks después de entrar, para que otros plugins ya le hayan dado su equipo), cuando reaparece, cada vez que cambia una pieza de armadura, y para todos los conectados cuando el plugin arranca o se recarga.

¿Ya está en una clase?

Si la armadura sigue encajando con esa clase, no pasa nada. Si no, se le quita la clase y se le vuelve a asignar desde cero — así que cambiar un set completo de cuero por uno de oro pasa directamente de Archer al warmup de Bard.

¿Está en un warmup?

Si la armadura ya no encaja con la clase que estaba esperando, el warmup se cancela y se le vuelve a asignar.

Si no

Gana la primera clase cuyo equipamiento encaje, y empieza su warmup.

Dale a cada clase un set único

"La primera clase que encaje" es la primera de un mapa sin orden, no la primera alfabéticamente ni por nombre de archivo. Dos clases que pidan la misma armadura son una moneda al aire que puede caer distinto tras una recarga.

La clase se pierde entera al morir y al salir, junto con la barra de energía, las marcas y todos los cooldowns de habilidades.

Permiso

permission: "exyliaclasses.class.rogue"

Cualquier cosa que no sea NONE, vacío o ausente se trata como un nodo real. Un jugador que lleve la armadura sin él recibe el mensaje no-permission y ningún warmup — la armadura simplemente no hace nada. El nodo te lo inventas tú; el plugin no registra ninguna lista.

Warmup

warmup:
  time: 5
  sound:
    enabled: true
    type: "BLOCK_AMETHYST_BLOCK_PLACE|1|1"
  particle:
    enabled: true
    type: "BUBBLE_POP|100|1.5|1.5|1.5|3"
  sound-completed:
    enabled: true
    type: "BLOCK_PISTON_EXTEND|1|1"
  particle-completed:
    enabled: true
    type: "REVERSE_PORTAL|100|1.5|1.5|1.5|3"
  sound-cancel:
    enabled: true
    type: "BLOCK_ANVIL_PLACE|1|1"
  particle-cancel:
    enabled: true
    type: "DRIP_LAVA|100|1.5|1.5|1.5|3"
ClavePor defectoCuándo suena
time5Segundos. El mensaje de cuenta atrás se envía una vez por segundo.
sound / particleapagadoCada segundo de la cuenta atrás.
sound-completed / particle-completedapagadoEn el momento en que la clase se activa.
sound-cancel / particle-cancelapagadoCuando el warmup se cancela por un cambio de armadura.

Cada uno de esos seis bloques necesita enabled: true para hacer algo; enabled: false o un bloque ausente es silencio.

Los jugadores con un cliente que lo soporte ven además un temporizador de cooldown del warmup, dibujado con la pechera de la clase como icono, o una brújula si la clase no pide pechera.

La cuenta atrás se envía antes de bajar

El primer mensaje sale un segundo después de ponerse la armadura y dice time, y la clase se activa un segundo después del mensaje que dice 1. Un warmup de time: 5 cae por tanto a los seis segundos, y el temporizador del cliente — puesto a exactamente time — se vacía un segundo antes.

Notación

Tres notaciones compactas recorren todos los archivos de clase. Las tres separan por |, así que una clave con espacio de nombres como minecraft:flame es segura.

Efectos — NOMBRE|NIVEL|SEGUNDOS

- SPEED|3          # Velocidad III, 10 segundos — la duración por defecto
- REGENERATION|2|5 # Regeneración II, 5 segundos
- INVISIBILITY|1|infinite

El nivel es el que lee un jugador: SPEED|2 es Velocidad II. Omite el nivel para I. Omite la duración para diez segundos. infinite o -1 significa que no caduca por su cuenta.

passive-effects y special-passives se aplican como infinitos digan lo que digan sus líneas, porque el plugin los retira él mismo cuando la clase se quita.

Una línea mal escrita se salta en vez de romper el archivo.

Sonidos — NOMBRE|VOLUMEN|TONO

type: "ENTITY_PLAYER_LEVELUP|1|1.5"

Ambos números son opcionales y valen 1 por defecto.

Partículas — NOMBRE|CANTIDAD|DX|DY|DZ|VELOCIDAD

type: "CRIT|60|0.6|0.6|0.6|1"
type: "FLAME|20|0.5"          # NOMBRE|CANTIDAD|DISPERSIÓN

La forma de seis campos da dispersión por eje. También se acepta la forma corta NOMBRE|CANTIDAD|DISPERSIÓN|VELOCIDAD.

Colores en los nombres

display-name, los nombres de habilidades y los colores de marca pasan por el módulo de texto de ExyliaLib, así que funcionan <#c8c8c8>, <bold>, los códigos & clásicos y los tokens de paleta como {primary}.

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