2017-08-11 86 views
1

我有几个部分球员(手臂,手,武器),每当玩家移动变化模式(跑步,站立,瞄准),这些部件的所有动作被删除,新的中运行。如何删除SpriteKit中除键以外的所有操作?

现在,当玩家被解雇,我跑武器节点上的“拍摄”的动作,而当播放器停止射击,我运行weapon.removeAction(forKey: "shooting")

的问题是:这种“投篮”行动显然被删除当玩家改变移动模式时(因为武器的动作全部被移除)。

有什么办法消除所有行动EXCEPT (forKey: "shooting")

我想给所有其他行动的关键“移动”,但很快就意识到,多个动作不能有相同的密钥(它会覆盖与该键之前的动作和之前的动作永远不会运行)。 (任何修复此btw?只是好奇)

显而易见的解决方案是在weapon的单独节点上运行“拍摄”操作,但这将不那么优雅。

回答

1

就个人而言,我想补充一个枪节点到你的精灵,并把拍摄的动作在此节点上,这样你可以删除所有行动

有没有办法来枚举所有你的行动,你可以通过删除键或全部删除,就是这样。

如果您提取您的行动,全部删除,然后将其重新添加它,它会重新启动你的行动,你也不想。