У меня есть «бесконечная» игра, где пользователь должен получить как можно больше очков. Я достиг некоторых достижений, когда они достигают 30, 60, 90 пунктов и т. Д. Однако, когда пользователь достигает этих баллов, ни один баннер не показывает, что он завершил достижение, и он не отображается как завершенный в Game Center ,Swift - Достигнутый игровой центр Достижения
Как это сделать?
Это мой код:
func checkAchievements() {
var identifier : String? = nil
var percentComplete : Double = 0
switch(score)
{
case 30:
identifier = "30"
percentComplete = 100.0
case 60:
identifier = "60"
percentComplete = 100.0
case 90:
identifier = "90"
percentComplete = 100.0
case 120:
identifier = "120"
percentComplete = 100.0
case 150:
identifier = "150"
percentComplete = 100.0
default:
identifier = nil
}
if identifier != nil {
let achievement = GKAchievement(identifier: identifier)
achievement.showsCompletionBanner = true
achievement.percentComplete = percentComplete
}
}
Xcode, похоже, не распознает 'reportAchievementWithCompletionHandler:'. Я набираю 'достижение. 'И начинаю вводить' reportAchievementWithCompletionHandler: ', но, похоже, это не так ???? – user2397282
Метод экземпляра устарел в iOS7. Похоже, вы должны использовать метод * class * method reportAchievements: withCompletionHandler: и передать свой объект достижения в первом параметре (как массив одного элемента, по его мнению, если у вас есть только один, чтобы сообщить.) Возможно, попробуйте 'GKAchievement.reportAchievements ([достижение], withCompletionHandler: nil)'? –