我搞了一个带”?“的物品标签的铁头盔,怎么样才能检测哪个物品并给予防火效果
(游戏版本1.18.1,服务器)
(游戏版本1.18.1,服务器)
虽然我不知道你为啥要用问号做标签,还是个中文问号,但我大概照你的意思做了一下
防火头盔.zip
(1.48 KB, 下载次数: 3)
把这个压缩包扔进存档的datapacks文件夹,重启游戏,然后用/give @s iron_helmet{wupinbiaoqian:"?"}就能得到这样一个头盔了,如果你不是原版服务器的话还得把/give写成/minecraft:give
当然你也可以不用数据包,用/execute高频执行达到同样的效果,但那样的性能开销更大一些(不过也大不了多少了)
当然你也可以不用数据包,用/execute高频执行达到同样的效果,但那样的性能开销更大一些(不过也大不了多少了)
本帖最后由 尸先peng 于 2022-3-13 18:22 编辑
/execute as @e[nbt={Inventory:[{id:"minecraft:iron_helmet",tag:{Tags:["?"]},Slot:103b}]}] at @s run effect give @s minecraft:fire_resistance 1 1 true
尸先peng 发表于 2022-3-12 19:38
/execute as @e[nbt={Inventory:[{id:"minecraft:iron_helmet",Slot:103b}]}] at @s run effe ...
可以解释一下这个命令吗(
本帖最后由 尸先peng 于 2022-3-13 18:22 编辑
/execute as @e[nbt={Inventory:[{id:"minecraft:iron_helmet",tag:{Tags:["?"]},Slot:103b}]}] at @s run effect give @s minecraft:fire_resistance 1 1 true
/检测 如果存在 任何实体[数据为“背包内有一个id为铁头盔,有一个名称为"?"的标签,且在装备在头上] 则在该实体上 执行 效果给予 当前实体 防火 1秒 1级 关闭粒子效果:开启
/execute as @e[nbt={Inventory:[{id:"minecraft:iron_helmet",tag:{Tags:["?"]},Slot:103b}]}] at @s run effect give @s minecraft:fire_resistance 1 1 true
/检测 如果存在 任何实体[数据为“背包内有一个id为铁头盔,有一个名称为"?"的标签,且在装备在头上] 则在该实体上 执行 效果给予 当前实体 防火 1秒 1级 关闭粒子效果:开启
尸先peng 发表于 2022-3-13 18:12
/execute as @e[nbt={Inventory:[{id:"minecraft:iron_helmet",tag:{Tags:["?"]},Slot:103b}]}] at @s run ...
装备在其他地方的要怎么搞
尸先peng 发表于 2022-3-13 19:11
修改Slot后面的数值,现在103是头部,改为别的数就会检测对应的格子了
对应图:
你这图片加载不了啊(
尸先peng 发表于 2022-3-13 20:56
等一下,我换个图床
可以改成全部格子都能用的吗(

