Eventos de Elite Script
Los EliteScripts están basados en eventos. Esto significa que se ejecutan cuando se activa un evento específico. Los siguientes son los eventos actualmente válidos:
| Evento | Detalles | Objetivo Directo [?] |
|---|---|---|
| EliteMobDamagedByEliteMobEvent | Elite dañada por otra elite | ❌ |
| EliteMobDamagedByPlayerEvent | Elite dañada por un jugador | Jugador atacante |
| EliteMobDamagedEvent | Elite dañada por cualquier cosa | ❌ |
| EliteMobDeathEvent | Muerte de la elite | ❌ |
| EliteMobEnterCombatEvent | Elite entra en combate con jugador | Jugador en combate |
| EliteMobExitCombatEvent | Elite sale del combate | ❌ |
| EliteMobHealEvent | Curación de la elite (incluyendo curación completa) | ❌ |
| EliteMobSpawnEvent | Aparición de la elite | ❌ |
| EliteMobTargetPlayerEvent | Elite selecciona un jugador como objetivo | Jugador seleccionado |
| PlayerDamagedByEliteMobEvent | Elite daña a un jugador | Jugador dañado |
| ElitePhaseSwitchEvent | Boss aparece por cambio de fase | ❌ |
| ZoneEnterEvent (ScriptZoneEnterEvent) | Una entidad entra en la zona. ¡Requiere que se establezca una zona! | Entidad que entró en la zona |
| ZoneLeaveEvent (ScriptZoneLeaveEvent) | Una entidad sale de la zona. ¡Requiere que se establezca una zona! | Entidad que salió de la zona |
Nota: "Elite" se refiere a cualquier entidad agresiva generada por el plugin, sin importar si es un refuerzo, un jefe o cualquier otra cosa. Nota: ZoneEnterEvent y ZoneLeaveEvent son computacionalmente costosos, ¡por favor úsalos con moderación!
Direct Target es utilizado por los Objetivos de Script, más información al respecto aquí.
Nota: EliteMobDamagedEvent se activa cuando una elite recibe daño de CUALQUIER fuente, mientras que EliteMobDamagedByPlayerEvent y EliteMobDamagedByEliteMobEvent son versiones más específicas que se activan solo por daño de jugadores o mobs elite respectivamente.
ZoneEnterEvent y ZoneLeaveEvent son eventos especiales que permiten a los creadores de scripts activar acciones basadas en entidades que entran y salen de zonas definidas en scripts. El DIRECT_TARGET de ZoneEnterEvent y ZoneLeaveEvent es la entidad que entró o salió (esto significa que no puedes usar el objetivo directo como objetivo de la zona), y debido a cómo funciona la lógica interna, solo se pueden usar puntos absolutos (coordenadas específicas) y puntos relativos al jefe para escanear entradas y salidas (no se pueden usar zonas que apunten a jugadores).
Solo puede haber una sección de Evento por script. Sin embargo, se pueden establecer varios eventos como activadores de un script:
Ejemplo
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
- EliteMobTargetPlayerEvent
Actions:
- action: PUSH
Target:
targetType: SELF
vValue: 0,.3,0
Cooldowns:
local: 60
global: 20
Este script haría que la elite salte cuando es golpeada por un jugador o cuando selecciona a un jugador como objetivo.