如何从GameCenter获得玩家排名

时间:2016-04-18 04:55:50

标签: ios swift game-center

在我向记分牌提交高分后,我正试图在游戏中心获得玩家的全球排名。但是我找不到任何关于这样做的文档,我也担心“得分参数”不会立即准确。

如何在Gamecenter中获得球员排名。

这是我目前的分数提交代码

if GKLocalPlayer.localPlayer().authenticated
{
    let scoreReporter = GKScore(leaderboardIdentifier: "MY APP")
    scoreReporter.value = Int64(score)
    let scoreArray: [GKScore] = [scoreReporter]
    GKScore.reportScores(scoreArray, withCompletionHandler: {(error : NSError?) -> Void in
        if error != nil
        {
            print("Good 2")

        }
        else
        {
            print("Good 1")
        }
    })
}

1 个答案:

答案 0 :(得分:1)

  

GKScore有一个名为rank的属性。它报告玩家的等级为   每个排行榜规格。

let leaderBoard : GKLeaderboard = GKLeaderboard()

leaderBoard.timeScope = .AllTime
leaderBoard.range = NSMakeRange(1, 1)
leaderBoard.identifier = "Your Leaderboard ID"
leaderBoard.loadScoresWithCompletionHandler { (score : [GKScore]?, error:NSError?) -> Void in

    if(error != nil){
        // Handle Error
    }else{

        if(score?.count > 0){

            let score : GKScore = leaderBoard.localPlayerScore!

            let rank : NSInteger = score.rank

            print("rank \(rank)")

        }

    }

}