[Scummvm-cvs-logs] CVS: scummvm/sky sound.cpp,1.30,1.31

Robert G?ffringmann lavosspawn at users.sourceforge.net
Sat Aug 2 09:54:02 CEST 2003


Update of /cvsroot/scummvm/scummvm/sky
In directory sc8-pr-cvs1:/tmp/cvs-serv13487/sky

Modified Files:
	sound.cpp 
Log Message:
correct sound looping, thanks to our new mixer. :)

Index: sound.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/sound.cpp,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -d -r1.30 -r1.31
--- sound.cpp	23 Jul 2003 19:33:34 -0000	1.30
+++ sound.cpp	2 Aug 2003 16:53:46 -0000	1.31
@@ -1118,14 +1118,18 @@
 
 	byte flags = SoundMixer::FLAG_UNSIGNED;
 
-	if (dataSize == dataLoop)
+	uint32 loopSta = 0, loopEnd = 0;
+	if (dataLoop) {
+		loopSta = dataSize - dataLoop;
+		loopEnd = dataSize;
 		flags |= SoundMixer::FLAG_LOOP;
+	}
 	
 	_mixer->setVolume(volume);
 	if (channel == 0)
-		_mixer->playRaw(&_ingameSound0, _soundData + dataOfs, dataSize, sampleRate, flags, SOUND_CH0);
+		_mixer->playRaw(&_ingameSound0, _soundData + dataOfs, dataSize, sampleRate, flags, SOUND_CH0, loopSta, loopEnd);
 	else
-		_mixer->playRaw(&_ingameSound1, _soundData + dataOfs, dataSize, sampleRate, flags, SOUND_CH1);
+		_mixer->playRaw(&_ingameSound1, _soundData + dataOfs, dataSize, sampleRate, flags, SOUND_CH1, loopSta, loopEnd);
 }
 
 void SkySound::fnStartFx(uint32 sound, uint8 channel) {





More information about the Scummvm-git-logs mailing list