diff options
author | Fabio Battaglia | 2009-03-03 20:05:00 +0000 |
---|---|---|
committer | Fabio Battaglia | 2009-03-03 20:05:00 +0000 |
commit | 7fc8bb81a74f58d46b82b7d555ef3da4c0076ee9 (patch) | |
tree | 69ec8806229571f7bb3f0ff1f01c23cbe9b1ed07 /engines/sword1/sword1.cpp | |
parent | ea4f25fd308b243a322836d6546f70963363ddf6 (diff) | |
download | scummvm-rg350-7fc8bb81a74f58d46b82b7d555ef3da4c0076ee9.tar.gz scummvm-rg350-7fc8bb81a74f58d46b82b7d555ef3da4c0076ee9.tar.bz2 scummvm-rg350-7fc8bb81a74f58d46b82b7d555ef3da4c0076ee9.zip |
Enabled and hopefully fixed GMM saving/loading for sword1
svn-id: r39095
Diffstat (limited to 'engines/sword1/sword1.cpp')
-rw-r--r-- | engines/sword1/sword1.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/engines/sword1/sword1.cpp b/engines/sword1/sword1.cpp index 28cc1a51d2..d42d90af70 100644 --- a/engines/sword1/sword1.cpp +++ b/engines/sword1/sword1.cpp @@ -149,6 +149,7 @@ Common::Error SwordEngine::init() { } void SwordEngine::reinitialize(void) { + _sound->quitScreen(); _resMan->flush(); // free everything that's currently alloced and opened. (*evil*) _logic->initialize(); // now reinitialize these objects as they (may) have locked @@ -729,4 +730,14 @@ bool SwordEngine::mouseIsActive() { return Logic::_scriptVars[MOUSE_STATUS] & 1; } +// The following function is needed to restore proper status after GMM load game +void SwordEngine::reinitRes(void) { + _screen->newScreen(Logic::_scriptVars[NEW_SCREEN]); + _logic->newScreen(Logic::_scriptVars[NEW_SCREEN]); + _sound->newScreen(Logic::_scriptVars[NEW_SCREEN]); + Logic::_scriptVars[SCREEN] = Logic::_scriptVars[NEW_SCREEN]; + _screen->fullRefresh(); + _screen->draw(); +} + } // End of namespace Sword1 |