跳至主要内容

建立能力

webapp_banner.jpg

EliteMobs 腳本系統

以下頁面介紹了如何建立 Elite 腳本!

這是一項進階功能,需要對 EliteMobs 有深入的了解。

注意:Elite 腳本可以作為能力檔案添加,也可以添加到自訂 Boss 檔案中! 如果用作能力檔案,你可以像往常一樣使用自訂 Boss 的 powers 設定,將它們作為一般能力添加到 Boss 中。

添加 EliteScript

要開始向 Boss 添加 EliteScript,請在 Boss 檔案中添加以下條目:

eliteScript:

注意:以下內容對大小寫和空格極其敏感!請確保你的空格、換行符和整體格式與範例一致!

現在你已經宣告了腳本的開始,可以添加你的特定腳本了。在此範例中,我們將建立一個名為 Example 的腳本:

eliteScript:
Example:

EliteScripts 有 5 個不同的部分:EventsConditionsZonesActionsCooldowns。只有 Actions 是必要的。

讓我們看一個簡單的範例:

eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: PUSH
Target:
targetType: SELF
vValue: 0,0.5,0
Cooldowns:
local: 60
global: 20

此腳本使菁英怪在被玩家擊中時向上彈起,並且在 3 秒內不會再次觸發(由於 Cooldowns 部分的設定,其他能力也會在 1 秒內被阻止觸發)。

現在你已經了解了腳本結構的一般格式,是時候學習每個部分可以做什麼了!


Events

Events

點擊上方的連結了解如何使用事件!

Targets

Targets

點擊上方的連結了解如何使用目標!

Actions

Actions

點擊上方的連結了解如何使用動作!

Zones

Zones

點擊上方的連結了解如何使用區域!

Conditions

Conditions

點擊上方的連結了解如何使用條件!

Cooldowns

Cooldowns

點擊上方的連結了解如何使用冷卻時間!


添加多個 EliteScripts

你可以在一個事件上擁有多個動作,但如果你想在同一個 Boss 上擁有多個腳本呢?只需建立一個新的腳本條目即可!讓我們擴展前面的範例並添加另一個腳本:

eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: PUSH
Target:
targetType: SELF
vValue: 0,0.5,0
Cooldowns:
local: 60
global: 20
Example2:
Events:
- PlayerDamagedByEliteMobEvent
Actions:
- action: SET_ON_FIRE
Target:
targetType: DIRECT_TARGET
Cooldowns:
local: 200
global: 60

在這個範例中,我們添加了第二個名為 Example2 的腳本。Example2 會點燃被 Boss 傷害的玩家,這是因為 targetType 設定為 DIRECT_TARGET
此腳本的冷卻時間設定為 200 tick,這意味著 Boss 每 10 秒才能點燃玩家一次。

建立獨立能力

獨立能力幾乎完全由 Elite 腳本組成。只有兩個可選欄位。不要忘記,獨立能力必須放置在 ~plugins/EliteMobs/powers 資料夾中才能運作。
獨立能力範例:

isEnabled: true
powerType: UNIQUE
eliteScript:
Example:
Events:
- EliteMobDamagedByPlayerEvent
Actions:
- action: PUSH
Target:
targetType: SELF
vValue: 0,.3,0
Cooldowns:
local: 60
global: 20

isEnabled

與外掛程式其他地方一樣,設定能力是否啟用。

powerType

能力類型設定能力的分配方式。值為:

  • UNIQUE:能力僅套用於在能力部分設定了該能力的自訂 Boss。
  • DEFENSIVE / MISCELLANEOUS / OFFENSIVE:任何菁英怪都可以獲得這些能力,它們將計入特定的能力子集。
  • MAJOR_ZOMBIEMAJOR_SKELETONMAJOR_BLAZEMAJOR_ENDERMANMAJOR_GHAST:只有相應實體類型的菁英怪才能自然生成這些能力,它們將計為主要能力。

effect

設定能力使用的視覺效果或材質。這由一些硬編碼的能力用來定義其視覺粒子或材質效果。

預設值
effectStringnone

powerCooldown

設定單個能力的冷卻時間(以 tick 為單位)。這控制此特定能力觸發的頻率。

預設值
powerCooldownInteger0

globalCooldown

設定所有能力共用的全域冷卻時間(以 tick 為單位)。此能力觸發後,在全域冷卻時間到期之前,其他能力無法觸發。

預設值
globalCooldownInteger0