我在SpriteKit游戏中声明了一个方法,该游戏运行的是一个SpriteNode向上移动并在竞争中向下移动的动作。
func yFluctuation(node: SKSpriteNode) {
let flucUp = SKAction.moveToY(node.position.y + 9, duration: 2.0)
let flucDown = SKAction.moveToY(node.position.y - 9, duration: 2.0)
node.runAction(flucUp, completion: {node.runAction(flucDown)})
}
我已尝试过SKAction.repeatActionForver()
,但它仅适用于flucUp
,如果我在其中包含完成块,则会出错。如果有人有任何解决方案,即使这意味着改变功能的结构,我将非常感激。
提前致谢。
答案 0 :(得分:2)
我没有办法测试它,但会重复一个序列永远有效吗?我承认它在黑暗中是一种射击。
SKAction.repeatActionForever(SKAction.sequence([flucUp, flucDown]))