跳至主要内容

和平旗幟

和平旗幟是一個可合成的物品,玩家可以放置它來建立一個壓制菁英怪物的區域。放置後,和平旗幟會阻止其可設定的區塊半徑內的菁英怪物生成,並且還可以選擇性地壓制 EliteMobs 事件。

運作方式

  1. 合成: 玩家使用預設配方(或管理員設定的自訂配方)合成和平旗幟。預設配方需要骨頭環繞任意顏色的旗幟。
  2. 放置: 當玩家放置和平旗幟時,它會立即在周圍建立保護區域。預設保護半徑為旗幟所在區塊各方向 4 個區塊。
  3. 移除: 破壞和平旗幟方塊會移除保護區域,允許菁英怪物再次在該區域生成。
  4. 持久化: 已放置的和平旗幟會儲存到磁碟,在伺服器重啟後保留。當包含和平旗幟的區塊載入時,外掛程式會驗證旗幟方塊是否仍然存在,如果它已被其他方式摧毀,則會自動移除保護。

預設合成配方

BBB
BWB
BBB
  • B = 骨頭
  • W = 任意旗幟(接受全部 16 種旗幟顏色)

此配方會產生一面帶有自訂圖案、顯示名稱和說明的藍色旗幟,標識為和平旗幟。

設定

所有和平旗幟的設定都在 PeaceBanner.yml 中。完整參考請參閱設定頁面

設定預設值說明
enabledtrue是否啟用和平旗幟功能
craftabletrue玩家是否可以合成和平旗幟
chunkRadius4已放置旗幟周圍壓制菁英怪物的半徑(以區塊為單位)
suppressEventstrue已放置的旗幟是否同時壓制 EliteMobs 事件(行動事件和計時事件)
recipeShapeBBB / BWB / BBB合成格配置
recipeIngredientsB: BONE, W: ANY_BANNER將配方字元對應到材料
itemName&aPeace Banner和平旗幟物品的顯示名稱
itemLore(參見設定檔)物品上顯示的說明文字
placedMessage(參見設定檔)放置旗幟時發送的訊息
removedMessage(參見設定檔)破壞旗幟時發送的訊息

管理員指令

指令權限說明
/em peacebanner give <player>elitemobs.peacebanner.admin給予指定玩家一個和平旗幟物品
/em peacebanner listelitemobs.peacebanner.admin列出所有已放置的和平旗幟及其座標和區塊半徑

重疊旗幟

可以放置多個保護區域重疊的和平旗幟。系統使用引用計數,因此只要至少有一面旗幟覆蓋,區塊就會保持受保護狀態。移除單一旗幟只會取消未被其他旗幟覆蓋的區塊的保護。

技術細節

  • 和平旗幟通過持久化資料容器(PDC)標籤識別,而非外觀。普通旗幟不受影響。
  • 旗幟資料儲存在 plugins/EliteMobs/data/peace-banners.yml 中。
  • 當區塊載入時,外掛程式會檢查已儲存位置的旗幟方塊是否仍然存在。如果該方塊不再是旗幟(例如被爆炸或世界編輯摧毀),保護會自動移除。