Equipo

Armadura con modelos propios y capas de textura u overlays de modelo sobre el jugador.

Cada clave del bloque equipment apunta a la ruta de un .geo.json (relativa a la carpeta models/). Cuando el jugador equipa esa pieza de armadura, se renderiza esa geometría encima del modelo base.

Las piezas soportadas son: head, chest, legs, feet, cape y elytra.

yaml
equipment:
  head:   player_equipment/player_head.geo.json
  chest:  player_equipment/player_chest.geo.json
  legs:   player_equipment/player_legs.geo.json
  feet:   player_equipment/player_feet.geo.json
  cape:   player_equipment/player_cape.geo.json
  elytra: player_equipment/player_elytra.geo.json

Capas

Las capas son distintas del modelo convencional: se superponen visualmente encima del modelo base sin reemplazarlo. Hay dos tipos:

  • TEXTURE — aplica una imagen PNG sobre la geometría del modelo base.
  • model — renderiza otro modelo completo (que tenga is_layer: true) encima.
yaml Definición de capas en el modelo
layers:
  pompompurin:
    type: model
    model: pompompurin        # ID del modelo registrado con is_layer: true
    show_first_person: true
  test_layer:
    type: TEXTURE
    texture: player_layer.png # ruta relativa a textures/
    show_first_person: true
bash Activar y desactivar capas
# Activar la capa "pompompurin" del modelo "player" para Steve
/animorph layer player pompompurin Steve true

# Desactivar la capa
/animorph layer player pompompurin Steve false

Modelos de capa (is_layer: true)

Para usar un modelo completo como capa, regístralo con is_layer: true dentro de properties. Ese modelo no reemplaza al jugador, solo se superpone.

yaml plugins/Animorph/models/accesorio_model.yml
display_name: Mi Accesorio
texture: mi_accesorio.png
animation: mi_accesorio.animation.json
properties:
  is_layer: true

Texto dinámico en el modelo

Los modelos pueden tener cubos de texto que muestran información dinámica. Sus valores se definen en el YAML y se actualizan desde comandos o la API.

Definir placeholders en el modelo

En el YAML del modelo, bajo properties.texts, declara los placeholders con un valor por defecto. La clave (entre llaves) es el ID del placeholder; el valor es el texto inicial que se mostrará. Puedes usar placeholders de PlaceholderAPI como valor por defecto si está instalado.

yaml
properties:
  texts:
    '{health}': '%player_health%'
    '{name}': '%player_display_name%'
    '{level}': '%player_level%'

Actualizar el texto desde comandos

bash
# Cambiar el texto del placeholder {name} para Steve
/animorph text Steve {name} "AnimorphPro"

# Actualizar un placeholder para todos los jugadores
/animorph text @a {level} 99