Closed. This question needs to be more focused 。它目前不接受答案。
想改善这个问题吗?更新问题,使其仅通过 editing this post 关注一个问题。
6年前关闭。
Improve this question
我无法遵循 Stack Overflow 上的其他教程和答案,那么如何在我的游戏中,在 Swift 的 SpriteKit 中实现 GameCenter 排行榜?人们会使用什么代码,它会放在 GameScene 还是 GameViewController 中?我已经在 iTunes Connect 上设置了排行榜。我该怎么办?谢谢!
然后就可以打开排行榜了:
我建议在您的 View Controller 中执行这些操作。在 viewDidAppear 上验证播放器,但不是 viewDidLoad
想改善这个问题吗?更新问题,使其仅通过 editing this post 关注一个问题。
6年前关闭。
Improve this question
我无法遵循 Stack Overflow 上的其他教程和答案,那么如何在我的游戏中,在 Swift 的 SpriteKit 中实现 GameCenter 排行榜?人们会使用什么代码,它会放在 GameScene 还是 GameViewController 中?我已经在 iTunes Connect 上设置了排行榜。我该怎么办?谢谢!
最佳答案
首先,您必须对玩家进行身份验证:
var localPlayer = GKLocalPlayer.localPlayer()
localPlayer.authenticateHandler = {(viewController : UIViewController!, error : NSError!) -> Void in
if ((viewController) != nil) {
self.presentViewController(viewController, animated: true, completion: nil)
}else{
println((GKLocalPlayer.localPlayer().authenticated))
}
}
然后就可以打开排行榜了:
func showLeaderboard() {
var gcViewController: GKGameCenterViewController = GKGameCenterViewController()
gcViewController.gameCenterDelegate = self
gcViewController.viewState = GKGameCenterViewControllerState.Leaderboards
gcViewController.leaderboardIdentifier = "YOUR_BOARD_NAME"
self.showViewController(gcViewController, sender: self)
self.navigationController?.pushViewController(gcViewController, animated: true)
}
func gameCenterViewControllerDidFinish(gcViewController: GKGameCenterViewController!)
{
self.dismissViewControllerAnimated(true, completion: nil)
}
我建议在您的 View Controller 中执行这些操作。在 viewDidAppear 上验证播放器,但不是 viewDidLoad
关于swift - 我如何实现 GameCenter 排行榜?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28130960/
10-12 06:14