diff options
author | Max Horn | 2009-03-01 04:42:46 +0000 |
---|---|---|
committer | Max Horn | 2009-03-01 04:42:46 +0000 |
commit | dd98126423d915c19baf43184ba40fb0d9a68b64 (patch) | |
tree | dc6c65d5ca3d7c5c69f54e9dc980067980a2ae9a /engines/queen/queen.cpp | |
parent | 3fcbda829a2aa17cbaf6423d34f69214b91b0e6c (diff) | |
download | scummvm-rg350-dd98126423d915c19baf43184ba40fb0d9a68b64.tar.gz scummvm-rg350-dd98126423d915c19baf43184ba40fb0d9a68b64.tar.bz2 scummvm-rg350-dd98126423d915c19baf43184ba40fb0d9a68b64.zip |
Engines: Fused several init&go methods into a single run method
svn-id: r39003
Diffstat (limited to 'engines/queen/queen.cpp')
-rw-r--r-- | engines/queen/queen.cpp | 55 |
1 files changed, 26 insertions, 29 deletions
diff --git a/engines/queen/queen.cpp b/engines/queen/queen.cpp index b8523a9a53..802a432546 100644 --- a/engines/queen/queen.cpp +++ b/engines/queen/queen.cpp @@ -444,35 +444,7 @@ GUI::Debugger *QueenEngine::getDebugger() { return _debugger; } -Common::Error QueenEngine::go() { - _logic->start(); - if (ConfMan.hasKey("save_slot") && canLoadOrSave()) { - loadGameState(ConfMan.getInt("save_slot")); - } - _lastSaveTime = _lastUpdateTime = _system->getMillis(); - - while (!shouldQuit()) { - if (_logic->newRoom() > 0) { - _logic->update(); - _logic->oldRoom(_logic->currentRoom()); - _logic->currentRoom(_logic->newRoom()); - _logic->changeRoom(); - _display->fullscreen(false); - if (_logic->currentRoom() == _logic->newRoom()) { - _logic->newRoom(0); - } - } else if (_logic->joeWalk() == JWM_EXECUTE) { - _logic->joeWalk(JWM_NORMAL); - _command->executeCurrentAction(); - } else { - _logic->joeWalk(JWM_NORMAL); - update(true); - } - } - return Common::kNoError; -} - -Common::Error QueenEngine::init() { +Common::Error QueenEngine::run() { initGraphics(GAME_SCREEN_WIDTH, GAME_SCREEN_HEIGHT, false); _resource = new Resource(); @@ -501,6 +473,31 @@ Common::Error QueenEngine::init() { registerDefaultSettings(); readOptionSettings(); + _logic->start(); + if (ConfMan.hasKey("save_slot") && canLoadOrSave()) { + loadGameState(ConfMan.getInt("save_slot")); + } + _lastSaveTime = _lastUpdateTime = _system->getMillis(); + + while (!shouldQuit()) { + if (_logic->newRoom() > 0) { + _logic->update(); + _logic->oldRoom(_logic->currentRoom()); + _logic->currentRoom(_logic->newRoom()); + _logic->changeRoom(); + _display->fullscreen(false); + if (_logic->currentRoom() == _logic->newRoom()) { + _logic->newRoom(0); + } + } else if (_logic->joeWalk() == JWM_EXECUTE) { + _logic->joeWalk(JWM_NORMAL); + _command->executeCurrentAction(); + } else { + _logic->joeWalk(JWM_NORMAL); + update(true); + } + } + return Common::kNoError; } |