首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >结束GKTurnBasedMatch时出现的问题

结束GKTurnBasedMatch时出现的问题
EN

Stack Overflow用户
提问于 2012-08-15 21:55:25
回答 1查看 645关注 0票数 1

我已经在两个设备上测试了我的基于turn的游戏应用。当设备1退出(通过从GKTurnBasedMatchmakerViewController中滑动和删除比赛)时,它会更新设备2以显示比赛已经完成(但它仍然在GKTurnBasedMatchmakerViewController中显示比赛轮到其他玩家),但设备1不更新!

在GKTurnBasedMatchmakerViewController的“游戏结束”部分,它说“没有结果”,而苹果纪录片-参与者的结果还没有确定(通常是因为比赛仍在进行中)。

我想知道如何将其设置为其他值,以及通过以这种方式退出将调用(假定)什么方法。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-01-13 10:20:51

代码语言:javascript
复制
- (void)turnBasedMatchmakerViewController:(GKTurnBasedMatchmakerViewController *)viewController playerQuitForMatch:(GKTurnBasedMatch *)match {

    if ([match.currentParticipant.playerID isEqualToString:[GKLocalPlayer        localPlayer].playerID]) {

        [match participantQuitInTurnWithOutcome:GKTurnBasedMatchOutcomeQuit nextParticipants:nextParticipant turnTimeout:GKTurnTimeoutNone matchData:data completionHandler:^(NSError *error) {

            [match removeWithCompletionHandler:^(NSError *error) {

                //Player quitted and match removed

            }];

        }];

    }
    else {

        [match participantQuitOutOfTurnWithOutcome:GKTurnBasedMatchOutcomeQuit withCompletionHandler:^(NSError *error) {

            [match removeWithCompletionHandler:^(NSError *error) {

                //Player quitted and match removed

            }];

        }];

    }

}

对于设备2

代码语言:javascript
复制
-(void)handleTurnEventForMatch:(GKTurnBasedMatch *)match {

    if (player2.matchOutcome==GKTurnBasedMatchOutcomeQuit){

        //Your opponent quitted do something

    }

}
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11970582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档