检查SKNode是否正在运行某个操作

boe*_*ron 2 sprite-kit skaction sknode swift3

我有一个运行不同操作的SKNode.根据我想要触发其他行为的运行操作.为此,我需要了解如何检查我的SKNode上当前正在运行的操作.我知道.hasActions()但这会返回一个普通的真/假值,这对我的情况没有帮助.

有没有人有更好的解决方案?

提前致谢

Swe*_*per 5

当您开始运行操作时,使用此方法为其分配密钥:

yourNode.run(someAction, withKey: "someKey")
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用以下密钥获取操作:

yourNode.action(forKey: "someKey")
Run Code Online (Sandbox Code Playgroud)

如果上面的cal返回nil,那表示节点没有运行该动作!