SpriteKit游戏中心认证

时间:2016-09-13 23:33:28

标签: swift macos sprite-kit game-center game-center-leaderboard

我正在做一个精灵套装游戏。我遇到了Game Center的问题:我如何验证玩家? 在AppDelegate.swift中我有这个代码:

     func authenticateLocalPlayer()
     {


     var localPlayer = getLocalPlayer() // see GKLocalPlayerHack.h
    localPlayer.authenticateHandler =
        {(viewController : NSViewController?, error : NSError?) -> Void in
            if viewController != nil
            {
                self.presentViewController(viewController!, animated:true, completion: nil)

                        }

但是我收到了这个错误:

Value of type 'AppDelegate' has no member 'presentViewController'

在这一行:

 self.presentViewController(viewController!, animated:true, completion: nil)

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

我认为你需要使用这样的东西。我不是100%确定你为parentWindow位设置的内容,我的OSX知识是有限的。

let dialogController = GKDialogController.shared()
dialogController.parentWindow = yourWindow // not exactly sure what you need to set here
dialogController.presentViewController(viewController)

Implementing GameKit.framework on OSX, cannot authenticate localPlayer

https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/GameKit_Guide/DisplayingGameCenterUserInterfaceElements/DisplayingGameCenterUserInterfaceElements.html

希望这有帮助。

答案 1 :(得分:0)

我建议使用viewcontroller ;-) 看看我的回答,我不会一对一地复制它。

Adding Game Center Leaderboard