SceneType Dictionary 관리
This commit is contained in:
parent
5d85d09391
commit
3d2b794f66
@ -1,4 +1,5 @@
|
|||||||
using System;
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.SceneManagement;
|
using UnityEngine.SceneManagement;
|
||||||
@ -14,6 +15,12 @@ public enum SceneType
|
|||||||
|
|
||||||
public class GameManager : Singleton<GameManager>
|
public class GameManager : Singleton<GameManager>
|
||||||
{
|
{
|
||||||
|
private static readonly Dictionary<SceneType, string> SceneTypeDict = new()
|
||||||
|
{
|
||||||
|
{ SceneType.Title, "00.Title" },
|
||||||
|
{ SceneType.Restaurant, "01.Restaurant" }
|
||||||
|
};
|
||||||
|
|
||||||
public SceneType CurrentSceneType { get; private set; }
|
public SceneType CurrentSceneType { get; private set; }
|
||||||
|
|
||||||
private void Start()
|
private void Start()
|
||||||
@ -23,18 +30,10 @@ private void Start()
|
|||||||
|
|
||||||
public async Task ChangeScene(SceneType sceneType)
|
public async Task ChangeScene(SceneType sceneType)
|
||||||
{
|
{
|
||||||
string changeSceneName;
|
if (!SceneTypeDict.TryGetValue(sceneType, out string changeSceneName))
|
||||||
|
|
||||||
switch (sceneType)
|
|
||||||
{
|
{
|
||||||
case SceneType.Title:
|
Debug.LogError($"[GameManager] 정의되지 않은 SceneType: {sceneType}");
|
||||||
changeSceneName = "00.Title";
|
return;
|
||||||
break;
|
|
||||||
case SceneType.Restaurant:
|
|
||||||
changeSceneName = "01.Restaurant";
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
throw new ArgumentOutOfRangeException(nameof(sceneType), sceneType, null);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
await UiManager.Instance.FadeIn();
|
await UiManager.Instance.FadeIn();
|
||||||
@ -51,7 +50,6 @@ public async Task ChangeScene(SceneType sceneType)
|
|||||||
CurrentSceneType = sceneType;
|
CurrentSceneType = sceneType;
|
||||||
|
|
||||||
await Task.Delay(1000);
|
await Task.Delay(1000);
|
||||||
|
|
||||||
await UiManager.Instance.FadeOut();
|
await UiManager.Instance.FadeOut();
|
||||||
|
|
||||||
Debug.Log($"{changeSceneName} 씬으로 전환 완료");
|
Debug.Log($"{changeSceneName} 씬으로 전환 완료");
|
||||||
|
Loading…
Reference in New Issue
Block a user