[英]SKAction waitForDuration() blocking SKAction sequence
self.runAction(SKAction.sequence([ SKAction.waitForDuration(1), SKAction.runBlock({ self.speed = 0; print("pause") }), SKAction.waitForDuration(0.1), SKAction.runBlock({ self.speed = realSpeed; print("resume") }) ]))
最后的滑音不会被调用。
但是,当我删除第二个waitForDuration时,将调用最后一个skaction。
self.runAction(SKAction.sequence([ SKAction.waitForDuration(1), SKAction.runBlock({ self.speed = 0; print("pause") }), SKAction.runBlock({ self.speed = realSpeed; print("resume") }) ]))
这是怎么回事
节点的speed
属性会影响在该节点上运行的动作的执行速度。 从文档中
默认值为1.0,这意味着所有操作均以其正常速度运行。 如果您设置不同的速度,则对于在节点及其后代上执行的所有操作而言,时间似乎运行得更快或更慢。 例如,如果将速度值设置为2.0,则动作的运行速度是原来的两倍。
在您的第一个runBlock
,将self
的speed
属性设置为0。这将导致第二个waitForDuration
操作无限慢地运行(假设actualDuration = duration/speed
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.