I have the following code to move an SKSpriteNode.
SKSpriteNode
let moveDown = SKAction.moveBy(CGVectorMake(0, -120), duration: 1) let moveUp = SKAction.move
You should run an action with key:
square.runAction(SKAction.repeatActionForever(moveSequence), withKey:"moving")
Then, use action's speed property to pause it:
if let action = square.actionForKey("moving") { action.speed = 0 }
or to unpause it:
action.speed = 1