public void OnNormalAttackClick()
{
if (animator.GetCurrentAnimatorStateInfo(0).IsName("PlayerAttackA") && isCanAttackB)
{
animator.SetTrigger("AttackB");
}
if (!animator.GetCurrentAnimatorStateInfo(0).IsName("PlayerAttackA"))
{
animator.SetTrigger("AttackA");
}
}
在这个点击事件里,我双击,就会触发两次AttackA
点一下再慢点一下触发AttackB是正常的,因为在时间区间才触发AttackB
我想让快速双击只触发一次AttackA,等攻击完毕后按下再出发AttackA
所以我判断了当动画播放时按下攻击按钮不触发AttackA
可是运行的时候双击还是会触发两次第一段普通攻击
是因为我点第二次的时候还没转换到攻击动画吗
请问老师该怎么去掉这个延时
虽然可以设置个定时器来控制间隔时间后才能触发,但是不想用这个方法
在这里定义一个枚举类型,判断下当前的状态,如果是normal就settrigger到attakca,并且修改枚举类型的状态,这样下次点击的时候就不处理了,在动画的末尾添加一个event,复位枚举状态