我在开发基于回合多人游戏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);
}
});
当前玩家的游戏在“完成的游戏”部分中得到更新。
但是,对手的游戏被列为“我的回合”
从Developing a Turn Based Multiplayer Game in Android
页面:
“ Play游戏服务会向所有其他比赛参与者发送通知,通知他们比赛已经结束。这些参与者在各自比赛列表界面的“您的回合”类别下看到此比赛。这时,您的游戏可以为这些参与者调用finishMatch()参与者保存其最终游戏数据。调用此方法还将比赛移至参与者比赛列表用户界面中的“已完成比赛”类别中。”
我finishMatch
该如何招呼其他玩家?
-是通过 mGoogleApiClient
-或是否有办法使对手的比赛状态= MATCH_STATUS_COMPLETE
有人可以帮忙吗?
您应该在其他每个播放器设备上进行以下呼叫:
Games.TurnBasedMultiplayer.finishMatch( mGoogleApiClient, mMatch.getMatchId());
这将导致每个播放器设备上的以下状态更改:
请注意,其他参与者设备上的参与者状态可能仍为STATUS_JOINED(至少那是我在实现中看到的状态)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句