swift 3动作速度特性

swift 3动作速度特性,swift,sprite-kit,Swift,Sprite Kit,我试图更改SKAction动画的速度属性。我有几个菜单按钮,上面有一些图像剪辑(来自视频短片)。现在我想改变这个剪辑的速度。首先我尝试更改动画SKAction的timePerSeconds,现在我发现SKAction本身有一个speed属性 但是没有任何东西,速度=0.0应该停止动画,我尝试了动画或repeatforever部分。有什么想法吗 // all anim sequences in an array var mainAktionArray = [SKAction()] let me

我试图更改SKAction动画的速度属性。我有几个菜单按钮,上面有一些图像剪辑(来自视频短片)。现在我想改变这个剪辑的速度。首先我尝试更改动画SKAction的timePerSeconds,现在我发现SKAction本身有一个speed属性

但是没有任何东西,速度=0.0应该停止动画,我尝试了动画或repeatforever部分。有什么想法吗

// all anim sequences in an array
var mainAktionArray = [SKAction()]


let menuAnimation = SKAction.animate(with: menuFrames, timePerFrame: frameTime )
let runForEver = SKAction.repeatForever(menuAnimation)
mainActionArray.append(runForEver)
menu.run(runForEver)


func setFrameRate(wert : Float32){

 menuSpeed = CGFloat(wert)
 menuSpeed = 0.0

 for el in mainActionArray {
     el.speed = menuSpeed
 }
}

调用run命令时,其中的操作将复制到节点,而不是引用。操作是不可变的对象,允许跨多个节点安全地使用它。这允许您跨多个节点使用一个动作变量


如果要设置特定的速度,则需要将操作从节点中拉出。要做到这一点,你需要通过执行
menu.run(runForEver,使用key“runForEver”)
为它分配一个键,然后你可以使用
let action=menu.action(forKey:“runForEver”)
提取它,然后设置
action.speed=0

好的,我不需要将动作放入数组,太棒了。坦克斯!