[lightblue_wool]电路全图[lightblue_wool]

详情请下载存档自行观察
[lightblue_wool]scoreboard 预备项目[lightblue_wool]
system dummy 探测玩家是否手持“凋零剑”
usesword stat.useItem.minecraft.iron_sword 探测玩家是否使用过铁剑
chosen dummy 用于区分挨打的单位和没挨打的单位
使用scoreboard指令设置好这些分数
[purple_wool]核心思路[purple_wool]
超级复杂~QAQ
一下午的作品,所以坑就
等我面试之后再补啦~
[lightblue_wool]电路流程[lightblue_wool]
[purple_dye]首先依次激活下列指令,清空后给予玩家凋零剑并且[purple_dye]
将score_system设置为侧边栏显示,方便调试
- clear @a minecraft:iron_sword 1000 100 {display:{Name:"Poisoned Bone",Lore:["Come from an old","Cave Spider"]}}
复制代码- scoreboard objectives setdisplay sidebar system
复制代码- give @a minecraft:iron_sword 1 1000 {display:{Name:"Poisoned Bone",Lore:["Come from an old","Cave Spider"]}}
复制代码 [purple_dye]高频脉冲激活激活下面的命令,总共分为9个命令方块[purple_dye]
(因为玩家有九个hotbar)然后后面接或非门
图形可参见电路全图左侧部分。
这样玩家若手持凋零剑,则score_system=1
若不持凋零剑,则score_system=0或没有score_syste,
★应为0~9,每个命令方块选一个数字,总共九个
- /scoreboard players set @a system 1 {SelectedItemSlot:★,Inventory:[{Slot:★b,id:"minecraft:iron_sword",Damage:1000s,tag:{display:{Name:"Poisoned Bone",Lore:["Come from an old","Cave Spider"]}}}]}
复制代码 后接或非门接下列命令
- scoreboard players set @a system 0
复制代码 [purple_dye]另起一组命令方块,用高频脉冲激活下面的指令[purple_dye]
后接比较器输出接后续的一组指令。
也就是说,玩家若同时达成了:
1.至少使用了一次铁剑
2.手中拿的是铁剑
则会执行后续指令
- testfor @a[score_usesword_min=1,score_system_min=1]
复制代码 后面接比较器输出
[purple_dye]一旦输出之后,立即执行核心部分的指令[purple_dye]
为了防止一次攻击导致玩家周围的所有
生物都被标记上凋零效果,我们需要将
场上的生物作出分类。按顺序执行下列指令。
HurtTime标签可以判断当前生物是否被攻击
由于它不是true/false标签,我们需要采用
过滤默认值0s的方法来标记。
- scoreboard players set @e[type=!Player] chosen 1
复制代码- scoreboard players set @e[type=!Player] chosen 0 {HurtTime:0s}
复制代码 然后接effect指令
并且回收玩家的武器替换为新的。
重置玩家的score_usesword
- clear @a minecraft:iron_sword -1 100 {display:{Name:"Poisoned Bone",Lore:["Come from an old","Cave Spider"]}}
复制代码- give @a minecraft:iron_sword 1 1000 {display:{Name:"Poisoned Bone",Lore:["Come from an old","Cave Spider"]}}
复制代码- execute @a ~ ~ ~ effect @e[score_chosen_min=1,type=!Player,r=10] minecraft:wither 15 1
复制代码- scoreboard players set @a usesword 0
复制代码 [purple_dye]系统结束QAQ[purple_dye]
|