Sprite kit 如何删除SpriteKit中除forkey之外的所有操作?

Sprite kit 如何删除SpriteKit中除forkey之外的所有操作?,sprite-kit,action,removeall,Sprite Kit,Action,Removeall,我有一个玩家有几个部分(手臂、手、武器),每当玩家改变移动模式(跑步、站立、瞄准)时,这些部分上的所有动作都会被移除,并运行新的动作 现在,当玩家开火时,我在武器节点上运行一个“射击”动作,当玩家停止射击时,我运行武器.removeAction(forKey:“射击”) 问题是:当玩家改变移动模式时,这个“射击”动作显然会被移除(因为武器的动作都被移除) 除了(forKey:“shooting”)之外,是否有任何方法可以删除所有操作 我尝试给所有其他动作设置“移动”键,但很快意识到多个动作不能有

我有一个玩家有几个部分(手臂、手、武器),每当玩家改变移动模式(跑步、站立、瞄准)时,这些部分上的所有动作都会被移除,并运行新的动作

现在,当玩家开火时,我在武器节点上运行一个“射击”动作,当玩家停止射击时,我运行
武器.removeAction(forKey:“射击”)

问题是:当玩家改变移动模式时,这个“射击”动作显然会被移除(因为武器的动作都被移除)

除了
(forKey:“shooting”)
之外,是否有任何方法可以删除所有操作

我尝试给所有其他动作设置“移动”键,但很快意识到多个动作不能有相同的键(它会用该键覆盖上一个动作,并且上一个动作永远不会运行)。(顺便说一句,有什么办法吗?只是好奇而已)


显而易见的解决方案是在
武器
的一个单独节点上运行“射击”动作,但这样做就不那么优雅了。

我个人会在你的精灵中添加一个枪节点,并将射击动作放在该节点上,这样你就可以删除所有动作

没有办法枚举您的所有操作,您可以按键删除,或者全部删除,就是这样

如果您提取您的操作,删除所有,然后将其添加回,它将重新启动您的操作,这也是您不希望的