【发布时间】:2015-11-01 17:25:44
【问题描述】:
我的精灵套件游戏有问题,我使用后立即重新启动
我的 gameoverviewcontroller 的模型 segue。
每次重新启动游戏后,fps 也会除以 2。
所以我实际上需要一种在我使用 segue 后删除游戏的方法。
我试过 self.dismissViewControllerAnimated(true, completion: nil) 但我真的不知道应该放在哪里。
我的故事板中有 3 个视图控制器,其中 1 个首先使用带有模态的按钮连接到我播放游戏场景的第二个按钮。
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
print("start vc")
// Configure the view.
let skView = self.view as! SKView
skView.showsFPS = true
skView.showsNodeCount = true
skView.multipleTouchEnabled = true
/* Sprite Kit applies additional optimizations to improve rendering performance */
skView.ignoresSiblingOrder = true
/* Set the scale mode to scale to fit the window */
Scene = GameScene(size: skView.bounds.size)
Scene.scaleMode = .AspectFill
Scene.viewController = self
skView.presentScene(Scene)
}
最后,当玩家死亡时,我在游戏场景中使用它。swift
self.viewController?.performSegueWithIdentifier("GameOver", sender: self.viewController!)
这个在 gameviewcontroller.swift 中
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "GameOver" {
let destViewController: GameOverViewController = segue.destinationViewController as! GameOverViewController
destViewController.Score = Scene.Score
destViewController.screenShot = Scene.image
print("segue")
Scene.viewController = nil
}
}
转到第三个视图控制器。
现在我已经将多个打印命令抛出了我的代码。
我看到segue完成后游戏会自动重启。
有没有人知道我该如何解决这个问题,或者知道我应该如何使用驳回功能。
感谢您的问候
【问题讨论】:
标签: ios swift sprite-kit skscene