Swift - SpriteKit - 在永远运行时更新 SKAction.waitForDuration

标签 swift sprite-kit action skaction

我正在尝试更新一个永远运行的序列中的 waitForDuration 操作。

 override func didMoveToView(view: SKView) {
    //code
    runAction(SKAction.repeatActionForever(runSeq()))
}

func runSeq() -> SKAction{
    var difficulty: CGFloat = 0.75

    let updateAction = SKAction.runBlock({
        self.runCount++
        self.runCount %= 4
        println(self.runCount)
        if self.runCount == 0 {
            difficulty -= 0.1
        }

        if self.children.count > 51{
            println("You loose")
        }else{
            self.scoreLabel.text = String(format: "Score: %i", self.score)
        }
    })

    let createAntAction = SKAction.runBlock({self.createAnt()})

    var wait = SKAction.waitForDuration(NSTimeInterval(difficulty))

    let seq = SKAction.sequence([createAntAction, wait, updateAction])

    return seq
}

difficulty 是我想要的值,每 4 个循环我希望它减少一定量。目前,起始值保持不变,不会改变,即使我正在更改 difficulty 值,并且每次都记忆操作顺序。

最佳答案

发生这种情况是因为 wait 已经确定为 .75,并且没有任何改变。 SKAction.waitForDuration(NSTimeInterval(difficulty)) 不是在寻找难度的引用,只是一个值,所以你需要重新考虑你想如何编码。

关于Swift - SpriteKit - 在永远运行时更新 SKAction.waitForDuration,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30241508/

相关文章:

ios - 在 UICollectionView (SWIFT) 中设置默认单元格?

objective-c - @selector 和其他类(Objective-C)

javascript - 如何检查 Action 是否已经加载到 photoshop Action 调色板中?

ios - 什么时候执行方法返回的队列同步任务?

ios - 如何在 jenkins 中获取 XCTAttachments

swift - 使用 sprite 工具包垂直滚动背景的问题

ios - Swift/SpriteKit - 何时使用多个 ViewController?

ios - 以不同的速度摆动箭头

java - 如何在 jtable 的单元格内添加按钮并赋予它 Action

ios - CoreData中如何将数据存储为多对多关系?