Elite Script 事件
EliteScripts是基於事件的。這意味著它們在特定事件觸發時啟動。以下是目前有效的事件:
| 事件 | 詳情 | 直接目標 [?] |
|---|---|---|
| EliteMobDamagedByEliteMobEvent | 精英被另一個精英傷害 | ❌ |
| EliteMobDamagedByPlayerEvent | 精英被玩家傷害 | 造成傷害的玩家 |
| EliteMobDamagedEvent | 精英被任何東西傷害 | ❌ |
| EliteMobDeathEvent | 精英死亡 | ❌ |
| EliteMobEnterCombatEvent | 精英與玩家進入戰鬥 | 交戰玩家 |
| EliteMobExitCombatEvent | 精英退出戰鬥 | ❌ |
| EliteMobHealEvent | 精英治療(包括完全治療) | ❌ |
| EliteMobSpawnEvent | 精英生成 | ❌ |
| EliteMobTargetPlayerEvent | 精英瞄準玩家 | 目標玩家 |
| PlayerDamagedByEliteMobEvent | 精英傷害玩家 | 受傷玩家 |
| ElitePhaseSwitchEvent | Boss從階段切換生成 | ❌ |
| ZoneEnterEvent (ScriptZoneEnterEvent) | 實體進入區域。需要設置區域! | 進入區域的實體 |
| ZoneLeaveEvent (ScriptZoneLeaveEvent) | 實體離開區域。需要設置區域! | 離開區域的實體 |
注意:"精英"指的是插件生成的任何攻擊性實體,無論它們是增援、Boss還是其他任何東西。 注意:ZoneEnterEvent和ZoneLeaveEvent在計算上是昂貴的,請謹慎使用!
直接目標被腳本目標使用,更多資訊請參閱此處。
注意:EliteMobDamagedEvent在精英受到任何來源的傷害時觸發,而EliteMobDamagedByPlayerEvent和EliteMobDamagedByEliteMobEvent是更具體的版本,分別僅在玩家或精英生物傷害時觸發。
ZoneEnterEvent和ZoneLeaveEvent是特殊事件,允許腳本製作者根據實體進入和離開腳本中設置的區域來觸發動作。ZoneEnterEvent和ZoneLeaveEvent的DIRECT_TARGET是進入或離開的實體(這意味著您不能將直接目標用作區域的目標),並且由於內部邏輯的工作方式,只有絕對點(特定座標)和相對於Boss的點可以用於掃描進入和離開(不能使用瞄準玩家的區域)。
每個腳本只能有一個事件部分。但是,可以將多個事件設置為腳本的觸發器:
範例
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
- EliteMobTargetPlayerEvent
Actions:
- action: PUSH
Target:
targetType: SELF
vValue: 0,.3,0
Cooldowns:
local: 60
global: 20
這個腳本會在被玩家擊中或瞄準玩家時讓精英跳躍。