void Start() { loadingScreen = GameObject.Find("LoadingScreenCanvas").GetComponent <LoadingScreen>(); state = GameStatePersistence.LoadState(); Button button = transform.Find("Panel").Find("ContinueButton").GetComponent <Button>(); button.interactable = state != null; }
public void NextLevel() { StatsUpgrades.Instance.AddPoints(newPoints); GameState state = new GameState { currentSceneName = nextLevelScene, stats = StatsUpgrades.Instance.stats }; GameStatePersistence.SaveState(state); loadingScreen.GetComponent <LoadingScreen>().LoadScene(nextLevelScene); // SceneManager.LoadScene(nextLevelScene); }
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>(); }
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; }