【发布时间】:2016-12-04 01:00:51
【问题描述】:
我正在编写旧版 Space Invaders 游戏的克隆。入侵者在update()期间移动并随机投掷炸弹;触摸屏幕时玩家船会移动。如果入侵者炸弹击中玩家,我希望一切都停止,除了玩家的船死亡动画。完成后,我希望一切重新开始。
实现这一目标的最佳方法是什么?我考虑枚举所有节点,将paused 属性设置为true;在update() 中添加检查以查看死亡动画是否在播放器上运行,如果是则跳过移动,如果动画正在运行,同样忽略用户输入。
另一种方法是创建一个世界节点,其中所有内容都是其子节点。然后我可以暂停世界节点并将玩家船的副本添加到运行动画的场景中,使其看起来除了玩家的船死亡动画之外一切都停止了。
对于我想要的效果,这两个似乎都需要做很多工作。有什么建议吗?
【问题讨论】:
-
你可以看看我的一个类似太空侵略者游戏的repo:link已经实现了这个功能,除了动画之外的暂停屏幕。
-
@AntonNovoselov - 谢谢。所以你已经走上了让一切都成为一个可通行节点的孩子的路线,允许你独立地暂停星域、敌人等?
标签: ios swift sprite-kit