我们正在开发一款Android和iOS设备排名前10的游戏。
游戏是使用cocos2d-x在C ++上编写的。
我找到了获取当前用户分数的方法,但没有任何方法来获取其他用户'得分或得分列表。
是否可以通过Google Play服务获取用户列表的分数?
答案 0 :(得分:1)
我会看一下这里记录的loadTopScores函数:
答案 1 :(得分:0)
可以使用ScorePage完成。
ScorePage是一种单一数据结构,允许您访问分数数据。 数据包括排行榜ID,开始,时间跨度,集合,之前 得分页面标记,下一个得分页面标记和所有向量 得分条目。
在LeaderboardManager中获取ScorePage的方法:
void FetchScorePage(...);
答案 2 :(得分:0)
您必须从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名。