我几乎决定使用谷歌播放服务来实现我的Android和ios的实时多人游戏。
这三件事是否可以使用Google Play游戏?
答案 0 :(得分:1)
我正在试图弄清楚我是否能够管理玩家等级 根据比赛状态增加和减少他们的等级 每场比赛结束时的信息。这可能使用XP 他们有系统吗?
您可以使用他们的排行榜来实现xp系统。只需将当前值作为分数保存到排行榜。在下一次xp增加时,您可以加载玩家得分并更新值。以下是此任务的示例代码:
private int myScore; // collect the new xp in a variable
....
// save it a specific time, e.g. game end
if (mGoogleApiClient != null && mGoogleApiClient.isConnected()) {
PendingResult<Leaderboards.LoadPlayerScoreResult> result = Games.Leaderboards.loadCurrentPlayerLeaderboardScore(mGoogleApiClient,leaderboardId,LeaderboardVariant.TIME_SPAN_ALL_TIME, LeaderboardVariant.COLLECTION_PUBLIC);
result.setResultCallback(new ResultCallback<Leaderboards.LoadPlayerScoreResult>() {
@Override
public void onResult(Leaderboards.LoadPlayerScoreResult loadPlayerScoreResult) {
if(loadPlayerScoreResult != null && loadPlayerScoreResult.getScore() != null){
// update the xp value
Games.Leaderboards.submitScore(mGoogleApiClient, leaderboardId, loadPlayerScoreResult.getScore().getRawScore()+myScore);
}
else {
// never submited xp, do it a first time
Games.Leaderboards.submitScore(mGoogleApiClient, leaderboardId, myScore);
}
}
});
}
我需要能够根据等级进行配对。 (创建。的子集 有资格互相比赛的球员)
您可以使用RoomConfig Builder中的setVariant()方法实现目标。假设我们用数字1标记XP少于100的玩家。对于那些人,你将在新游戏开始时调用roomConfigBuilder.setVariant(1)。只有具有相同号码的玩家才能相互连接。
Further information: developers google
我需要能够显示所有排名和相应用户名的全局排行榜
排行榜系统提供公共和社交(仅限朋友)列表。
答案 1 :(得分:0)