В моем GKTurnBasedMatch, если игрок выходит, ход передается второму игроку.Поскольку это только игра для двух игроков, я автоматически заставляю их выигрывать при получении уведомления.
Но по какой-то причине на значке значка приложения все еще отображается 1 уведомление?Я не уверен, почему это не было отклонено?
Вот что я запускаю, когда приходит уведомление о выходе другого игрока:
func CheckForWin (matchToCheck: GKTurnBasedMatch) {
for opponent in matchToCheck.participants {
if opponent.matchOutcome == .quit {
matchToCheck.currentParticipant?.matchOutcome = .won
matchToCheck.endMatchInTurn(withMatch: Data()) { (error) in
// All Done, load the matches again...
}
}
}
}
ОБНОВЛЕНИЕ: Все еще не повезло с этим, так что мне пришлось пойти с исправлением лейкопластыря, вместо того, чтобы закончить матч, я просто заставляю последнего оставшегося игрока также выйти из матча с победой в матче.Я полагаю, это заканчивается матч?Но я не могу найти разницу между endMatchInTurn и когда все игроки выходят из матча.