iOS开发:如何在Game Center中自动匹配玩家?

时间:2011-01-07 19:00:20

标签: iphone ipad ios gamekit game-center

我的应用中有一个“立即播放”按钮,允许玩家与其他随机播放器自动匹配。也许我在文档的某个地方遗漏了这个,但是如何编写自动匹配玩家的代码呢?

Game Center沙盒服务器在最近几天搞砸了,所以我很难尝试不同的东西,因为我不得不猜测,因为Game Kit文档并不清楚如何做到这一点。目前,我有代码设置(但未经测试)与朋友创建匹配...

NSArray *playerList = [NSArray arrayWithObject:pid];
GKMatchRequest *request = [[[GKMatchRequest alloc] init] autorelease];
request.minPlayers = 2;
request.maxPlayers = 4;
request.playersToInvite = playerList;

[[self waitingIndicator] startAnimating];

[[GKMatchmaker sharedMatchmaker] findMatchForRequest:request withCompletionHandler:^(GKMatch *match, NSError *error) {
    if (error)
    {
        //handle error
    }

    else if (match != nil)
    {
        self.myMatch = match;

        //start match code
    }
}];

但是如何自动匹配两个寻找游戏的随机人?我的猜测,既然文档没有说出来,或者我错过了,那就是为了创建一个自动匹配,我只是将匹配对象的playersToInvite属性设置为nil?如果没有,我该如何创建自动匹配?

另外一个问题,虽然我们正在讨论这个主题,但Game Kit会在网站上提供一些常见的配对方案,其中一个是......

  

玩家也可以创建网络   使用游戏中心进行比赛   应用。当他们邀请朋友时   进入多人游戏,你的   应用程序在两者上启动   设备,以及您的每个副本   应用程序收到邀请   加入游戏。

但我无法弄清楚如何在Game Center应用程序中执行此操作以进行测试。用户如何使用Game Center应用程序创建网络匹配?我在Game Center应用程序的任何地方都没有看到任何按钮。

提前感谢您的智慧!

1 个答案:

答案 0 :(得分:2)

好的,现在沙盒游戏中心服务器已备份,我可以通过将playersToInvite属性设置为nil或不设置全部来确认自动匹配是否有效。