以编程方式在SKScene和View Controller之间切换?

时间:2017-08-02 19:43:17

标签: swift

我有两个块,当他们触摸时,将播放动画,然后将播放器发送回菜单屏幕。但是,因为播放器控制了块的位置......等等......我无法使用按钮或计时器来截取场景。当我的两个节点(球和球拍)接触时,我想知道一种让我的场景(GameScene)进入我的视图控制器(LoginViewController)的方法。这是我已经为两次触摸所做的编程。

func didBegin(_ contact: SKPhysicsContact) {
    // 1
    var firstBody: SKPhysicsBody
    var secondBody: SKPhysicsBody



                   // 2
    if contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask {
        firstBody = contact.bodyA
        secondBody = contact.bodyB
    } else {
        firstBody = contact.bodyB
        secondBody = contact.bodyA
    }
    // 3
    if firstBody.categoryBitMask == BallCategory && secondBody.categoryBitMask == PaddleCategory {
        let ball = childNode(withName: BallCategoryName) as! SKSpriteNode
        ball.physicsBody?.velocity = CGVector.zero
        let paddle = childNode(withName: PaddleCategoryName) as! SKSpriteNode
        self.view?.isUserInteractionEnabled = false
        paddle.physicsBody?.velocity = CGVector.zero


    }
     }

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

如何在两个场景之间创建一个segue - 命名相应的标识符(例如在故事板中)“test” - 当这些块相互触摸时会触发这样的segue:

performSegueWithIdentifier("test", sender: self)