diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/parallaction/input.cpp | 2 | ||||
-rw-r--r-- | engines/queen/input.cpp | 1 | ||||
-rw-r--r-- | engines/queen/journal.cpp | 1 | ||||
-rw-r--r-- | engines/queen/logic.cpp | 10 | ||||
-rw-r--r-- | engines/queen/queen.cpp | 4 | ||||
-rw-r--r-- | engines/queen/queen.h | 3 | ||||
-rw-r--r-- | engines/queen/talk.cpp | 2 |
7 files changed, 10 insertions, 13 deletions
diff --git a/engines/parallaction/input.cpp b/engines/parallaction/input.cpp index 26135610fc..0fc00ce03b 100644 --- a/engines/parallaction/input.cpp +++ b/engines/parallaction/input.cpp @@ -80,7 +80,7 @@ uint16 Input::readInput() { break; case Common::EVENT_QUIT: - _quit = true; + _vm->_quit = true; return KeyDown; default: diff --git a/engines/queen/input.cpp b/engines/queen/input.cpp index 5a4741c222..e7fcf84959 100644 --- a/engines/queen/input.cpp +++ b/engines/queen/input.cpp @@ -120,7 +120,6 @@ void Input::delay(uint amount) { break; case Common::EVENT_QUIT: - _vm->quitGame(); if (_cutawayRunning) _cutawayQuit = true; return; diff --git a/engines/queen/journal.cpp b/engines/queen/journal.cpp index 0327fb74b8..c0bd3837c1 100644 --- a/engines/queen/journal.cpp +++ b/engines/queen/journal.cpp @@ -85,7 +85,6 @@ void Journal::use() { handleMouseWheel(1); break; case Common::EVENT_QUIT: - _vm->quitGame(); return; default: break; diff --git a/engines/queen/logic.cpp b/engines/queen/logic.cpp index 89e8f56fe1..7fcc761018 100644 --- a/engines/queen/logic.cpp +++ b/engines/queen/logic.cpp @@ -2076,7 +2076,7 @@ bool LogicDemo::changeToSpecialRoom() { displayRoom(currentRoom(), RDM_FADE_NOJOE, 100, 2, true); playCutaway("CLOGO.CUT"); sceneReset(); - if (_vm->_quit) + if (_vm->quit()) return true; currentRoom(ROOM_HOTEL_LOBBY); entryObj(584); @@ -2131,10 +2131,10 @@ bool LogicGame::changeToSpecialRoom() { } else if (currentRoom() == FOTAQ_LOGO && gameState(VAR_INTRO_PLAYED) == 0) { displayRoom(currentRoom(), RDM_FADE_NOJOE, 100, 2, true); playCutaway("COPY.CUT"); - if (_vm->_quit) + if (_vm->quit()) return true; playCutaway("CLOGO.CUT"); - if (_vm->_quit) + if (_vm->quit()) return true; if (_vm->resource()->getPlatform() != Common::kPlatformAmiga) { if (ConfMan.getBool("alt_intro") && _vm->resource()->isCD()) { @@ -2143,10 +2143,10 @@ bool LogicGame::changeToSpecialRoom() { playCutaway("CDINT.CUT"); } } - if (_vm->_quit) + if (_vm->quit()) return true; playCutaway("CRED.CUT"); - if (_vm->_quit) + if (_vm->quit()) return true; _vm->display()->palSetPanel(); sceneReset(); diff --git a/engines/queen/queen.cpp b/engines/queen/queen.cpp index d9890d0c57..a164bcfcae 100644 --- a/engines/queen/queen.cpp +++ b/engines/queen/queen.cpp @@ -386,7 +386,7 @@ int QueenEngine::go() { } _lastSaveTime = _lastUpdateTime = _system->getMillis(); - while (!_quit) { + while (!quit()) { if (_logic->newRoom() > 0) { _logic->update(); _logic->oldRoom(_logic->currentRoom()); @@ -404,7 +404,7 @@ int QueenEngine::go() { update(true); } } - return _rtl; + return _eventMan->shouldRTL(); } int QueenEngine::init() { diff --git a/engines/queen/queen.h b/engines/queen/queen.h index 6652a08196..5ec18c1230 100644 --- a/engines/queen/queen.h +++ b/engines/queen/queen.h @@ -103,8 +103,7 @@ public: void talkSpeed(int speed) { _talkSpeed = speed; } bool subtitles() const { return _subtitles; } void subtitles(bool enable) { _subtitles = enable; } - void quitGame() { _quit = true; } - + void update(bool checkPlayerInput = false); bool canLoadOrSave() const; diff --git a/engines/queen/talk.cpp b/engines/queen/talk.cpp index ff18ef37d1..fa2ca669cd 100644 --- a/engines/queen/talk.cpp +++ b/engines/queen/talk.cpp @@ -807,7 +807,7 @@ void Talk::speakSegment( switch (command) { case SPEAK_PAUSE: - for (i = 0; i < 10 && !_vm->input()->talkQuit(); i++) { + for (i = 0; i < 10 && !_vm->input()->talkQuit() && !_vm->quit(); i++) { _vm->update(); } return; |