弓箭的箭矢更新了几个新的箭,附带药水效果,这让弓箭的功能有了很大的施展。
创造模式里只有几个状态效果的箭,然而其他的状态效果其实是存在的,需要通过NBT修改:
CustomPotionEffects: 是一个列表,可以包含多种状态效果。
一个状态效果拥有以下标签:
Id: 状态效果的id,参考http://minecraft-zh.gamepedia.co ... 1%E6%95%88%E6%9E%9C;
Amplifier: 状态效果的等级;
Duration: 持续时间;
Ambient: 隐藏效果。
复制代码这个弓箭的效果是等级999999,持续999999的凋零效果。
那么苦力怕会一直受到凋零持续999999,直到死亡。
效果也可以是增益效果,比如生命增加:
复制代码这个弓箭的效果是等级10,持续999999的生命增加效果。
复制代码就是一个等级10,时间999999,隐藏效果的防火效果
可以看到我射了苦力怕一脸后,我的分数变成1,苦力怕变成2。
做到这个,只需要两个指令:
原理
复制代码给拥有状态的实体计分版设为1
复制代码既然被射了,那么箭的持有者就是攻击者。
首先须要给一个拥有指定效果的箭。
复制代码(这边的效果是急迫,其实并没有什么卵用)
来自群组: Command Block Logic
NBT
创造模式里只有几个状态效果的箭,然而其他的状态效果其实是存在的,需要通过NBT修改:
CustomPotionEffects: 是一个列表,可以包含多种状态效果。
一个状态效果拥有以下标签:
Id: 状态效果的id,参考http://minecraft-zh.gamepedia.co ... 1%E6%95%88%E6%9E%9C;
Amplifier: 状态效果的等级;
Duration: 持续时间;
Ambient: 隐藏效果。
- /give @p minecraft:tipped_arrow 1 0 {CustomPotionEffects:[{Id:20,Amplifier:999999,Duration:999999}]}
那么苦力怕会一直受到凋零持续999999,直到死亡。
效果也可以是增益效果,比如生命增加:
- /give @p minecraft:tipped_arrow 1 0 {CustomPotionEffects:[{Id:21,Amplifier:10,Duration:999999}]}
- /give @p minecraft:tipped_arrow 1 0 {CustomPotionEffects:[{Id:12,Amplifier:10,Duration:999999,Ambient:1}]}
判定弓箭的攻击者和被攻击者
可以看到我射了苦力怕一脸后,我的分数变成1,苦力怕变成2。
做到这个,只需要两个指令:
原理
- /scoreboard players set @e beShot 1 {ActiveEffects:[{Id:3b,Amplifier:0b}]}
- /execute @e[score_beShot_min=1] ~ ~ ~ /scoreboard players set @p beShot 2
首先须要给一个拥有指定效果的箭。
- /give @p minecraft:tipped_arrow 1 0 {CustomPotionEffects:[{Id:3,Amplifier:0}]}
来自群组: Command Block Logic
能解释一下,这段代码是什么意思吗?minecraft:tipped_arrow 1 0