48 lines
1.1 KiB
C#
48 lines
1.1 KiB
C#
//放一个MonoBehaviour
|
|
//
|
|
|
|
using System.Collections;
|
|
using UnityEngine;
|
|
using XLua;
|
|
|
|
namespace XGame
|
|
{
|
|
[LuaCallCSharp]
|
|
public class XWCoroutine : MonoBehaviour
|
|
{
|
|
private static XWCoroutine instance;
|
|
|
|
|
|
public static XWCoroutine Instance
|
|
{
|
|
get
|
|
{
|
|
if (instance == null)
|
|
{
|
|
GameObject obj = GameObject.Find("CoroutineManager");
|
|
if(obj == null)
|
|
obj = new GameObject("CoroutineManager");
|
|
instance = obj.AddComponent<XWCoroutine>();
|
|
DontDestroyOnLoad(obj);
|
|
}
|
|
return instance;
|
|
}
|
|
}
|
|
|
|
public static XWCoroutine GetInstance()
|
|
{
|
|
return Instance;
|
|
}
|
|
|
|
public static void StartCo(IEnumerator coroutine)
|
|
{
|
|
instance.StartCoroutine(coroutine);
|
|
}
|
|
|
|
// 在 Lua 中调用的协程函数
|
|
public Coroutine StartLuaCoroutine(IEnumerator coroutine)
|
|
{
|
|
return StartCoroutine(coroutine);
|
|
}
|
|
}
|
|
} |