从GKLeaderboard中提取数据

时间:2016-11-16 11:29:06

标签: swift game-center-leaderboard

好的,所以我花了很多时间在网上寻求帮助,但没有成功,所以我想要一些帮助。

我正在使用SpriteKit制作游戏,我决定实施自己的排行榜风格,而不是笨重的游戏中心默认。我已设法将用户登录到GC,但无法找到正确(和工作)的Swift 3代码,用于从排行榜中提取信息。我想拉出前10名的得分,以及当前的用户得分(如果他们还没有进入前10名)。我想要的信息是位置,用户名和分数。

我知道这是一个相当简单的概念,但是每个在线教程都使用默认的GC视图,或者是非常旧/过时的代码,它们不再有效。我只需要知道如何从排行榜中提取这些信息,然后我就可以自己处理它了!

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

似乎Apple在Swift中没有正确的示例代码,但这里的Swift版本松散地基于他们的Objective-C示例:

let leaderboard = GKLeaderboard()
leaderboard.playerScope = .global
leaderboard.timeScope = .allTime
leaderboard.identifier = "YourIdentifier"

leaderboard.loadScores { scores, error in
    guard let scores = scores else { return }
    for score in scores {
        print(score.value)
    }
}

请注意,这只是Apple的Objective-C代码的翻译,我还没有用真实数据进行测试。

相关问题