如何通过拖动旋转精灵



当我在屏幕上拖动手指时,我试图旋转精灵。所以我想要的是当我向左拖动手指时,精灵向右旋转,反之亦然,我不知道该怎么做。谁能帮忙。我尝试使用函数"touchesMoved",但我不确定这是否是我应该放置代码的地方,或者它应该放在一个新函数中。

对不起,我对 Spritekit、Swift 和 Xcode 很陌生。

可以使用 SKSpriteNode.zRotation 属性来旋转精灵。并使用touchesBegantouchesMoved功能跟踪滑动距离。

var previousPoint : CGPoint!
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
   previousPoint = (touches.anyObject() as UITouch).locationInView(self.view)
}
override func touchesMoved(touches: NSSet, withEvent event: UIEvent) {
    let currentPoint = (touches.anyObject() as UITouch).locationInView(self.view)
    let distance = currentPoint.x - previousPoint.x
    previousPoint = currentPoint
    sprite.zRotation = sprite.zRotation + distance/100.0
}

最新更新