private void LoadScores (Range _range, LoadScoreCompletion _onCompletion) { // Set Leaderboard properties m_leaderboardData.range = _range; // Load scores m_leaderboardData.LoadScores((bool _success)=>{ if (_success) { LoadUserInfo(_onCompletion); return; } else { if (_onCompletion != null) _onCompletion(null, null); return; } }); }
public override void LoadPlayerCenteredScores (LoadScoreCompletion _onCompletion) { Range _range = new Range(1, 1); // Set leaderboard properties m_leaderboardData.range = _range; // Load local players scores m_leaderboardData.LoadScores((bool _status)=>{ if (_status) { if (m_leaderboardData.localUserScore == null) { LoadTopScores(_onCompletion); return; } else { int _localPlayerRank = m_leaderboardData.localUserScore.rank; int _maxResults = MaxResults; int _loadFrom = Mathf.Max(1, _localPlayerRank - Mathf.FloorToInt(_maxResults * 0.5f)); Range _playerCenteredRange = new Range(_loadFrom, _maxResults); // Load scores player centered scores LoadScores(_playerCenteredRange, _onCompletion); return; } } else { if (_onCompletion != null) _onCompletion(null, null); } }); }
public override void LoadMoreScores (eLeaderboardPageDirection _pageDirection, LoadScoreCompletion _onCompletion) { Range _curRange = m_leaderboardData.range; if (_curRange.from == 0) { LoadTopScores(_onCompletion); return; } // Based on page direction, compute range of score to be loaded int _maxResults = MaxResults; Range _newRange = new Range(0, _maxResults); if (_pageDirection == eLeaderboardPageDirection.PREVIOUS) { if (_curRange.from == 1) { if (_onCompletion != null) _onCompletion(null, null); return; } // Set range start value _newRange.from = Mathf.Max(1, _curRange.from - _maxResults); } else if (_pageDirection == eLeaderboardPageDirection.NEXT) { // Set range start value _newRange.from = _curRange.from + _maxResults; } // Load scores LoadScores(_newRange, _onCompletion); }
public override void LoadTopScores (LoadScoreCompletion _onCompletion) { Range _range = new Range(1, MaxResults); // Load scores LoadScores(_range, _onCompletion); }