【问题标题】:Can the GC Matchmaking inviter receive a "declined" message?GC 对接会邀请人能否收到“拒绝”消息?
【发布时间】:2013-11-28 16:40:07
【问题描述】:
我正在使用 Game Center 开发一款带有多人比赛的 iOS 游戏。
一场比赛本质上是一场决斗(2名玩家)。
当一个玩家向朋友发送邀请时,朋友的 iPhone 会在屏幕顶部显示一个横幅。如果您点击该横幅,游戏就会启动。
我的邀请处理程序将显示一个确认菜单:它会询问您是否要离开当前会话并开始与您的朋友决斗。
当然,你可以拒绝。您可以拒绝比赛。
但就我而言,邀请者将继续等待他们的朋友连接。
被邀请者是否可以发回一条“已拒绝”的消息,以便邀请者的配对屏幕停止等待比赛?
我正在使用默认的匹配视图控制器。
【问题讨论】:
标签:
ios
objective-c
game-center
gamekit
【解决方案1】:
不,您不会被告知受邀者“拒绝”了邀请。事实上,如果被邀请者不点击横幅(只是忽略它),邀请者也会陷入同样的境地。邀请者将无限期等待。
也许您应该考虑在特定时间段过去后超时/取消邀请者的邀请。由于只有一个其他玩家,如果其他玩家没有回应,取消邀请是合理的。由于邀请者正在“邀请”被邀请者,如果他真的想刺激被邀请者,他很可能可以通过其他方式联系被邀请者。
编辑:在“警报”的情况下(仅当受邀者有通知显示为警报时),如果受邀者单击“拒绝”,邀请者将被告知邀请已被拒绝。但同样的问题也存在——如果被邀请者忽略了警报,邀请者将无限期地等待。此外,您的侦听器/邀请处理程序只有在他接受邀请后才会被触发。
编辑:与其显示您自己的确认屏幕(询问玩家是否要结束当前会话),您应该假设接受邀请旨在结束当前会话。如果您的游戏有单人游戏模式可用,那么您应该保存足够的状态以便下次恢复单人游戏(如果您想要该功能)。在多人游戏的情况下,很明显,如果玩家接受其他邀请,他不会介意结束当前会话,除非它是“回合制”游戏。