在SpriteKit中使用动作

时间:2016-11-28 21:12:51

标签: swift sprite-kit swift3

Swift noob在这里请耐心等待我!

我一直在按照教程将动作实现到我的SpriteKit(Swift 3)游戏中。我有以下代码:

class GameScene: SKScene {


    let player = SKSpriteNode(imageNamed: "Airplane")

    override func didMove(to view: SKView) {

        backgroundColor = SKColor.white

        player.position = CGPoint(x: size.width * 0.1, y: size.height * 0.5)

        addChild(player)

        if motionManager.isAccelerometerAvailable == true {

                motionManager.startAccelerometerUpdates(to: OperationQueue.currentQueue(), withHandler:{

                data, error in

                var currentX = self.player.position.x

                // 3
                if data.acceleration.x < 0 {
                    self.destX = currentX + CGFloat(data.acceleration.x * 100)
                }

                else if data.acceleration.x > 0 {
                    self.destX = currentX + CGFloat(data.acceleration.x * 100)
                }

            })

        }

    }
}

我在startAccelerometerUpdates行上遇到与操作队列有关的错误:

'Call value of non-function type OperationQueue'

我已经尝试了几种方法来做这个并一直在寻找它,我是否错过了明显的?

1 个答案:

答案 0 :(得分:3)

尝试

OperationQueue.current

而不是

OperationQueue.currentQueue()

Apple为Swift 3做了很多这些改变。