4

我敢肯定有类似的问题,但我找不到一个例子。我正在尝试为我的回合制游戏重新创建苹果 GKTurnBasedMatchmakerViewController,并为我的回合制 iPhone 游戏使用我自己的自定义界面。我无法正确显示所有选项,所以我希望有人有一个工作示例。我目前的代码是这样的:

-(void)getCurrentGamesFromServer  {
[GKTurnBasedMatch loadMatchesWithCompletionHandler:^(NSArray *matches, NSError *error) {
    if(matches){
        for (GKTurnBasedMatch *myMatch in matches) {

            //this is, I believe, also where we need to consider invitations.  available instance methods provided by GC are: acceptInviteWithCompletionHandler and declineInviteWithCompletionHandler

            if(myMatch.status == 1){ //ongoing game
                if([myMatch.currentParticipant.playerID isEqualToString:[GKLocalPlayer localPlayer].playerID]){ //if it's my turn
                    //here we need to populate the table by adding our matches to mcurrentgamesarray.  after all the matches have been added, reload the tableview

                    NSLog(@"active game that is my turn");
                    [self.mCurrentGamesArray addObject:myMatch];

                }
                else{
                    NSLog(@"other turn or an invite from another player waiting to hear from you");
                }
            }

        }
    }
    [_mCurrentGamesTableView reloadData];
}];
}

如您所见,我现在正在抓取的唯一游戏是状态为 1(正在进行的游戏)且当前参与者 ID 是我的 ID 的游戏。

为了获得不属于我的游戏,我尝试制作不是我的 ID 的游戏,但它包含邀请,我不知道如何将它们分开。

基本上,我希望有一个轮到我的游戏部分,一个不是我轮到我但游戏仍然活跃的部分,一个已完成的旧游戏的部分,以及一个邀请部分。有没有人有一个工作示例,或者他们可以发送给我的页面来解释我正在尝试做的最佳实践?谢谢你的帮助。

4

0 回答 0