2014-08-28 3 views
5

Я создаю игру, используя быстрый Xbox Xbox Xbox 6 beta 6, и пытаюсь добавить высокий балл моей игры к доскам лидеров gamecenter. Я создал списки лидеров в gamecenter.Оценка счета для лидеров gamecenter

Итак, как я могу добавить свой высокий балл, который я сохранил как NSUserDefault, к моим доскам лидеров gamecenter?

Я попытался с помощью:

GKScore.reportScore([highScore], withCompletionHandler: nil) 

, но он просто падает. Функция initLeaderboard устарела в ios 8, поэтому я не уверен, что делать.

ответ

7

Сначала вы должны создать объект GKScore. Затем вы устанавливаете значение gkScore.value. Наконец, вы сообщаете счет.

// if player is logged in to GC, then report the score 
if GKLocalPlayer.localPlayer().authenticated { 
    let gkScore = GKScore(leaderboardIdentifier: "leaderBoardID") 
    gkScore.value = score 
    GKScore.reportScores([gkScore], withCompletionHandler: ({ (error: NSError!) -> Void in 
     if (error != nil) { 
      // handle error 
      println("Error: " + error.localizedDescription); 
     } else { 
      println("Score reported: \(gkScore.value)") 
     } 
    })) 
} 
+0

Я реализовал это, что является тем же, что и учебник Джареда Дэвидсона на YouTube, но я заметил, что мои рекорды не обновляются соответствующим образом. «Все время» остается супер не обновленным, знаете ли вы, почему? Благодарю. – msqar

+0

Я ничего не сделал с GameKit. Тем не менее, я помню, что есть проблемы с учетными записями sandbox и листингом. Попробуйте использовать более одной учетной записи изолированной программы для тестирования. Разумеется, убедитесь, что идентификатор leaderboard правильно. –

+0

Спасибо, теперь он работает, создав новую таблицу лидеров, она отлично работает !. – msqar

 Смежные вопросы

  • Нет связанных вопросов^_^