using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
public class AnimMgr : MonoBehaviour
{
private static AnimMgr _Instance;
public static AnimMgr GetInstance()
{
if (_Instance == null)
{
_Instance = new GameObject("_AnimMgr").AddComponent<AnimMgr>();
}
return _Instance;
}
private void Start()
{
}
Animation anim;
public void PlayAnim(GameObject go,Action call)
{
anim = go.GetComponent<Animation>();
anim.Play();
StartCoroutine(AnimEndEvent(AnimEnd));
call();
}
public void AnimEnd()
{
Debug.Log("Animation is complete!!!");
anim = null;
UIManager.GetInstance().CloseUIForms(ProConst.MaskUIForm);
}
IEnumerator AnimEndEvent(Action call)
{
yield return new WaitUntil(_boo);
call();
}
//public void AnimEnd(bool boo, int a)
//{
// Debug.Log("aaaaaaaaaaa");
//}
//IEnumerator AnimEndEvent(Action<bool, int> call)
//{
// yield return new WaitUntil(_boo);
// call(true, 1);
//}
bool _boo()
{
return !anim.IsPlaying(anim.clip.name);
}
}
Action 回调 bool控制协程
最新推荐文章于 2023-05-12 18:29:08 发布