Example #1
0
    private void OnPlayerMove(int blocksRemoved)
    {
        Score.SetScoreForRemovedBlocks(blocksRemoved);
        allowedMoves--;
        if (allowedMoves == 0)
        {
            Player.enabled = false;
            Score.HideScoring();

            SaveGame saveGame = HighscoreUtility.LoadHighscore();
            if (saveGame != null)
            {
                if (saveGame.Score < Score.Score)
                {
                    HighscoreUtility.SaveHighscore(new SaveGame()
                    {
                        Score = Score.Score
                    });
                }
            }
            else
            {
                HighscoreUtility.SaveHighscore(new SaveGame()
                {
                    Score = Score.Score
                });
            }


            View.SetFinalScore(Score.Score);
            View.SetGameViewVisibility(true);
        }
    }
Example #2
0
    private void ReturnToMenu()
    {
        if (IsNewHighscore())
        {
            HighscoreUtility.SaveHighscore(currentLevel);
        }

        UnityEngine.SceneManagement.SceneManager.LoadScene(0);
    }
Example #3
0
    void Start()
    {
        allowedMoves            = Config.MovesAmount;
        Player.OnBlocksRemoved += OnPlayerMove;
        Score.SetGameConfig(Config);

        SetPlayerInput();
        SaveGame saveGame = HighscoreUtility.LoadHighscore();
    }
Example #4
0
    private void Start()
    {
        List <Level> allLevels = HighscoreUtility.LoadAllHighscores();

        for (int i = 0; i < allLevels.Count; i++)
        {
            var level = allLevels[i];
            var view  = buttonViews.First((element) => element.LevelID == level.LevelID);
            view.SetHighscore(level.CurrentHighscore.ToString(), level.gameWon);
        }
    }
Example #5
0
    private bool IsNewHighscore()
    {
        bool newHighscore = false;

        Level previousHighscore = HighscoreUtility.LoadSpecificHighscore(currentLevel.LevelID);

        if (previousHighscore == null)
        {
            newHighscore = true;
        }
        else if (previousHighscore.CurrentHighscore < currentLevel.CurrentHighscore)
        {
            newHighscore = true;
        }
        else if (!previousHighscore.gameWon && currentLevel.gameWon)
        {
            newHighscore = true;
        }

        return(newHighscore);
    }