WedX - журнал о программировании и компьютерных науках

Как реализовать топ-10 лидеров с помощью Google Play Services C++

Мы разрабатываем игру с топ-10 лидеров для устройств Android и iOS.

Игра написана на C++ с использованием cocos2d-x.

Я нашел методы для получения оценки текущего пользователя, но не нашел никакого метода для получения оценки других пользователей или списков оценок.

Можно ли получить счет для списка пользователей с помощью сервисов Google Play?


Ответы:


1

Я бы посмотрел на функцию loadTopScores, задокументированную здесь:

https://developers.google.com/android/reference/com/google/android/gms/games/leaderboard/Leaderboards.html#loadTopScores%28com.google.android.gms.common.api.GoogleApiClient,%20java.lang.String,%20int,%20int,%20int,%20boolean%29

06.03.2016
  • Спасибо за ответ. Но это для java, а не для C++. 06.03.2016

  • 2

    Это можно сделать с помощью ScorePage.

    ScorePage — это единая структура данных, которая позволяет вам получить доступ к данным о счете. Данные включают идентификатор таблицы лидеров, начало, временной интервал, коллекцию, токен предыдущей страницы результатов, токен следующей страницы результатов и вектор всех записей результатов.

    Способы получения ScorePage в LeaderboardManager:

    void FetchScorePage(...);
    
    06.03.2016

    3

    Вы должны получить ScorePageToken из LeaderboardManager. Функция, которую вы ищете, такова:

    ScorePage::ScorePageToken gpg::LeaderboardManager::ScorePageToken(
                              std::string const& leaderboard_id,
                              LeaderboardStart  start,
                              LeaderboardTimeSpan time_span,
                              LeaderboardCollection collection) const 
    

    Это позволяет вам получить токен, чтобы передать его в gpg::LeaderboardManager::FetchScorePage или gpg::LeaderboardManager::FetchScorePageBlocking. Его подпись такова:

    void gpg::LeaderboardManager::FetchScorePage(
         ScorePage::ScorePageToken const& token,
         uint32_t max_results, 
         FetchScorePageCallback callback) 
    

    Его использование таково:

    auto token = gameServices->Leaderboards().ScorePageToken("LEADERBOARD-ID", TOP_SCORES, SOCIAL, ALL_TIME);
    gameServices->Leaderboards().FetchScorePage(token, 10, 
        [=] (const gpg::LeaderboardManager::FetchScorePageResponse& response) {...});
    

    Каждая страница будет возвращать не более 25 результатов, но вы можете использовать функции NextScorePageToken и PreviousScorePageToken для навигации по всей таблице лидеров (в вашем случае это не обязательно, потому что вам нужны только 10 лучших).

    13.08.2016
    Новые материалы

    Как создать диаграмму градиентной кисти с помощью D3.js
    Резюме: Из этого туториала Вы узнаете, как добавить градиентную кисть к диаграмме с областями в D3.js. Мы добавим градиент к значениям SVG и применим градиент в качестве заливки к диаграмме с..

    Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что это выглядит сложно…
    Просто начните и учитесь самостоятельно Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что он кажется мне сложным, и я бросил его. Это в основном инструмент..

    Лицензии с открытым исходным кодом: руководство для разработчиков и создателей
    В динамичном мире разработки программного обеспечения открытый исходный код стал мощной парадигмой, способствующей сотрудничеству, инновациям и прогрессу, движимому сообществом. В основе..

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..


    Для любых предложений по сайту: [email protected]