[Scummvm-cvs-logs] CVS: scummvm/queen sound.cpp,1.27,1.28

Joost Peters joostp at users.sourceforge.net
Sat Jan 3 19:38:03 CET 2004


Update of /cvsroot/scummvm/scummvm/queen
In directory sc8-pr-cvs1:/tmp/cvs-serv13417/queen

Modified Files:
	sound.cpp 
Log Message:
respond to 'alter'-type overrides


Index: sound.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/queen/sound.cpp,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -d -r1.27 -r1.28
--- sound.cpp	29 Dec 2003 15:50:17 -0000	1.27
+++ sound.cpp	4 Jan 2004 03:37:12 -0000	1.28
@@ -99,20 +99,31 @@
 		return;
 	}
 	
-	int16 newTune = _song[songNum - 1].tuneList[0];
+	int16 newTune = _song[songNum - 1].tuneList[0] - 1;
 
-	if (_tune[newTune - 1].sfx[0]) {
+	if (_tune[newTune].sfx[0]) {
 		if (sfxOn())
-			playSfx(_tune[newTune - 1].sfx[0]);
+			playSfx(_tune[newTune].sfx[0]);
 		return;
 	}
 
 	if (!musicOn() || _vm->resource()->isDemo())
 		return;
 
+	switch (_song[songNum - 1].override) {
+		// Override all songs
+		case  1:
+			break;
+		// Alter song settings (such as volume) and exit
+		case  2:
+		default:
+			return;
+			break;
+	}
+	
 	_lastOverride = songNum;
 	
-	switch (_tune[newTune - 1].mode) {
+	switch (_tune[newTune].mode) {
 		//Random loop
 		case  0:
 			warning("Music: Random loop not yet supported (doing sequential loop instead)");
@@ -127,7 +138,7 @@
 			break;
 	}
 
-	int16 song = _tune[newTune - 1].tuneNum[0] - 1;
+	int16 song = _tune[newTune].tuneNum[0] - 1;
 
 	// Work around bug in Roland music, note that these numbers are 'one-off' from
 	// the original code.





More information about the Scummvm-git-logs mailing list