动画播放问题(动画播放完在执行后面的程序)

论坛 期权论坛 脚本     
匿名网站用户   2020-12-20 23:50   40   0
1,、using UnityEngine;
using System.Collections;


public class WaitForEndOfAnim : IEnumerator
{
AnimationState m_animState;
public WaitForEndOfAnim(AnimationState animState)
{
m_animState = animState;
}
//-- IEnumerator Interface
public object Current
{
get
{
return null;
}
}
//-- IEnumerator Interface
public bool MoveNext()
{
return m_animState.enabled;
}
//-- IEnumerator Interface
public void Reset()
{
}

}

2、using UnityEngine;
using System.Collections;
public class UnitTest : MonoBehaviour
{
public Animation anim;
void OnGUI()
{
if (GUILayout.Button("启动"))
{
StartCoroutine(DoTest());
}
}
IEnumerator DoTest()
{
AnimationState animAttack = anim["Take1"];
animAttack.speed = 0.3f;
AnimationState animHit = anim["Take2"];
animHit.speed = 0.3f;
AnimationState animDie = anim["Take3"];
animDie.speed = 0.3f;
anim.Play(animAttack.name);
Debug.Log(animAttack.name);
yield return new WaitForEndOfAnim(animAttack);
anim.Play(animHit.name);
yield return new WaitForEndOfAnim(animHit);
anim.Play(animDie.name);
yield return new WaitForEndOfAnim(animDie);
}
}

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:1136255
帖子:227251
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP