gpt4 book ai didi

swift - 在 SpriteKit 中显示 Game Center 排行榜

转载 作者:搜寻专家 更新时间:2023-10-31 23:03:06 25 4
gpt4 key购买 nike

我正在开发一款游戏,我正在寻找帮助或代码以在用户点击按钮时在我的应用中显示 GameCenter 排行榜。我不知道从哪里开始,因为所有其他答案似乎都是针对 Obj-C 的,谢谢!

编辑:下面的答案非常有效,但对于那些想知道如何在 SpriteKit 中执行此操作的人来说,只需将以下方法添加到 GameViewController 并添加一个 Notification Center Observer

NSNotificationCenter.defaultCenter().addObserver(self, selector: "showLeaderboard", name: "showLeaderboard", object: nil)

在您的 SKScene 类中,只需调用该观察者即可。

NSNotificationCenter.defaultCenter().postNotificationName("showLeaderboard", object: nil)

只是为了帮助那些疑惑的人!

最佳答案

在您的类中包含 GKGameCenterControllerDelegate 协议(protocol)。

class ViewController: UIViewController, GKGameCenterControllerDelegate

此方法在点击“完成”时关闭 Game Center View :

func gameCenterViewControllerDidFinish(gcViewController: GKGameCenterViewController!) {
self.dismissViewControllerAnimated(true, completion: nil)
}

此函数包含显示排行榜所需的代码:

func showLeaderboard() {

// declare the Game Center viewController
var gcViewController: GKGameCenterViewController = GKGameCenterViewController()
gcViewController.gameCenterDelegate = self

gcViewController.viewState = GKGameCenterViewControllerState.Leaderboards

// Remember to replace "Best Score" with your Leaderboard ID (which you have created in iTunes Connect)
gcViewController.leaderboardIdentifier = "Best_Score"
// Finally present the Game Center ViewController
self.showViewController(gcViewController, sender: self)
self.navigationController?.pushViewController(gcViewController, animated: true)
self.presentViewController(gcViewController, animated: true, completion: nil)
}

您现在可以通过按 UIButton 来触发函数 showLeaderboard:

@IBAction func buttonShowLeaderboard(sender: AnyObject) {
showLeaderboard()
}

关于swift - 在 SpriteKit 中显示 Game Center 排行榜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31079285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com