我目前有以下代码,每2秒钟愉快地重复一次动作,但我希望它发生在一个完全随机的时间段,例如1到10秒之间,我尝试使用arch4random进行几行不同的代码其中没有效果。我希望这是一个简单的解决方案,非常感谢任何建议。
感谢runAction(SKAction.repeatActionForever(SKAction.sequence([SKAction.runBlock(callBird), SKAction.waitForDuration(2.0)])))
答案 0 :(得分:4)
如果您尝试随机化持续时间参数,a + waitForDuration:withRange:将完成这项工作。
runAction(
SKAction.repeatActionForever(
SKAction.sequence([SKAction.runBlock({/*do your stuff*/}),
SKAction.waitForDuration(2, withRange: 3) ])))
来自文档:
每次执行操作时,操作都会计算新的随机数 持续时间的价值。持续时间可以在任何方向上变化 最多为durationRange参数值的一半。
表示如果持续时间设置为2且范围参数设置为3,则可能的持续时间值将在0.5和3.5之间变化。