Game Center を使用する iOS マルチプレイヤー ゲームに取り組んでいます。
ユーザーが Game Center にログインして [今すぐプレイ] をタップすると、GC が 4 人のプレイヤーを接続し、ゲームが開始されます。問題は、データの一部が失われるため、ゲームが頻繁にフリーズすることです (これが原因だと思います)。ゲームは通常正常に動作しますが、サーバー (サーバーは一部のプレーヤー) から送信されたデータが失われ、ゲームがフリーズすることがあります。
この関数を使用してデータを送信します。
- (void)sendDataNSData *)data {
NSError *error;
BOOL success = [[GCHelper sharedInstance].match sendDataToAllPlayers:data withDataMode:GKMatchSendDataReliable errorerror];
if (!success) {
//NSLog(@"Error sending init packet");
[self matchEnded];
}
}
問題は、matchend が呼び出されないことです。そのため、データは送信されていると思いますが、失われます。
誰かが同様の問題を抱えていて、それを修正する方法を知っていますか?