尝试了用下落的方块
一来是方块必须落地才能造成伤害 落地之后又变成方块 非常麻烦
二来是需要前摇 还要坠落一会才能落地造成伤害
还试过用瞬间伤害药水的效果
之前都是用这个办法 但是伤害貌似只能是4的倍数 也很不方便
求一个可以瞬间造成伤害的指令组 感谢
一来是方块必须落地才能造成伤害 落地之后又变成方块 非常麻烦
二来是需要前摇 还要坠落一会才能落地造成伤害
还试过用瞬间伤害药水的效果
之前都是用这个办法 但是伤害貌似只能是4的倍数 也很不方便
求一个可以瞬间造成伤害的指令组 感谢
本帖最后由 Dahesor 于 2021-9-21 03:46 编辑
如果是对非玩家,有需要精确定控制生命值,可以直接用/data修改nbt。
玩家的话就很麻烦,不如直接使用虚拟生命值。
要伤害发红特效可以用雪球砸一下(或者,HurtTime?没试过不知道有没有用)
会用/data么?就默认你会了,不过还是附教程:修改NBT/data
如果是对非玩家,有需要精确定控制生命值,可以直接用/data修改nbt。
玩家的话就很麻烦,不如直接使用虚拟生命值。
要伤害发红特效可以用雪球砸一下(或者,HurtTime?没试过不知道有没有用)
会用/data么?就默认你会了,不过还是附教程:修改NBT/data
如果是非玩家,就采用楼上的办法,用data来更改实体的生命值
实例是/data modify entity @e[type=zombie,limit=1,sort=nearest] Health set value 1s
这个是把最近的僵尸的生命值改成1,你可以用execute 里的store来调节分数与生命值的关系
如果是玩家的话,就采用瞬间伤害和瞬间治疗配合使用,因为瞬间伤害的伤害是比瞬间治疗高一点点的(1级是6和4)
实例是/data modify entity @e[type=zombie,limit=1,sort=nearest] Health set value 1s
这个是把最近的僵尸的生命值改成1,你可以用execute 里的store来调节分数与生命值的关系
如果是玩家的话,就采用瞬间伤害和瞬间治疗配合使用,因为瞬间伤害的伤害是比瞬间治疗高一点点的(1级是6和4)
本帖最后由 Chelover_C60 于 2021-9-21 12:00 编辑
实际上对非玩家实体造成指定伤害最常用的不是/data而是记分板
先建立一个准则为dummy的记分板,然后获取自身血量。一般为了保证精度会作适当放大。此处放大1000倍
复制代码然后减去分数。比如要造成1点伤害,则将分数减去1000(注意造成的伤害也要放大对应倍数)
复制代码最后将分数存回nbt,并缩小一定倍数
复制代码
对于玩家的处理则相对麻烦
这里找了个链接,帖子本身和后面的回复讨论都可以看看
虽然是讨论恢复血量的,但对造成伤害的思路比较类似
https://www.mcbbs.net/thread-943616-1-1.html
12:00
找到了一个现成的数据包,可供参考
https://www.mcbbs.net/thread-1181242-1-1.html
实际上对非玩家实体造成指定伤害最常用的不是/data而是记分板
先建立一个准则为dummy的记分板,然后获取自身血量。一般为了保证精度会作适当放大。此处放大1000倍
- execute as 实体 store result score @s 记分板 run data get entity @s Health 1000
- scoreboard players remove 实体 记分板 1000
- execute as 实体 store result entity @s Health float 0.001 run scoreboard players get @s 记分板
对于玩家的处理则相对麻烦
这里找了个链接,帖子本身和后面的回复讨论都可以看看
虽然是讨论恢复血量的,但对造成伤害的思路比较类似
https://www.mcbbs.net/thread-943616-1-1.html
12:00
找到了一个现成的数据包,可供参考
https://www.mcbbs.net/thread-1181242-1-1.html