Android 如何暂停并继续进行游戏?

Android 如何暂停并继续进行游戏?,android,andengine,game-engine,Android,Andengine,Game Engine,我正在使用游戏引擎为Android开发一个游戏。我想在游戏屏幕上有一个暂停和恢复按钮 我已经通过使用MenuScene实现了这一点,并暂停了我正在使用的游戏 engine.stop(); 但一旦它停止引擎,就不会触发任何触摸或点击事件 如何再次启动发动机 或者什么是最好的实现方法?好的,虽然我在安德林不专业,但我可以给你一些建议。首先,停止引擎不是您正在寻找的暂停解决方案。所以,你必须手动去做,我的意思是 停止移动东西: 要做到这一点,如果您正在使用某些物理,可以使用yourPhysicsW

我正在使用游戏引擎为Android开发一个游戏。我想在游戏屏幕上有一个暂停和恢复按钮

我已经通过使用MenuScene实现了这一点,并暂停了我正在使用的游戏

engine.stop();
但一旦它停止引擎,就不会触发任何触摸或点击事件

如何再次启动发动机


或者什么是最好的实现方法?

好的,虽然我在安德林不专业,但我可以给你一些建议。首先,停止引擎不是您正在寻找的暂停解决方案。所以,你必须手动去做,我的意思是

  • 停止移动东西: 要做到这一点,如果您正在使用某些物理,可以使用
    yourPhysicsWorld.unregisterPhysicsConnector()
    函数。 或者您可以将所有移动物体的速度设置为零(
    setVelocity(0,0)

  • 停止更新系统: 只需使用
    yoursecene.unregisterUpdateHandler()

  • 保存重要数据: 如果你有一些重要数据,你必须先保存它们。我不会给出详细信息,但如果你不知道如何存储数据,你可以在谷歌上查找
    SQLite
    SharePreferences

提醒您,如果要返回游戏,必须将更新处理程序和物理连接器注册回场景

暂停游戏:

GameScene.gameScene.setChildScene(pauseScreen, false, true, true); 
将这些线添加到游戏屏幕,以便游戏进入暂停状态

要恢复游戏,请执行以下操作:

 GameScene.gameScene.clearChildScene();

我发现暂停游戏的最简单方法是执行以下操作:

mScene.setIgnoreUpdate(true);
mScene.setChildScene(mPauseScene, false, true, true);
mScene
是您的主要游戏场景,而
mPauseScene
是暂停场景时

然后,要恢复游戏,请执行以下操作:

mScene.clearChildScene();
mScene.setIgnoreUpdate(false);

由于问题中提到了暂停/恢复按钮,我强烈推荐。它以非常直接的方式展示了如何实现这样一个按钮。我在游戏中使用过它,效果很好。

请检查我的答案。它可能会帮助您解决问题。但我有问题,如果我有其他孩子的场景附加到我当前的游戏场景。mScene.clearChildScene();也会清除那些儿童场景。有什么办法可以解决这个问题。