[Scummvm-cvs-logs] CVS: residual engine.cpp,1.91,1.92 lua.cpp,1.155,1.156
Pawel Kolodziejski
aquadran at users.sourceforge.net
Sun Aug 14 07:08:01 CEST 2005
Update of /cvsroot/scummvm/residual
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14955
Modified Files:
engine.cpp lua.cpp
Log Message:
implemented RestoreIMuse SaveIMuse opcodes
Index: engine.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/engine.cpp,v
retrieving revision 1.91
retrieving revision 1.92
diff -u -d -r1.91 -r1.92
--- engine.cpp 14 Aug 2005 13:26:37 -0000 1.91
+++ engine.cpp 14 Aug 2005 14:07:03 -0000 1.92
@@ -488,7 +488,7 @@
//Render_Save(savegameGzwrite);
//Primitive_Save(savegameGzwrite);
//Smush_Save(savegameGzwrite);
- g_imuse->saveState(savegameGzread);
+ g_imuse->saveState(savegameGzwrite);
lua_Save(savegameGzwrite);
gzclose(_savegameFileHandle);
Index: lua.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/lua.cpp,v
retrieving revision 1.155
retrieving revision 1.156
diff -u -d -r1.155 -r1.156
--- lua.cpp 14 Aug 2005 13:26:37 -0000 1.155
+++ lua.cpp 14 Aug 2005 14:07:03 -0000 1.156
@@ -1958,14 +1958,26 @@
static void SaveIMuse() {
DEBUG_FUNCTION();
- if(debugLevel == DEBUG_ERROR || debugLevel == DEBUG_ALL)
- error("SaveIMuse() is not yet supported");
+ gzFile file = gzopen("grim.tmp", "wb");
+ if (file == NULL) {
+ warning("SaveIMuse() Error creating temp savegame file");
+ return;
+ }
+ g_imuse->saveState(g_engine->savegameGzwrite);
+ gzclose(file);
}
static void RestoreIMuse() {
DEBUG_FUNCTION();
- if(debugLevel == DEBUG_ERROR || debugLevel == DEBUG_ALL)
- error("RestoreIMuse() is not yet supported");
+ gzFile file = gzopen("grim.tmp", "rb");
+ if (file == NULL) {
+ return;
+ }
+ g_imuse->stopAllSounds();
+ g_imuse->resetState();
+ g_imuse->restoreState(g_engine->savegameGzread);
+ gzclose(file);
+ unlink("grim.tmp");
}
static void SetSoundPosition() {
More information about the Scummvm-git-logs
mailing list