DDD-32 GameFlowManager의 기능 일부SceneManager로 이관
This commit is contained in:
parent
0a06c10e29
commit
b83e4c3a5e
@ -2,6 +2,7 @@
|
|||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
using UnityEngine.ResourceManagement.ResourceProviders;
|
||||||
using UnityEngine.SceneManagement;
|
using UnityEngine.SceneManagement;
|
||||||
|
|
||||||
namespace DDD
|
namespace DDD
|
||||||
@ -27,8 +28,6 @@ public void Init()
|
|||||||
|
|
||||||
public async void PostInit()
|
public async void PostInit()
|
||||||
{
|
{
|
||||||
SceneManager.Instance.OnSceneChanged += OnFlowSceneOpened;
|
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (IsGameStarted() == false)
|
if (IsGameStarted() == false)
|
||||||
@ -109,12 +108,6 @@ public void OpenFlowScene(GameFlowState newFlowState)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private Scene _currentScene;
|
|
||||||
public void OnFlowSceneOpened(Scene newScene)
|
|
||||||
{
|
|
||||||
_currentScene = newScene;
|
|
||||||
}
|
|
||||||
|
|
||||||
public bool GetFlowScene(GameFlowState flowState, out SceneType sceneType)
|
public bool GetFlowScene(GameFlowState flowState, out SceneType sceneType)
|
||||||
{
|
{
|
||||||
return GameFlowSceneMappingSo.FlowToSceneMapping.TryGetValue(flowState, out sceneType);
|
return GameFlowSceneMappingSo.FlowToSceneMapping.TryGetValue(flowState, out sceneType);
|
||||||
|
@ -3,7 +3,6 @@
|
|||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.ResourceManagement.ResourceProviders;
|
using UnityEngine.ResourceManagement.ResourceProviders;
|
||||||
using UnityEngine.SceneManagement;
|
|
||||||
|
|
||||||
namespace DDD
|
namespace DDD
|
||||||
{
|
{
|
||||||
@ -18,7 +17,9 @@ public class SceneManager : Singleton<SceneManager>, IManager
|
|||||||
{
|
{
|
||||||
private Dictionary<SceneType, SceneInstance> _loadedScenes;
|
private Dictionary<SceneType, SceneInstance> _loadedScenes;
|
||||||
|
|
||||||
public Action<Scene> OnSceneChanged;
|
private SceneInstance _currentSceneInstance;
|
||||||
|
|
||||||
|
public Action<SceneInstance> OnSceneChanged;
|
||||||
|
|
||||||
public void Init()
|
public void Init()
|
||||||
{
|
{
|
||||||
@ -87,7 +88,7 @@ public void ActivateScene(SceneType sceneType)
|
|||||||
}
|
}
|
||||||
|
|
||||||
UnityEngine.SceneManagement.SceneManager.SetActiveScene(sceneInstance.Scene);
|
UnityEngine.SceneManagement.SceneManager.SetActiveScene(sceneInstance.Scene);
|
||||||
OnSceneChanged?.Invoke(sceneInstance.Scene);
|
_currentSceneInstance = sceneInstance;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user