MINECRAFT數(shù)據(jù)包-進(jìn)度[攻擊檢測(cè)篇]
注意!在學(xué)習(xí)本章內(nèi)容前,最好需要了解wiki中進(jìn)度的有關(guān)內(nèi)容
上一章我們討論了如何使用進(jìn)度來實(shí)現(xiàn)自定義NBT合成。
本章,我們將討論進(jìn)度中的?攻擊檢測(cè)?相關(guān)內(nèi)容。
下面是一個(gè)實(shí)例:
制作 [雷神之怒] 技能
技能要求如下:
1.使用有特定標(biāo)簽的鉆石斧攻擊觸發(fā)(限主手)
2.攻擊后在3格內(nèi)最近的玩家處召喚閃電。
顯然,完成這個(gè)技能最大的難點(diǎn)在于 [攻擊檢測(cè)]
在以往的方法中,通常會(huì)采用一個(gè)計(jì)分項(xiàng):minecraft.custom:minecraft.damage_dealt
這樣的方法唯一的缺點(diǎn)是: 需要循環(huán)執(zhí)行檢測(cè),這樣便會(huì)浪費(fèi)性能
但是,進(jìn)度中有一個(gè)觸發(fā)器:minecraft:player_hurt_entity

我們知道,進(jìn)度是不需要循環(huán)檢測(cè)的,這樣便可以優(yōu)化我們的數(shù)據(jù)包性能。
(當(dāng)然你想用傷害計(jì)分板我也沒話說)
現(xiàn)在我們開始編輯這個(gè)數(shù)據(jù)包。
在data/test/advancements/目錄下新建進(jìn)度文件axe_damage.json

接下來,我們將開始編輯進(jìn)度文件。
在創(chuàng)建好的文件中寫入以下內(nèi)容:
這樣,我們就完成了進(jìn)度的編輯
接下來,我們需要編輯進(jìn)度達(dá)成后所執(zhí)行的函數(shù)。
在data/test/functions/lightning/目錄下新建summon.mcfunction文件
?這便是進(jìn)度文件中"rewards"下function對(duì)應(yīng)的函數(shù)
在函數(shù)文件中寫入以下內(nèi)容:
這樣,我們就完成了函數(shù)部分的編輯
最后,你可以參考上期的?進(jìn)度與合成配方?教學(xué)給特殊標(biāo)簽的斧頭加上特殊合成。
其中,物品給予部分如下
如果覺得對(duì)你有幫助的話,可以點(diǎn)個(gè)贊哦qwq (球球拉)
標(biāo)簽: