我在做boss的时候想给boss带上盔甲架模型,腿部和手部走路时的运动都很好解决,但是对于近战的生物,我想把生物的攻击动作做出来,但是没有很好的办法检测近战生物近战,目前只想到检测周围受伤的玩家,但是这样不够精准,而且无法处理玩家用盾牌格挡的情况,所以我想知道有没有可以精准一点的检测近战生物攻击的办法

没啥很好的直接办法,但是可以通过检测附近生物血量变化量达到效果
如建三个记分板 H,health类型;LH,dummy,以及dH,dummy。
不断循环:
将dH设为LH
操作dH -= H
将LH设为H
这样就获得每tick玩家血量变化量了
然后直接攻击时检测附近玩家的分数dH小于0的就行
这样遇到格挡之类的不扣血的就不会有任何影响了
如建三个记分板 H,health类型;LH,dummy,以及dH,dummy。
不断循环:
将dH设为LH
操作dH -= H
将LH设为H
这样就获得每tick玩家血量变化量了
然后直接攻击时检测附近玩家的分数dH小于0的就行
这样遇到格挡之类的不扣血的就不会有任何影响了
本帖最后由 晴路卡 于 2020-12-4 22:41 编辑
进度:https://zhangshenxing.gitee.io/v ... _%E8%BF%9B%E5%BA%A6
minecraft:entity_hurt_player:https://minecraft-zh.gamepedia.c ... :entity_hurt_player
楼上那个伤害被阻挡了dH为什么会小于0呢
进度:https://zhangshenxing.gitee.io/v ... _%E8%BF%9B%E5%BA%A6
minecraft:entity_hurt_player:https://minecraft-zh.gamepedia.c ... :entity_hurt_player
楼上那个伤害被阻挡了dH为什么会小于0呢
可以试试这个思路:
boss先给个虚弱
检测该boss前方一定距离内(一个半圆)内是否有玩家,
如果有便开始给一个dummy计分板加分(循环命令方块)
当计分板数值到一定数值时,执行一下指令:
计分板归零
播放生物攻击动作
检测玩家是否在右键盾牌(不行的,可以用萝卜钓竿改材质)
如果有,播放盾牌格挡动画(可以用粒子效果什么的表示)
如果没有,在玩家头上生成指定伤害的箭矢
(如果你看得懂的话指令我暂时先不发了,
如果要指令请注明游戏版本)
boss先给个虚弱
检测该boss前方一定距离内(一个半圆)内是否有玩家,
如果有便开始给一个dummy计分板加分(循环命令方块)
当计分板数值到一定数值时,执行一下指令:
计分板归零
播放生物攻击动作
检测玩家是否在右键盾牌(不行的,可以用萝卜钓竿改材质)
如果有,播放盾牌格挡动画(可以用粒子效果什么的表示)
如果没有,在玩家头上生成指定伤害的箭矢
(如果你看得懂的话指令我暂时先不发了,
如果要指令请注明游戏版本)