2012-11-16 78 views
2

我使用的是標準配對用戶界面和兩臺iPad iOS6。問題是當我在第一個設備中創建新的匹配項時,第二個設備應該在查看Matchmaking用戶界面時看到現有的匹配項,但事實並非如此。我確定我的代碼是正確的。這裏是方法:遊戲中心回合制自動比賽不起作用

-(void)findMatchWithMinPlayers:(int)minPlayers maxPlayers:(int)maxPlayers viewController:(UIViewController*)viewController { 

    // the view that will present Matchmaker View Controller 
    self.viewCaller = viewController; 

    GKMatchRequest *request = [[GKMatchRequest alloc] init]; 
    request.minPlayers = minPlayers; 
    request.maxPlayers = maxPlayers; 

    GKTurnBasedMatchmakerViewController *viewMatchmaker = [[GKTurnBasedMatchmakerViewController alloc] initWithMatchRequest:request]; 
    viewMatchmaker.turnBasedMatchmakerDelegate = self; 
    viewMatchmaker.showExistingMatches = YES; 
    [self.viewCaller presentViewController:viewMatchmaker animated:YES completion:nil]; 
} 

我甚至嘗試過兩個不同的示例遊戲,但同樣的問題,所以我怎麼能解決這個問題?

回答

4

當Gamekit爲turnbase匹配做媒人時,它試圖找到一個開放插槽的匹配來填充玩家。如果它找不到一個開放的插槽來填充玩家,則會創建一個新的匹配。

嘗試在一個設備上創建一個匹配和經過一轉與該設備,那就是當你呼喚我

endTurnWithNextParticipants:turnTimeout:matchData:completionHandler: 

然後在其他設備上嘗試尋找匹配。

+0

是的,這是正確的。即使我邀請朋友時,除非我結束,否則通知不會出現在他身上。我嘗試了3名球員的比賽,並邀請了2名朋友。第一個玩家應該結束轉動,這樣通知纔會出現在第二個玩家身上。當第二個玩家結束時,通知將顯示給第三個玩家。這很奇怪。 – mbrmj