You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
	
	
		
			
				
					
						
							|  |  |  |  | using Cysharp.Threading.Tasks; | 
					
						
							|  |  |  |  | using UnityEngine.SceneManagement; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | namespace Script.FrameWork.UI | 
					
						
							|  |  |  |  | { | 
					
						
							|  |  |  |  |     public class SceneManager : Singleton<SceneManager> | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         public SceneBase CurrentScene { private set; get; } | 
					
						
							|  |  |  |  |          | 
					
						
							|  |  |  |  |         public async UniTask LoadSceneAsync<T>(string sceneName, LoadSceneMode loadSceneMode = LoadSceneMode.Single) where T : SceneBase, new() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (CurrentScene != null) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 if (CurrentScene.SceneName == sceneName) | 
					
						
							|  |  |  |  |                 { | 
					
						
							|  |  |  |  |                     LogHelper.LogError($"Scene already loaded: {sceneName}"); | 
					
						
							|  |  |  |  |                     return; | 
					
						
							|  |  |  |  |                 } | 
					
						
							|  |  |  |  |                 // await CurrentScene.UnLoadSceneAsync(); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             CurrentScene = new T(); | 
					
						
							|  |  |  |  |             await CurrentScene.LoadSceneAsync(sceneName, loadSceneMode); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public void Update() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             CurrentScene?.OnUpdate(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | } |