Я пытаюсь отправить обмен другому игроку в GKTurnBasedMatch. Когда я посылаю его, мой обработчик завершения получает большое сообщение об ошибке, с этими описаниями:Как начать GKTurnBasedMatch, чтобы я мог отправить обмен?
The requested operation could not be completed because the session is in an invalid state.
Game is not active, session state is Matching
Я хочу, чтобы матч, чтобы начать, когда есть только два игрока, но, чтобы в общей сложности 16 игроков. Поэтому, естественно, я устанавливаю maxPlayers = 16
и minPlayers = 2
. Я думал, что автоматически начнется матч, как только два игрока будут сидеть, но это не так.
Я пытался сделать это после того, как матч состоит из двух игроков,:
if match.participants?.count == 2 {
match.status = GKTurnBasedMatchStatus.open
}
Но тогда я сказал, что status
только для чтения. Я не могу вручную установить его.
Теперь, с регулярным GKMatch
, я официально начать матч по телефону:
GKMatchmaker.shared().finishMatchmaking(for: match)
Но не похоже, чтобы подобная штуковина для GKTurnBasedMatch
.
Как я могу начать матч, чтобы я мог отправить обмен между двумя игроками?