暂停 GKAgent 的最佳方法是什么?
我的游戏在某些关卡中使用了一些代理,当我的游戏暂停/gameOver 时我需要暂停它们。
我不会在我的游戏中暂停整个 SKScene,而是暂停一个 worldNode,因为它给了我更大的灵活性来显示 spriteKit 内容,即使在游戏暂停时也是如此。
我正在使用
updateWithDeltaTime...
更新我的代理行为并相应地移动它们的方法。
我考虑过停止更新方法,但代理仍将移动到他们最后一个已知的 GKGoal。
到目前为止,我发现的最佳解决方案是在我的游戏暂停时将代理速度/maxSpeed 设置为 0。我在这里遇到的问题是,在恢复时将速度重置为代理以前的速度有点痛苦,尤其是在使用具有自己行为的多个代理时。它们似乎也消失了,而不是在恢复时重新出现。
据我了解,没有 agent.paused 方法或类似的方法。
什么是暂停代理而不暂停 SKScene 本身的好方法?
感谢您的任何帮助和建议。