我正在Android
使用Google Play Game Services
开发基于回合制的多人游戏。
当用户点击完成Button
:
Games.TurnBasedMultiplayer.finishMatch(mGoogleApiClient, mMatch.getMatchId(), mMatch.getData(), creatorResult, opponentResult)
.setResultCallback(new ResultCallback<TurnBasedMultiplayer.UpdateMatchResult>() {
@Override
public void onResult(TurnBasedMultiplayer.UpdateMatchResult result) {
processResult(result);
}
});
当前玩家的游戏在&#34;已完成的游戏&#34;中得到更新。部分。
然而,对手的比赛被列为&#34; My Turn&#34;
来自Developing a Turn Based Multiplayer Game in Android
页面:
&#34; Play游戏服务向所有其他匹配参与者发送通知,通知他们匹配已结束。这些参与者在各自的匹配列表UI中的“您的回合”类别下看到此匹配。 此时,您的游戏可以为这些参与者调用finishMatch()来保存他们的最终游戏数据。调用此方法也会将匹配移动到参与者的匹配列表UI中的“已完成的匹配”类别。&#34 ;
如何为其他玩家拨打finishMatch
?
- 是否通过mGoogleApiClient
- 或者有没有办法让对手的匹配状态= MATCH_STATUS_COMPLETE
有人可以帮忙吗?
答案 0 :(得分:1)
您应该在其他每个玩家设备上进行以下呼叫:
Games.TurnBasedMultiplayer.finishMatch( mGoogleApiClient, mMatch.getMatchId());
这将导致每个播放器设备上的状态发生以下变化:
请注意,玩家参与者状态可能会在其他玩家设备上保持STATUS_JOINED(至少这是我在实施中看到的)。