unity之关于角色三连击

来源:互联网 发布:linux怎么查看ntp进程 编辑:程序博客网 时间:2024/06/10 05:53

      首先,我们要先研究下 他的动作关系这个角色的动作有idle attack1 attack2  attack3 jump  run   

      

         

 

       那么我们要使用  新动画系统的 Animator Controller 来进行 动画的连接创建一个  Animator Controller 把咱用到的动画 都拖进去  吧 idle 设为默认动画

       然后  咱就开始连连看吧 三连击击肯定是  idle--->attack1--->attack2--->attack3

       这个套路然后  这3个攻击到哪攻击一定时间不操作了  肯定 就会反回idle 状态

      所以需要这么连接

      

 

      连好后 我需要 拿脚本 来控制他们的切换  需要 一个变量  我们来建立一个attack int 变量 给那些线 添加这个变量   

      Idle 到 attack1   Int 值为 1

      attack1到 attack2   Int 值为 2

      Attack2到 attack3   Int 值为 3

      attack1  attack2  attack3  返回 idle    int 都为 0

      好了 这样 就可以拿这个变量控制啦

      下面开始 写脚本

      调用 动画  什么的就不说啦

      直接说重点  三连击 核心就是 拿时间判断 你在这段时间内让没让我做出下一个动作

      那么 怎么获取动画 时间之类的呢   

      我们可以用 animSta=anim.GetCurrentAnimatorStateInfo (0);  来获取动画信息,这样 就可以 用 它里面 的is name  判断 现在 哪个动画名下面, 用 normalizedTime

 

      来判断 动画 时间 剩下的 就是条件判断咯  

      代码如下:  

 

        

 

       


 

       

 

 

0 0
原创粉丝点击