62 lines
1.5 KiB
C#
Raw Normal View History

2025-04-20 21:11:30 +08:00
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.SceneManagement;
/// <summary>
/// <20><><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD>ģ<EFBFBD><C4A3>
/// 1.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><ECB2BD><EFBFBD><EFBFBD>
/// 2.Э<><D0AD>
/// 3.ί<><CEAF>
/// </summary>
public class ScenesMgr : BaseManager<ScenesMgr>
{
/// <summary>
/// <20>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC>
/// </summary>
/// <param name="name"></param>
public void LoadScene(string name,UnityAction fun)
{
//<2F><><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SceneManager.LoadScene(name);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD> <20>Ż<EFBFBD>ȥִ<C8A5><D6B4>fun
fun();
}
/// <summary>
/// <20><EFBFBD><ECB2BD><EFBFBD>أ<EFBFBD><D8A3><EFBFBD><E1B9A9><EFBFBD>ⲿ
/// </summary>
/// <param name="name"></param>
/// <param name="fun"></param>
public void LoadSceneAsyn(string name,UnityAction fun)
{
//ͨ<><CDA8>mono<6E><6F><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD><E9BFAA>Э<EFBFBD>̣<EFBFBD><CCA3><EFBFBD>ΪЭ<CEAA><D0AD>Ҫ<EFBFBD>̳<EFBFBD>mono
MonoMgr.GetInstance().StartCoroutine(ReallyLoadSceneAsyn(name, fun));
}
/// <summary>
/// Э<><D0AD><EFBFBD><EFBFBD><ECB2BD><EFBFBD>س<EFBFBD><D8B3><EFBFBD>
/// </summary>
/// <param name="name"></param>
/// <param name="fun"></param>
/// <returns></returns>
private IEnumerator ReallyLoadSceneAsyn(string name, UnityAction fun)
{
AsyncOperation ao = SceneManager.LoadSceneAsync(name);
//<2F><><EFBFBD>Եõ<D4B5><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>صĽ<D8B5><C4BD><EFBFBD>
while(!ao.isDone)
{
//<2F>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>þ<EFBFBD><C3BE><EFBFBD>
EventCenter.GetInstance().EventTrigger("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",ao.progress);
2025-04-20 21:11:30 +08:00
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȥ<EFBFBD><C8A5><EFBFBD>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>
yield return ao.progress;
}
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9>󣬲Ż<F3A3ACB2>ִ<EFBFBD><D6B4>fun
fun();
}
}