События Elite Script
EliteScripts основаны на событиях. Это означает, что они запускаются при срабатывании определенного события. Ниже приведены текущие допустимые события:
| Событие | Детали | Прямая Цель [?] |
|---|---|---|
| EliteMobDamagedByEliteMobEvent | Элита повредил другой элита | ❌ |
| EliteMobDamagedByPlayerEvent | Элита повредил игрок | Наносящий урон игрок |
| EliteMobDamagedEvent | Элита повреждён чем-либо | ❌ |
| EliteMobDeathEvent | Смерть элиты | ❌ |
| EliteMobEnterCombatEvent | Элита вступает в бой с игроком | Вступающий в бой игрок |
| EliteMobExitCombatEvent | Элита выходит из боя | ❌ |
| EliteMobHealEvent | Элита исцеляется (включая полное исцеление) | ❌ |
| EliteMobSpawnEvent | Спавн элиты | ❌ |
| EliteMobTargetPlayerEvent | Элита нацеливается на игрока | Целевой игрок |
| PlayerDamagedByEliteMobEvent | Элита наносит урон игроку | Повреждённый игрок |
| ElitePhaseSwitchEvent | Босс появляется при смене фазы | ❌ |
| ZoneEnterEvent (ScriptZoneEnterEvent) | Сущность входит в зону. Требуется установленная зона! | Сущность, которая вошла в зону |
| ZoneLeaveEvent (ScriptZoneLeaveEvent) | Сущность покидает зону. Требуется установленная зона! | Сущность, которая покинула зону |
Примечание: "Элита" относится к любой агрессивной сущности, созданной плагином, независимо от того, является ли она подкреплением, боссом или чем-то другим. Примечание: ZoneEnterEvent и ZoneLeaveEvent вычислительно затратны, поэтому используйте их умеренно!
Прямая Цель используется Script Targets, подробнее об этом здесь.
Примечание: EliteMobDamagedEvent срабатывает, когда элита получает урон от ЛЮБОГО источника, в то время как EliteMobDamagedByPlayerEvent и EliteMobDamagedByEliteMobEvent являются более конкретными версиями, которые срабатывают только при уроне от игрока или моба элиты соответственно.
ZoneEnterEvent и ZoneLeaveEvent - это специальные события, которые позволяют скриптерам запускать действия на основе входа и выхода сущностей из зон, установленных в скриптах. DIRECT_TARGET ZoneEnterEvent и ZoneLeaveEvent - это сущность, которая вошла или вышла (это означает, что вы не можете использовать прямую цель в качестве цели зоны), и из-за того, как работает внутренняя логика, только абсолютные точки (конкретные координаты) и точки относительно босса могут использоваться для сканирования входов и выходов (нельзя использовать зоны, нацеленные на игроков).
В скрипте может быть только один раздел Event. Однако несколько событий могут быть установлены в качестве триггеров для скрипта:
Пример
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
- EliteMobTargetPlayerEvent
Actions:
- action: PUSH
Target:
targetType: SELF
vValue: 0,.3,0
Cooldowns:
local: 60
global: 20
Этот скрипт заставил бы элиту прыгнуть при ударе игроком или при нацеливании на игрока.