private void DebugCommandAddHighScore(CommandArg[] args) { var entry = new ScoreEntryData() { name = args[0].String, score = args[1].Int }; AddScoreToTable(entry); }
// Private private void OnExit() { if (_newHighScorePanelObj.activeSelf) { var entry = new ScoreEntryData { name = _highScoreNameInputField.text, score = _playerScoreSvar.value }; _lastHighScoreEntryAchievedSvar.value = entry; _highScoreAchievedEvent.Invoke(); } }
private void Start() { var table = _leaderboardTableDataSvar.value.table; if (table != null) { _highestScoreEntry = table[0]; } else { _highestScoreEntry = new ScoreEntryData() { name = "", score = 0 }; } }
// Private private void AddScoreToTable(ScoreEntryData scoreEntry) { const int MAX_ENTRIES = LeaderboardTableData.MAX_ENTRIES; var table = _leaderboardTableDataSvar.value.table; table.Add(new ScoreEntryData() { name = scoreEntry.name, score = scoreEntry.score }); table.Sort(); // Scores are sorted descending if (table.Count > MAX_ENTRIES) { table.RemoveRange(MAX_ENTRIES, table.Count - MAX_ENTRIES); } SaveToDevice(); }
// Public API public void Set(int position, ScoreEntryData scoreEntryData) { _positionText.text = position.ToString(); _playerNameText.text = scoreEntryData.name; _scoreText.text = scoreEntryData.score.ToString(); }