Health/Assets/Scripts/UI/LoadingManager.cs

31 lines
912 B
C#

using System;
using System.Collections;
using UnityEngine;
using UnityEngine.SceneManagement;
public class LoadingManager:MonoSingleton<LoadingManager>
{
public void Load(string targetScene)
{
//string currentScene = SceneManager.GetActiveScene().name;
var op = SceneManager.LoadSceneAsync("Loading", LoadSceneMode.Single);
op.completed += (AsyncOperation obj) =>
{
StartCoroutine(LoadingScene(targetScene));
};
}
private IEnumerator LoadingScene(string targetScene)
{
//演示用,正式版需要根据场景大小调整
if (targetScene.Equals("YogaMain"))
{
yield return new WaitForSeconds(3f);
}
var loadNew = SceneManager.LoadSceneAsync(targetScene, LoadSceneMode.Single);
loadNew.completed += (AsyncOperation obj2) =>
{
//fade in
};
}
}