[英]Easy-Game-Center Sprite-Kit Integration
我正在尝试在游戏中使用来自GitHub的DaRkD0G的Easy-Game-Center(swift sprite kit)。 但是,在调用EasyGameCenter.Swift(
EasyGameCenter.sharedInstance(self)
在我的GameScene中),我收到一条错误消息:“无法将类型'GameScene'的值转换为预期的参数类型'UIViewController'”。 在过去的几天中,我尝试在EasyGameCenter中更改不同的类类型,但始终会得到答案。 有没有人有什么建议?
我是这个项目的创造者。
没有UIViewController,您将无法使用Apple的Game Center!
Framework Game Center需要UIViewController才能工作 ,这是Game Center Apple的官方文档。
而且Easy Game Center需要使用委托UIViewController创建才能完美地工作, 而不可能使用Game Center
Projet Game Center + Sprite Kit示例项目: http : //www.raywenderlich.com/60980/game-center-tutorial-how-to-make-a-simple-multiplayer-game-with-sprite-kit-part-1
使用UIViewController创建实例:
这是用于创建EasyGameCenter的实例
override func viewDidLoad() {
super.viewDidLoad()
EasyGameCenter.sharedInstance(self)
}
添加此内容,如果您将UIViewController更改为通知视图控制器委托已更改,那么如果您不更改UIViewController则不需要此方法,这是可选的
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
EasyGameCenter.delegate = self
}
就是这样,现在您可以使用CocoaPods导入项目
pod 'EasyGameCenter', :git => 'https://github.com/DaRkD0G/Easy-Game-Center-Swift.git'
从未使用过该库,但如消息所示:
“无法将类型'GameScene'的值转换为预期的参数类型'UIViewController'”
这是您正在调用的方法:
class func sharedInstance(delegate:UIViewController)-> EasyGameCenter {
if Static.instance == nil {
dispatch_once(&Static.onceToken) {
Static.instance = EasyGameCenter()
Static.delegate = delegate
Static.instance!.loginPlayerToGameCenter()
}
}
return Static.instance!
}
您必须传递UIViewController作为参数而不是GameScene。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.