勇士传说3

11.受伤和死亡的逻辑和动画

注意:各种状态都可能直接切换到受伤动画

通过修改sprite renderer的颜色属性,实现受伤时的闪烁效果。
新建Hurt层,设为叠加层。注意:如果weight=0则该层无效果。
在这里插入图片描述
意思是在Base Layer层上叠加效果。
在这里插入图片描述
EXIT TIME是当前动画的百分比,设为1表示播放完100%的该动画后执行。

using UnityEngine.Events;使用unity事件,进行一系列受伤对应功能的处理。
在Character.csharp中定义了在这里插入图片描述
之后会对应显示在这里插入图片描述
在这里插入图片描述
可以让一个事件的发生产生多个结果。
off、Editor And Runtime或者Runtime Only。
off表示这个监听项目不会触发,
Editor And Runtime表示这个监听项目可以在编辑器下被触发,
Runtime Only表示这个监听项目只在游戏模式下被触发。
在这里插入图片描述

public void GetHurt(Transform attacker){ //向受伤反方向反弹
    isHurt = true;
    rb.velocity = Vector2.zero;
    Vector2 dir = new Vector2((transform.position.x - attacker.position.x), 0).normalized; //归一化

    rb.AddForce(dir * hurtForce, ForceMode2D.Impulse);
}

any state + 动画clip的loop勾选 会导致该动画一直执行。
any state + can transition to self 会导致动画卡住,其实应该是一直重复执行当前动画,所以一直卡在第一帧。
在这里插入图片描述

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值