这一次完成的是角色的攻击,我所使用的攻击动画是连续两次攻击,也就是AttackOne和AttackTwo。
动画方面,我希望完成的效果是角色可以从任何状态进行攻击,且两段攻击都可以结束动画,所以分别是All State→Attack One→Exit和All State→Attack One→AttackTwo→Exit。
private bool canAttack; //可以一段攻击
void Attack()
{
//如果处于一段攻击或者二段攻击的前70%进度,则无法进行一段攻击,
if (stateInfo.IsName("AttackOne") || (stateInfo.IsName("AttackTwo") && stateInfo.normalizedTime < 0.7f))
{
canAttack = false;
}
else
{
canAttack = true;
}
//按下攻击键且可以进行攻击,则触发攻击动画
if (Input.GetButtonDown("Attack") && canAttack == true)
{
myAnim.SetTrigger("AttackOne");
}
//按下攻击键,且处于一段攻击状态,且一段攻击动画运行了80%以上时可以进行二段攻击。
if (Input.GetButtonDown("Attack") && stateInfo.IsName("AttackOne") && stateInfo.normalizedTime > 0.7f)
{
myAnim.SetTrigger