diff options
author | Filippos Karapetis | 2009-01-20 00:33:26 +0000 |
---|---|---|
committer | Filippos Karapetis | 2009-01-20 00:33:26 +0000 |
commit | 85d40630004d5a615a7708d76f99d4507886c396 (patch) | |
tree | 8c31311b8044badb06ae7ec28af95b7ecca1b604 /engines | |
parent | a27e456ace3d8e6a2bc080a6282c781989b609b0 (diff) | |
download | scummvm-rg350-85d40630004d5a615a7708d76f99d4507886c396.tar.gz scummvm-rg350-85d40630004d5a615a7708d76f99d4507886c396.tar.bz2 scummvm-rg350-85d40630004d5a615a7708d76f99d4507886c396.zip |
Some WIP code for the kSupportsLoadingDuringStartup engine feature
svn-id: r35932
Diffstat (limited to 'engines')
-rw-r--r-- | engines/tinsel/drives.cpp | 1 | ||||
-rw-r--r-- | engines/tinsel/tinsel.cpp | 9 |
2 files changed, 8 insertions, 2 deletions
diff --git a/engines/tinsel/drives.cpp b/engines/tinsel/drives.cpp index 2e87eb1715..05f6445e29 100644 --- a/engines/tinsel/drives.cpp +++ b/engines/tinsel/drives.cpp @@ -32,6 +32,7 @@ namespace Tinsel { +static bool restoringfromGMM = false; static char currentCD = '1'; static uint32 cdFlags[] = { fCd1, fCd2, fCd3, fCd4, fCd5, fCd6, fCd7, fCd8 }; diff --git a/engines/tinsel/tinsel.cpp b/engines/tinsel/tinsel.cpp index 9341b0fe4e..1ddf635c3f 100644 --- a/engines/tinsel/tinsel.cpp +++ b/engines/tinsel/tinsel.cpp @@ -104,6 +104,7 @@ void SetNewScene(SCNHANDLE scene, int entrance, int transition); bool bRestart = false; bool bHasRestarted = false; +bool loadingFromGMM = false; static bool bCuttingScene = false; @@ -509,7 +510,7 @@ void SetNewScene(SCNHANDLE scene, int entrance, int transition) { WrapScene(); // If CD change will be required, stick in the scene change scene - if (CdNumber(scene) != GetCurrentCD()) { + if (CdNumber(scene) != GetCurrentCD() || loadingFromGMM) { // This scene gets delayed DelayedScene.scene = scene; DelayedScene.entry = entrance; @@ -518,6 +519,8 @@ void SetNewScene(SCNHANDLE scene, int entrance, int transition) { NextScene.scene = hCdChangeScene; NextScene.entry = CdNumber(scene) - '0'; NextScene.trans = TRANS_FADE; + + loadingFromGMM = false; return; } @@ -997,10 +1000,12 @@ Common::Error TinselEngine::go() { // when loading the save state. // // TODO: This works fine when loading saves, which require a CD change - // in DW2. For every other save it'll fail though. + // in DW2. It will also work for DW1. For every other save it'll fail though. + #if 0 if (ConfMan.hasKey("save_slot")) { loadGameState(ConfMan.getInt("save_slot")); + loadingFromGMM = true; } #endif |