我正在使用游戏引擎为Android开发游戏。我希望在游戏画面上有一个暂停和恢复按钮。
我已经通过使用MenuScene和暂停我正在使用的游戏
实现了这一点engine.stop();
但是一旦停止引擎,它就不会触发任何触摸或点击事件。
如何再次启动引擎?
或者实现相同的最佳方法是什么?
答案 0 :(得分:4)
好的,虽然我不是发动机的专业人士,但我可以给出一些建议。首先,停止引擎不是您正在寻找的暂停解决方案。所以不是那样,你必须把它做成manuelly,我的意思是;
停止搬家:
为此,如果您正在使用某些物理,则可以使用yourPhysicsWorld.unregisterPhysicsConnector()
函数。
或者您可以将所有移动物体的速度设置为零(setVelocity(0,0)
)
停止更新系统:
您只需使用yourScene.unregisterUpdateHandler()
保存重要数据:
如果您有一些重要数据,则必须先保存它们。我不会提供有关它的详细信息,但如果您不知道如何存储数据,则可以查找SQLite
和SharePreferences
谷歌。
提醒您如果要返回游戏,则必须将更新处理程序和物理连接器注册回场景。
答案 1 :(得分:2)
我发现暂停游戏的最简单方法是执行以下操作:
mScene.setIgnoreUpdate(true);
mScene.setChildScene(mPauseScene, false, true, true);
当mScene
是您的主要游戏场景时,mPauseScene
是暂停场景。
然后,为了恢复游戏,你可以:
mScene.clearChildScene();
mScene.setIgnoreUpdate(false);
由于问题提到暂停/恢复按钮,我强烈推荐this tutorial。它以非常直接的方式显示了如何实现这样一个按钮。我在游戏中使用过它,效果很好。
答案 2 :(得分:0)
暂停游戏:
GameScene.gameScene.setChildScene(pauseScreen, false, true, true);
将这些行添加到您的游戏屏幕中。这样您的游戏就会暂停
恢复比赛:
GameScene.gameScene.clearChildScene();