public void AddEntry(ScoreboardDataEntry dataEntry)
    {
        var savedScores = GetSavedScores();
        var scoreAdded  = false;

        for (var i = 0; i < savedScores.highscores.Count; i++)
        {
            if (dataEntry.entryScore <= savedScores.highscores[i].entryScore)
            {
                continue;
            }
            savedScores.highscores.Insert(i, dataEntry);
            scoreAdded = true;
            break;
        }

        if (!scoreAdded && savedScores.highscores.Count < maxEntries)
        {
            savedScores.highscores.Add(dataEntry);
        }

        if (savedScores.highscores.Count > maxEntries)
        {
            savedScores.highscores.RemoveRange(maxEntries, savedScores.highscores.Count - maxEntries);
        }

        UpdateUI(savedScores);
        SaveScores(savedScores);
    }
    public void SaveScore()
    {
        var entry = new ScoreboardDataEntry
        {
            entryName  = nameInput.text,
            entryScore = GameMaster.Instance.PlayerScore
        };

        _scoreboard.AddEntry(entry);
        entryUiHolder.SetActive(false);
    }
Beispiel #3
0
 public void Initialize(ScoreboardDataEntry dataEntry)
 {
     entryNameText.text  = dataEntry.entryName;
     entryScoreText.text = dataEntry.entryScore.ToString();
 }