aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/graphics
diff options
context:
space:
mode:
authorMartin Kiewitz2015-04-26 09:08:46 +0200
committerMartin Kiewitz2015-04-26 09:08:46 +0200
commitbfba28c33591afe8ce2f7f42de49935029bb4d62 (patch)
treef67a70d7d9dc628ef1944baa509903f6caef3905 /engines/sci/graphics
parent21b138add24e9b95e70adb267c35268de0f828d1 (diff)
downloadscummvm-rg350-bfba28c33591afe8ce2f7f42de49935029bb4d62.tar.gz
scummvm-rg350-bfba28c33591afe8ce2f7f42de49935029bb4d62.tar.bz2
scummvm-rg350-bfba28c33591afe8ce2f7f42de49935029bb4d62.zip
SCI: implement delayed restore via ScummVM menu
will delay restoring a saved game until the next kGetEvent or kWait also implement aborting playback for kPortrait and kShowMovie
Diffstat (limited to 'engines/sci/graphics')
-rw-r--r--engines/sci/graphics/portrait.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/engines/sci/graphics/portrait.cpp b/engines/sci/graphics/portrait.cpp
index 3311f47022..cb425f3be9 100644
--- a/engines/sci/graphics/portrait.cpp
+++ b/engines/sci/graphics/portrait.cpp
@@ -317,7 +317,8 @@ void Portrait::doit(Common::Point position, uint16 resourceId, uint16 noun, uint
curEvent = _event->getSciEvent(SCI_EVENT_ANY);
if (curEvent.type == SCI_EVENT_MOUSE_PRESS ||
(curEvent.type == SCI_EVENT_KEYBOARD && curEvent.data == SCI_KEY_ESC) ||
- g_sci->getEngineState()->abortScriptProcessing == kAbortQuitGame)
+ g_sci->getEngineState()->abortScriptProcessing == kAbortQuitGame ||
+ g_sci->getEngineState()->_delayedRestoreGame)
userAbort = true;
curPosition = _audio->getAudioPosition();
} while ((curPosition != -1) && (curPosition < timerPosition) && (!userAbort));