• UE4 回合游戏项目 10- 添加怪物死亡动画


    在上一节(UE4 回合游戏项目 09- 添加人物属性值)基础上添加怪物死亡动画

    效果:

    步骤:

    1.打开gameMode1,在事件图表中的延迟节点后新增一个应用伤害节点

     Damaged Actor表示谁受伤害,这里指定为选中的敌人

     Base Damage表示伤害数值是多少,这里指定为玩家的物理伤害

    那么如何判断敌人是否真正受到伤害呢

    2.打开roleCategory(敌人和玩家的共同父类),添加一个事件任意伤害节点,表示受到任何伤害都会触发该节点

     添加如下节点,表示判断当前生命值-受到的伤害值是否<=0

     添加一个变量,表示是否死亡:

     如果分支为True,设置死亡变量为真

     如果没有死亡,就把当前生命值减去这个伤害值

     如果嫌上面的太复杂,可改用下面的节点,效果一样

    接下来创建死亡动画

    3.打开enemy1_AnimBP

     添加一个自定义事件,命名为死亡

     死亡了就要播放一个动画,播放的动画就叫做动画蒙太奇

    4.找到Death这个动画

    复制一份命名为Death_2 

     

     5.双击打开Death_2 ,将时间轴大致调整到这个位置

     点击鼠标右键,在结尾处附加

     附加100帧

     然后删除0-65帧,这样就只有怪物倒在地上不动的动画了

    6.添加动画蒙太奇

    右键点击Death 创建-》创建动画蒙太奇

     将Death_2拖至Death后面

    此时将Death和Death_2动画合成为一个,但是还是会一直循环播放两段动画

    7.在Death和Death_2之间右键点击新建蒙太奇片段

     随便命名为1

     点击1

     然后再点标注区域

     可以看到标注区域变为蓝色,蓝色表示一直循环播放蓝色区域

     效果如下:

    为了让动画图表播放当前蒙太奇的动画,还需添加slot

    8.打开enemy1_AnimBP

     添加一个slot节点

    插槽的命名为:

     与如下动画蒙太奇中标注区域保持一致

     (对应的插槽播放对应的蒙太奇动画)

    9.返回enemy1_AnimBP中的事件图表,在死亡后添加事件

     然后添加蒙太奇播放节点

     这样只要一执行死亡事件,就会一直播放蒙太奇。

    10.回到roleCategory的事件图表,当角色生命值归0,就会触发死亡事件,如下图,先添加一个死亡事件,然后当死亡这个变量为True时调用死亡事件

     11.打开enemy1这个roleCategory的子蓝图类的事件图表,如下图添加一个死亡事件,这样一旦父蓝图调用了死亡事件,enemy1这个子蓝图就会触发下图中的死亡事件节点

     添加如下节点:主要思想就是先获取enemy1的动画蓝图,通过类型转换为enemy1_AnimBP这个节点的输出获取enemy1_AnimBP这个变量,然后当死亡事件执行时,就会调用死亡这个自定义事件

     最后别忘了,在play1中设置角色的属性值

     运行游戏效果如下:

    但是此时如果点击倒下的敌人,玩家还是会走过去

    因此还需在gameMode1中判断enemy是否死亡,如果没有死亡才可以继续攻击

     

    还有一个问题,当点击了战斗按钮后,如果玩家想通过点击鼠标右键再次调出UI界面该怎么做?

    在playercontrol中增加对鼠标右键的响应(一般playercontrol用来增加鼠标键盘的响应事件)

     然后还需在gameMode1中添加鼠标右键的自定义事件

     在gameMode1中调用右键点击事件

     在gameMode1中继续添加如下节点,主要思想是当点击鼠标右键后判断当前菜单枚举值是否为菜单,如果不是就设置为菜单,然后显示UI

    ​​​​​​​

  • 相关阅读:
    什么是顶级域名?如何获得顶级域名解析方案
    2022.11.7 英语背诵
    [附源码]java毕业设计超市收银系统论文
    【测开方法论】学习后如何举一反三
    Java学习笔记3.5.3 继承 - super关键字
    Java native 关键字
    写给Python社群的第7课:用 Python 模块了不起呀?就是了不起
    构造方法
    易基因|病毒抗性:全基因组DNA甲基化揭示草鱼年龄相关病毒易感性的表观遗传机制
    数据结构与算法
  • 原文地址:https://blog.csdn.net/ChaoChao66666/article/details/127694788