MiniGame-PushPush/Assets/Scripts/Manage/SceneLoadManager.cs
villaingames 8701cac907 Addressable 로드 비동기 -> 동기식으로 수정, 플레이 루틴 추가
- 결과 화면 임시 추가
- 종료 후 로비 연결 추가
2023-10-18 20:45:27 +09:00

42 lines
1.2 KiB
C#

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)
{
//·Îµù »©°í UI Á¤¸®
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)
{
UIManager.Instance.OpenLoadingUI(loadingUI);
UIManager.Instance.ReleaseUI();
var handle = SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Single);
handle.completed += complete =>
{
onComplete?.Invoke();
};
}
}