GRIM/EMI: Stop frame time while debugger is open.

This commit is contained in:
Ingo van Lil 2013-12-01 20:32:44 +01:00
parent ca07e34440
commit 9c044de7b6
2 changed files with 8 additions and 1 deletions

View File

@ -75,7 +75,7 @@ GfxBase *g_driver = NULL;
int g_imuseState = -1;
GrimEngine::GrimEngine(OSystem *syst, uint32 gameFlags, GrimGameType gameType, Common::Platform platform, Common::Language language) :
Engine(syst), _currSet(NULL), _selectedActor(NULL) {
Engine(syst), _currSet(NULL), _selectedActor(NULL), _pauseStartTime(0) {
g_grim = this;
_debugger = new Debugger();
@ -1247,6 +1247,12 @@ void GrimEngine::openMainMenuDialog() {
void GrimEngine::pauseEngineIntern(bool pause) {
g_imuse->pause(pause);
g_movie->pause(pause);
if (pause) {
_pauseStartTime = _system->getMillis();
} else {
_frameStart += _system->getMillis() - _pauseStartTime;
}
}
void GrimEngine::debugLua(const Common::String &str) {

View File

@ -257,6 +257,7 @@ protected:
Common::Platform _gamePlatform;
Common::Language _gameLanguage;
Debugger *_debugger;
uint32 _pauseStartTime;
};
extern GrimEngine *g_grim;