2023-10-12 19:12:46 +09:00
|
|
|
|
using FirstVillain.Singleton;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
using UnityEngine.SceneManagement;
|
|
|
|
|
|
|
|
|
|
public class SceneLoadManager : UnitySingleton<SceneLoadManager>
|
|
|
|
|
{
|
|
|
|
|
public void LoadSceneAsync(string sceneName, LoadSceneMode mode, Action onComplete)
|
|
|
|
|
{
|
|
|
|
|
if(mode == LoadSceneMode.Single)
|
|
|
|
|
{
|
|
|
|
|
//<2F>ε<EFBFBD> <20><><EFBFBD><EFBFBD> UI <20><><EFBFBD><EFBFBD>
|
|
|
|
|
UIManager.Instance.ReleaseUI();
|
|
|
|
|
}
|
|
|
|
|
var handle = SceneManager.LoadSceneAsync(sceneName, mode);
|
|
|
|
|
handle.completed += complete =>
|
|
|
|
|
{
|
|
|
|
|
onComplete?.Invoke();
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Load Scene with loading UI
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="sceneName"></param>
|
|
|
|
|
/// <param name="onComplete"></param>
|
|
|
|
|
/// <param name="loadingUI"></param>
|
|
|
|
|
public void LoadSceneAsync(string sceneName, Action onComplete, E_UI_TYPE loadingUI)
|
|
|
|
|
{
|
2023-10-18 20:45:27 +09:00
|
|
|
|
UIManager.Instance.OpenLoadingUI(loadingUI);
|
|
|
|
|
UIManager.Instance.ReleaseUI();
|
2023-10-12 19:12:46 +09:00
|
|
|
|
|
2023-10-18 20:45:27 +09:00
|
|
|
|
var handle = SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Single);
|
|
|
|
|
handle.completed += complete =>
|
|
|
|
|
{
|
|
|
|
|
onComplete?.Invoke();
|
|
|
|
|
};
|
2023-10-12 19:12:46 +09:00
|
|
|
|
}
|
|
|
|
|
}
|