diff options
author | Robert Göffringmann | 2003-07-12 05:26:23 +0000 |
---|---|---|
committer | Robert Göffringmann | 2003-07-12 05:26:23 +0000 |
commit | cb48b4fca0b6a1fc816ba6cb49f497476ebcd534 (patch) | |
tree | c4d00b32183c1e6e2c7ed04dbfac1e6b5ea70870 /sky/sky.cpp | |
parent | 8cc3d5e39c5b7eafca87366f6d4b9f70be9967f4 (diff) | |
download | scummvm-rg350-cb48b4fca0b6a1fc816ba6cb49f497476ebcd534.tar.gz scummvm-rg350-cb48b4fca0b6a1fc816ba6cb49f497476ebcd534.tar.bz2 scummvm-rg350-cb48b4fca0b6a1fc816ba6cb49f497476ebcd534.zip |
implemented -x command line option
svn-id: r8926
Diffstat (limited to 'sky/sky.cpp')
-rw-r--r-- | sky/sky.cpp | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/sky/sky.cpp b/sky/sky.cpp index 3a444da83e..25e51c40a1 100644 --- a/sky/sky.cpp +++ b/sky/sky.cpp @@ -179,14 +179,15 @@ void SkyState::go() { initialise(); - bool introSkipped; - if (_systemVars.gameVersion != 267) // don't do intro for floppydemo - introSkipped = !intro(); - else introSkipped = false; + bool introSkipped = false; + if (!_quickLaunch) { + if (_systemVars.gameVersion != 267) // don't do intro for floppydemo + introSkipped = !intro(); - _skyDisk->flushPrefetched(); + _skyDisk->flushPrefetched(); - loadBase0(); + loadBase0(); + } if (introSkipped) _skyControl->restartGame(); @@ -266,6 +267,15 @@ void SkyState::initialise(void) { if (_systemVars.gameVersion == 288) SkyCompact::patchFor288(); + + uint16 result = 0; + if (_detector->_save_slot >= 0) + result = _skyControl->quickXRestore(_detector->_save_slot); + + if (result == GAME_RESTORED) + _quickLaunch = true; + else + _quickLaunch = false; } void SkyState::initItemList() { |