using UnityEngine;
using System.Collections;

public class SceneState : MonoBehaviour {
    [HideInInspector, SerializeField]
    public string selectedScene;

    public GuiState selectedGUIState;

    protected float globalGameTime;
    protected float deltaGameTime;

    protected bool isPaused = false;
    protected bool isActive = false;
    protected bool isInit = false;

    protected StateManager stateManager;

    public virtual void Enable() {
        //Debug.Log("Enable Game State");
        this.enabled = true;
        isActive = true;
        Initialize();
    }

    public virtual void Disable() {
        //Debug.Log("Disable Game State");
        this.enabled = false;
        isActive = false;
    }

    public virtual void Initialize() { 
        
    }

    public virtual void Update() {
        globalGameTime = Time.time;
        deltaGameTime = Time.deltaTime;
    }

    protected virtual void Pause() {
        Time.timeScale = 0;
        isPaused = true;
    }

    protected virtual void Resume() {
        Time.timeScale = 1;
        isPaused = false;
    }
}
