Configuración de Condiciones
Aprende a condicionar la activación de habilidades, invertir evaluaciones con inverse, añadir mensajes informativos y comprobar víctimas.
Configuración de Condiciones (Conditions)
Las Conditions son validaciones lógicas que deben cumplirse estrictamente para que una habilidad pueda activarse. Te permiten restringir efectos según salud, mundo, biomas, permisos, distancias o variables personalizadas de Minecraft.
Esta guía cubre el uso del modificador universal inverse, líneas descriptivas en el lore del ítem (not-met-lines), efectos automáticos de fallo (not-met-effects) y comprobación de estados en el objetivo atacado (victim_conditions).
Estructura Básica de una Condición
Cada condición consta de un identificador id y sus argumentos correspondientes en args::
conditions:
- id: health_below
args:
percentage: 25.0 # Solo se cumple si el usuario tiene menos del 25% de su salud máximaEl Modificador Universal inverse
Todas las condiciones del motor aceptan el argumento opcional inverse: true. Este parámetro invierte la lógica del validador, haciéndolo válido únicamente cuando la regla original es falsa.
Ejemplo: Evitar activación si el objetivo es inmune al fuego
conditions:
- id: has_potion_effect
args:
effect: FIRE_RESISTANCE
inverse: true # Se cumple solo si la víctima NO posee resistencia al fuegoEjemplo: Solo en tierra firme
conditions:
- id: in_water
args:
inverse: true # Solo se activa si el jugador NO está sumergido en aguaLíneas de Requisito en el Lore (not-met-lines)
En ítems personalizados y encantamientos, puedes añadir líneas en color rojo que se incrustarán automáticamente en el lore del ítem cuando el jugador no cumpla las condiciones requeridas para blandirlo:
conditions:
- id: has_permission
args:
permission: "zenforge.mastery.paladin"
not-met-lines: # Aparece en el lore si el usuario carece del rango o maestría
- "<red>✖ Requiere Maestría Paladín para empuñar esta reliquia"
- "<dark_gray>Completa las misiones sagradas en el coliseo"Efectos al Fallar Requisitos (not-met-effects)
Si colocas una condición dentro de un efecto específico (dentro de su sección conditions: interna), puedes definir not-met-effects. Estas acciones se ejecutarán cuando el jugador intente disparar el efecto pero no cumpla la condición requerida:
effects:
- id: launch_projectile
args:
projectile: WITHER_SKULL
speed: 1.8
conditions:
- id: is_sneaking
args:
inverted: false # Requiere que el jugador esté agachado para canalizar el disparo
not-met-effects: # Se ejecuta si el jugador intenta disparar de pie
- id: send_action_bar
args:
message: "<yellow>⚠ Debes agacharte para concentrar la energía de la calavera."
- id: sound
args:
sound: BLOCK_BEACON_DEACTIVATE
volume: 0.6
pitch: 1.8
triggers:
- right_clickEn este caso, los jugadores agachados disparan el proyectil con éxito, mientras que los jugadores que hacen clic de pie reciben una advertencia en la Action Bar junto con un sonido de descarga mágica.
Comprobar Estados en la Víctima (victim_conditions)
Cuando un evento involucra combate (como melee_attack, arrow_hit o projectile_damage), puedes evaluar requisitos no solo en el atacante, sino directamente en la entidad defensora o víctima.
Para evaluar condiciones en el enemigo, se utiliza el filtro especial victim_conditions:
effects:
# Inflige daño perforante directo
- id: true_damage
args:
amount: 8.0 # Ignora mitigaciones de armadura
# Comprueba condiciones en el enemigo receptor del golpe
filters:
victim_conditions:
- id: entity_type
args:
types:
- ENDER_DRAGON
- WITHER
- WARDEN
# Comprueba condiciones en el jugador atacante
conditions:
- id: holding_item
args:
material: NETHERITE_SWORD
triggers:
- melee_attackEn este ejemplo, el arma inflige 8 puntos de daño puro e inderrotable únicamente si el enemigo al que se ataca es un jefe mayor (Ender Dragon, Wither o Warden) y el portador empuña una espada de netherite.
Enlaces Relacionados
¿Te resultó útil esta página?
Tus respuestas nos ayudan a perfeccionar la wiki de ZenForge.
Configuración de Efectos
Aprende a estructurar efectos, diferenciar entre disparados y permanentes, y dominar argumentos opcionales como cooldowns, repeticiones y precios.
Configuración de Cadenas (Chains)
Aprende a agrupar múltiples efectos en cadenas reutilizables o inline, y a dominar los modos de ejecución normal, cycle y random con pesos.