aboutsummaryrefslogtreecommitdiff
path: root/engines/queen
diff options
context:
space:
mode:
authorChristopher Page2008-07-06 23:42:29 +0000
committerChristopher Page2008-07-06 23:42:29 +0000
commita42bb09c727fc16ca91f00c8743a97beddf998ee (patch)
tree234475565c71720331493b23a3899dc5c7ec9a43 /engines/queen
parent6d1350638af7f63d4582e33c83805909aadc5873 (diff)
downloadscummvm-rg350-a42bb09c727fc16ca91f00c8743a97beddf998ee.tar.gz
scummvm-rg350-a42bb09c727fc16ca91f00c8743a97beddf998ee.tar.bz2
scummvm-rg350-a42bb09c727fc16ca91f00c8743a97beddf998ee.zip
QUEEN: Made it possible to quit during the intro cutaways
svn-id: r32933
Diffstat (limited to 'engines/queen')
-rw-r--r--engines/queen/input.cpp2
-rw-r--r--engines/queen/logic.cpp10
2 files changed, 12 insertions, 0 deletions
diff --git a/engines/queen/input.cpp b/engines/queen/input.cpp
index 9f03c341c9..5a4741c222 100644
--- a/engines/queen/input.cpp
+++ b/engines/queen/input.cpp
@@ -121,6 +121,8 @@ void Input::delay(uint amount) {
case Common::EVENT_QUIT:
_vm->quitGame();
+ if (_cutawayRunning)
+ _cutawayQuit = true;
return;
default:
diff --git a/engines/queen/logic.cpp b/engines/queen/logic.cpp
index 9e4770553c..89e8f56fe1 100644
--- a/engines/queen/logic.cpp
+++ b/engines/queen/logic.cpp
@@ -2076,6 +2076,8 @@ bool LogicDemo::changeToSpecialRoom() {
displayRoom(currentRoom(), RDM_FADE_NOJOE, 100, 2, true);
playCutaway("CLOGO.CUT");
sceneReset();
+ if (_vm->_quit)
+ return true;
currentRoom(ROOM_HOTEL_LOBBY);
entryObj(584);
displayRoom(currentRoom(), RDM_FADE_JOE, 100, 2, true);
@@ -2129,7 +2131,11 @@ 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)
+ return true;
playCutaway("CLOGO.CUT");
+ if (_vm->_quit)
+ return true;
if (_vm->resource()->getPlatform() != Common::kPlatformAmiga) {
if (ConfMan.getBool("alt_intro") && _vm->resource()->isCD()) {
playCutaway("CINTR.CUT");
@@ -2137,7 +2143,11 @@ bool LogicGame::changeToSpecialRoom() {
playCutaway("CDINT.CUT");
}
}
+ if (_vm->_quit)
+ return true;
playCutaway("CRED.CUT");
+ if (_vm->_quit)
+ return true;
_vm->display()->palSetPanel();
sceneReset();
currentRoom(ROOM_HOTEL_LOBBY);