[Scummvm-cvs-logs] CVS: scummvm/scumm imuse.cpp,2.130,2.131 saveload.h,1.60,1.61

Torbjörn Andersson eriktorbjorn at users.sourceforge.net
Mon May 23 00:09:24 CEST 2005


Update of /cvsroot/scummvm/scummvm/scumm
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29346

Modified Files:
	imuse.cpp saveload.h 
Log Message:
Save the "Sam & Max" iMUSE triggers, otherwise we won't always be able to
restore the music state correctly. The one example I know of is when saving
between using the hair and the powder on Frog Rock, but there are probably
others as well.


Index: imuse.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/imuse.cpp,v
retrieving revision 2.130
retrieving revision 2.131
diff -u -d -r2.130 -r2.131
--- imuse.cpp	13 Apr 2005 00:11:42 -0000	2.130
+++ imuse.cpp	23 May 2005 07:05:41 -0000	2.131
@@ -1449,6 +1449,7 @@
 		MKLINE(IMuseInternal, _queue_cleared, sleByte, VER(8)),
 		MKLINE(IMuseInternal, _master_volume, sleByte, VER(8)),
 		MKLINE(IMuseInternal, _trigger_count, sleUint16, VER(8)),
+		MKLINE(IMuseInternal, _snm_trigger_index, sleUint16, VER(54)),
 		MKARRAY(IMuseInternal, _channel_volume[0], sleUint16, 8, VER(8)),
 		MKARRAY(IMuseInternal, _volchan_table[0], sleUint16, 8, VER(8)),
 		MKEND()
@@ -1473,6 +1474,14 @@
 		MKEND()
 	};
 
+	const SaveLoadEntry snmTriggerEntries[] = {
+		MKLINE(ImTrigger, sound, sleInt16, VER(54)),
+		MKLINE(ImTrigger, id, sleByte, VER(54)),
+		MKLINE(ImTrigger, expire, sleUint16, VER(54)),
+		MKARRAY(ImTrigger, command[0], sleUint16, 8, VER(54)),
+		MKEND()
+	};
+
 	const SaveLoadEntry partEntries[] = {
 		MKREF(Part, _next, TYPE_PART, VER(8)),
 		MKREF(Part, _prev, TYPE_PART, VER(8)),
@@ -1503,7 +1512,8 @@
 	ser->_load_ref = loadReference;
 
 	ser->saveLoadEntries(this, mainEntries);
-	ser->saveLoadArrayOf (_cmd_queue, ARRAYSIZE(_cmd_queue), sizeof(_cmd_queue[0]), cmdQueueEntries);
+	ser->saveLoadArrayOf(_cmd_queue, ARRAYSIZE(_cmd_queue), sizeof(_cmd_queue[0]), cmdQueueEntries);
+	ser->saveLoadArrayOf(_snm_triggers, ARRAYSIZE(_snm_triggers), sizeof(_snm_triggers[0]), snmTriggerEntries); 
 
 	// The players
 	for (i = 0; i < ARRAYSIZE(_players); ++i)

Index: saveload.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/scumm/saveload.h,v
retrieving revision 1.60
retrieving revision 1.61
diff -u -d -r1.60 -r1.61
--- saveload.h	21 May 2005 15:45:09 -0000	1.60
+++ saveload.h	23 May 2005 07:05:42 -0000	1.61
@@ -45,7 +45,7 @@
  * only saves/loads those which are valid for the version of the savegame
  * which is being loaded/saved currently.
  */
-#define CURRENT_VER 53
+#define CURRENT_VER 54
 
 /**
  * An auxillary macro, used to specify savegame versions. We use this instead





More information about the Scummvm-git-logs mailing list