我正在创建一个多人tic tac脚趾游戏,并且它在大多数情况下都能正常工作,但是当它重新匹配时,我得到的并不是理想的功能。我应该如何实施TBMP复赛?
所以最初我使用了与Games.TurnBasedMultiplayer.rematch
相同的实现作为TBMPSkeleton示例项目。基本上,在拨打Games.TurnBasedMultiplayer.finish
之后,我通过在后续回拨期间调用match.canRematch()
来检查是否可以重新匹配比赛。如果match.canRematch()
返回true,那么我打电话给Games.TurnBasedMultiplayer.rematch
。两者,当我打电话完成,当我打电话复赛时,onTurnBasedMatchReceived
回调在对方客户端设备上被调用,并从那里检查匹配对象的rematchId。如果它不是null
,那么我重置游戏。
我遇到的问题是,在获胜的玩家要求复赛并且轮到他/她之后,对手玩家将收到新比赛的邀请,但是onTurnBasedMatchReceived
回叫不会被调用。我不希望失败的球员为了接受或拒绝邀请而不得不离开我的比赛。
那么有没有办法让我的应用程序处理邀请通知,而不必强制玩家打开系统的通知gui?我是否应该弃用基于回合的多人API来支持它的实时对应?