예제 #1
0
    void Start()
    {
        loadingScreen = GameObject.Find("LoadingScreenCanvas").GetComponent <LoadingScreen>();
        state         = GameStatePersistence.LoadState();
        Button button = transform.Find("Panel").Find("ContinueButton").GetComponent <Button>();

        button.interactable = state != null;
    }
예제 #2
0
    private StatsUpgrades(bool newGame = false)
    {
        GameState state = GameStatePersistence.LoadState();

        if (state != null && !newGame)
        {
            stats = state.stats;
        }
        else
        {
            stats.Add("health", 0);
            stats.Add("sword", 0);
            stats.Add("bow", 0);
            stats.Add("points", 5);
        }

        observers = new List <StatsObserver>();
    }
예제 #3
0
    public static void ResetLevel()
    {
        string sceneName = SceneManager.GetActiveScene().name;

        if (sceneName == Constants.FIRST_LEVEL_SCENE)
        {
            StatsUpgrades.NewInstance();
        }
        else
        {
            try
            {
                StatsUpgrades.Instance.stats = GameStatePersistence.LoadState().stats;
            }
            catch {
                StatsUpgrades.NewInstance();
            }
        }

        SceneManager.LoadScene(sceneName);
        Time.timeScale = 1;
    }