本帖最后由 A55778866579 于 2022-7-28 15:03 编辑
复制代码
复制代码
版本:1.14.4
本来想做类似技能的效果,但是用了循环命令方块无法达到效果,求帮助
技能就是,当玩家把手中的玩家头颅切换到副手时,给予玩家速度效果20s
另外,我想问一下除了记分板还有别的方式达到技能冷却的效果吗?请尽量给详细示例
这是学习,不丢人
已解决
解决方法:
将指令改为:
复制代码复制代码
- /give @p minecraft:player_head{SkullOwner:{Id:5601632b-ea1a-55b3-bd39-1883f4a87057,Properties:{textures:[{Value:"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvM2MzMGRmOGQ1ZGVjZTM3MWI5YmQ3NzZlNDUyYjBlYWIxY2FiNmU4ZDYxMmNjZjE1MjFiN2I2NGE4MmI5NjJmIn19fQ=="}]}},display:{Lore:["{"text":"战鹰在风中鸣叫,它在守望着我(获得速度buff,持续20s)"}"],Name:"[{"text":"鹰之道","color":"gold","bold":false,"italic":false,"underlined":false,"strikethrough":false,"obfuscated":false}]"},Tags:["Adler"]}
- /execute as @a[nbt={Inventory:[{id:"minecraft:player_head",Slot:-106b,tag:["Adler"]}]}] run effect give @a minecraft:speed 20
本来想做类似技能的效果,但是用了循环命令方块无法达到效果,求帮助
技能就是,当玩家把手中的玩家头颅切换到副手时,给予玩家速度效果20s
另外,我想问一下除了记分板还有别的方式达到技能冷却的效果吗?请尽量给详细示例
已解决
解决方法:
将指令改为:
- /give @p minecraft:player_head{SkullOwner:{Id:5601632b-ea1a-55b3-bd39-1883f4a87057,Properties:{textures:[{Value:"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvM2MzMGRmOGQ1ZGVjZTM3MWI5YmQ3NzZlNDUyYjBlYWIxY2FiNmU4ZDYxMmNjZjE1MjFiN2I2NGE4MmI5NjJmIn19fQ=="}]}},display:{Lore:["{"text":"战鹰在风中鸣叫,它在守望着我(获得速度buff,持续20s)"}"],Name:"[{"text":"鹰之道","color":"gold","bold":false,"italic":false,"underlined":false,"strikethrough":false,"obfuscated":false}]"},Adler:1}
- /execute as @a[nbt={Inventory:[{id:"minecraft:player_head",Slot:-106b,tag:{Adler:1}}]}] run effect give @a minecraft:speed 20
本帖最后由 Muggle2077 于 2022-7-28 15:57 编辑
给予副手持题给头颅的玩家20秒的速度效果。
effect give @a[nbt={Inventory:[{Slot:-106b,tag:{Tags:["Adler"]}}]}] minecraft:speed 20 0
计时
利用药水云的 Age。
生成一个药水云:summon area_effect_cloud ~ ~ ~ {Age:400,Tags:["foo"]}
此药水云会在 20 秒后消失。通过检测该药水云是否存在来判断冷却是否已经完成。
execute unless entity @e[type=area_effect_cloud,tag=foo] run tellraw @a "冷却已经完成"
用 schedule 命令。
例如,20秒后运行函数 foo:bar。
schedule function foo:bar 20s
给予副手持题给头颅的玩家20秒的速度效果。
effect give @a[nbt={Inventory:[{Slot:-106b,tag:{Tags:["Adler"]}}]}] minecraft:speed 20 0
计时
利用药水云的 Age。
生成一个药水云:summon area_effect_cloud ~ ~ ~ {Age:400,Tags:["foo"]}
此药水云会在 20 秒后消失。通过检测该药水云是否存在来判断冷却是否已经完成。
execute unless entity @e[type=area_effect_cloud,tag=foo] run tellraw @a "冷却已经完成"
用 schedule 命令。
例如,20秒后运行函数 foo:bar。
schedule function foo:bar 20s