using System.Collections; using System.Collections.Generic; using UnityEngine; [System.Serializable] public enum SceneType { None, BootSequence, MainMenu, Gameplay, Credits, COUNT } public abstract class SceneLoader : MonoBehaviour { [SerializeField] private SceneType _sceneType; private SceneType _toLoad = SceneType.None; public SceneType SceneType => _sceneType; public SceneType ToLoad => _toLoad; public abstract void StartLoad(); public abstract bool LoadComplete { get; } public void LoadScene( SceneType scene ) { if ( scene == SceneType.COUNT || scene == SceneType.None ) { Debug.LogError($"cannot load scene {scene}"); return; } _toLoad = scene; } public void Quit() { Application.Quit(); } }