我正在 Swift中试验SpriteKit,但似乎无法创建一个在序列中使用的动作数组.我把它分开试图找出问题所在,但到目前为止还没有运气. func animateBackground(){ let moveLeft = SKAction.moveByX(100, y: 0, d
func animateBackground(){ let moveLeft = SKAction.moveByX(100, y: 0, duration: 3) moveLeft.timingMode = SKActionTimingMode.EaseInEaseOut let moveRight = SKAction.reversedAction(moveLeft) let actions = [moveLeft, moveRight] // <--- here there be dragons/trouble let sequence = SKAction.sequence(actions) let repeat = SKAction.repeatActionForever(sequence) }
当我尝试创建actions-array时,我得到错误“无法转换表达式的类型’Array’来键入’ArrayLiteralConvertible’”所以,我想我可能需要更明确并尝试将其更改为
var actions: SKAction[] = [moveLeft, moveRight]
这似乎打倒了房子,并没有很好的方式,导致SourceKit terminated错误……
您正在为moveRight的数组添加一个函数,而不是SKAction本身.请尝试使用此代码:let moveRight = SKAction.reversedAction(moveLeft)()