swift - 执行 Action 时让 Sprite 节点规模变大?

标签 swift sprite-kit

所以我有一个名为 savior 的 Sprite ,它最初设置为以下大小:savior.setScale(0.2)

当用户触摸屏幕时,将执行以下操作:

savior.runAction(SKAction.repeatActionForever(stopSaviorAnimate))

savior.runAction(SKAction.sequence([diagonalRight,
    SKAction.runBlock({
        let Touchdelay = 0.75 * Double(NSEC_PER_SEC)
        let Touchtime = dispatch_time(DISPATCH_TIME_NOW, Int64(Touchdelay))
        //during delay
        dispatch_after(Touchtime, dispatch_get_main_queue()) {
            //after delay
            self.savior.runAction(backToPlace)
            self.savior.runAction(SKAction.repeatActionForever(startUpSavior))
        }
    })
]))

当执行 diagonalRight 时(不是在之后或之前,而是同时执行),我需要 Sprite “增长”或逐渐缩放以达到 0.3 的比例延迟期间。

我尝试在延迟期间编写savior.setScale(0.3),但 Sprite 并没有增长 - 它只是在diagonalRight之后立即缩放到0.3发生,这不是我需要的。

我该怎么做?

最佳答案

对于缩放动画,您可以使用 scaleTo SKAction

let scale : CGFloat = 0.3
let duration : NSTimeInterval = 1.0
let scaleAction = SKAction.scaleTo(scale, duration: duration)
node.runAction(scaleAction)

关于swift - 执行 Action 时让 Sprite 节点规模变大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28800573/

相关文章:

swift - SpriteKit - SKActions 或更新函数中的位置

ios - gameViewController 背景颜色无法更改

ios - JSValue 初始化( bool :in:) vs JSValueMakeBoolean()

ios - 如何从 WKWebView 完成加载获取标题

ios7 - 创建跳跃 Action

ios - 根据 Sprite 的当前位置让 Sprite 移动到某个位置?

swift - 使用 Swift 在 SpriteKit 中添加生命 Sprite

ios - 如何使用 AVFoundation 将预览(缩放)图像保存为照片?

swift - 角度渐变层

swift - UINavigationBar添加搜索按钮 : Swift