示例#1
0
    public void AddToScore(float amount, bool isTimeBonus)
    {
        Score          += amount;
        _scoreText.text = ((int)Score).ToString();
        if (!isTimeBonus)
        {
            GameObject.Find("ScoreCanvas/Score").GetComponent <Animator>()
            .Play("ScoreAnimation");
            _gameManagerScript.BroadcastMessageOrScore("+" + amount, true);
        }

        _scoreStreak.IncreaseStreakAndTryAdvanceToNextTier(
            Mathf.RoundToInt(amount));
        if (Mathf.RoundToInt(Score) <= HighScore)
        {
            return;
        }
        HighScore = Mathf.RoundToInt(Score);
        if (!isTimeBonus)
        {
            GameObject.Find("ScoreCanvas/High Score")
            .GetComponent <Animator>()
            .Play("HighScoreAnimation");
        }
        _highScoreText.text = "BEST: " + HighScore;
    }
示例#2
0
 public void IncreaseStreakAndTryAdvanceToNextTier(int addedAmount)
 {
     CurrentScoreStreak += addedAmount;
     if (CurrentScoreStreak < (CurrentScoreTier + 1) * 1000)
     {
         return;
     }
     _audioManager.Play("ScoreTier");
     CurrentScoreTier++;
     if (CurrentScoreTier > TextArray.Length - 1)
     {
         CurrentScoreStreak = TextArray.Length - 1;
     }
     _gameManager.BroadcastMessageOrScore(TextArray[CurrentScoreTier],
                                          false);
 }