Tim*_*ers 8 iphone cocoa-touch gamekit ios
我得到了一些我无法从GameKit解码的行为.
有时,完成邀请的玩家会陷入"等待......"循环,并且无法根据他的邀请结束交易.
我相信它与多任务处理和邀请处理程序有关......似乎如果被邀请者的应用程序从头开始,那么可以正确接受邀请.但这种机制对我来说并不那么透明.
有什么可能缺失的线索?我被文档蒙蔽了眼睛.
有时,当两名玩家之间的比赛开始时,其中一名玩家可能尚未处于连接状态。在实际开始游戏之前,您应该检查是否有更多玩家需要连接。如果大于0,则不开始游戏,而是等待玩家连接,只有当该玩家连接时才开始游戏。
因此,在设置游戏的方法中,代码将类似于以下内容:
if (currentMatch.expectedPlayerCount) {
waiting = YES;
}
Run Code Online (Sandbox Code Playgroud)
您将实现这个委托方法:
- (void)match:(GKMatch *)match player:(NSString *)playerID didChangeState:(GKPlayerConnectionState)state
{
if (state == GKPlayerStateConnected) {
if (waiting) {
waiting = NO;
// start the game now
}
} else if (state == GKPlayerStateDisconnected) {
// handle disconnect
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
405 次 |
| 最近记录: |