[英]Turn-based matchmaking not working in iOS 10
我的游戲在iOS 10之前運行良好。現在,所有使用iOS 10的人都無法邀請和與自己想要的人一起玩。
當用戶說他們想玩多人游戲時,我將創建一個GKMatchRequest
如下所示:
GKMatchRequest *request = [[GKMatchRequest alloc] init];
request.minPlayers = 2;
request.maxPlayers = 4;
request.defaultNumberOfPlayers = 2;
我使用GKTurnBasedMatchmakerViewController
來處理邀請等。用戶會看到一個界面,該界面可讓他們更改比賽中的球員人數並邀請球員。 假設他們只想要2個玩家,所以他們離開了,想和他們的朋友一起玩。 因此,他們使用界面將邀請發送給他們的朋友。 結果是,使用4個參與者的GKMatch
在我的didFindMatch
上調用了GKMatch
。 它應該只有2個! 第一個參與者是本地玩家,其他三個參與者的狀態為“匹配”。 因此,他們的朋友甚至不在列表中。 有人對此有任何建議嗎? 相同的代碼在iOS 10之前的iOS版本中可以正常工作。
似乎在IOS10上,defaultNumberOfPlayers沒有被兌現。
請記住, GKTurnBasedMatch
在給定的比賽中具有三種類型的球員:
如果您查看比賽中所有4位球員的狀態(使用您的示例),我懷疑您會看到以下結果
如果是這樣,則表示將忽略defaultNumberOfPlayers
,並且將以最多4個玩家(1個發起者,1個被邀請者和2個自動配對插槽)創建比賽。
解決方法似乎是在創建匹配項時將maxNumberOfPlayers
設置為所需的上限(在本例中為2)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.