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();
    }
}