Как получить высокие баллы от OpenFeint?

В своей поддержке OpenFeint дает вам это, но я не совсем понимаю. Как я могу получить данные таблицы лидеров, скажем, топ-10, и показать их в собственном интерфейсе пользователя?

Исходная ссылка: http://www.openfeint.com/ofdeveloper/index.php/kb/article/000028

[OFHighScoreService getPage:1 forLeaderboard:@"leaderboard_id_string" friendsOnly:NO silently:YES onSuccess:OFDelegate(self, @selector(_scoresDownloaded:)) onFailure:OFDelegate(self, @selector(_failedDownloadingScores))];

- (void)_scoresDownloaded:(OFPaginatedSeries*)page
{
    NSMutableArray* highscores = nil;

    if ([page count] > 0)
    {
        if ([[page objectAtIndex:0] isKindOfClass:[OFTableSectionDescription class]])
        {
            // NOTE: In the following line, we access "[page objectAtIndex:1]" to retrieve high scores from
            // the global leaderboard.  Using "[page objectAtIndex:0]" would retrieve scores just for the local player.
            // Older versions of OpenFeint did not break this out into 2 sections.
            highscores = [(OFTableSectionDescription*)[page objectAtIndex:1] page].objects;
        }
        else
        {
            highscores = page.objects;
        }
    }

    for (OFHighScore* score in highscores)
    {
        // ...
    }
}
- (BOOL)canReceiveCallbacksNow
{
    return YES;
} 

1
задан Arkku 28 August 2010 в 22:53
поделиться

1 ответ

Код для запроса страницы с высокими баллами находится в первой строке, т.е.:

[OFHighScoreService getPage:1 forLeaderboard:@"leaderboard_id_string" friendsOnly:NO silently:YES onSuccess:OFDelegate(self, @selector(_scoresDownloaded:)) onFailure:OFDelegate(self, @selector(_failedDownloadingScores))];

Вы помещаете эту строку в то место, где вы хотите начать запрос на высокие баллы. При необходимости вы можете изменить номер страницы. После того, как страница с рекордами получена, вызывается обратный вызов _scoresDownloaded. В этом примере показано, как перебирать объекты OFHighScore в массиве highscores. Вы должны заменить комментарий // ... своим собственным кодом, чтобы показать счет игроку или что-то еще.

(В случае ошибки вызывается _failedDownloadingScores; вы должны реализовать это, чтобы показать ошибку.)

2
ответ дан 2 September 2019 в 21:45
поделиться