[Scummvm-cvs-logs] SF.net SVN: scummvm: [29257] scummvm/trunk/engines/lure
dreammaster at users.sourceforge.net
dreammaster at users.sourceforge.net
Thu Oct 25 12:39:20 CEST 2007
Revision: 29257
http://scummvm.svn.sourceforge.net/scummvm/?rev=29257&view=rev
Author: dreammaster
Date: 2007-10-25 03:39:19 -0700 (Thu, 25 Oct 2007)
Log Message:
-----------
Bugfix to make sound toggle work correctly, and added flag state to savegames
Modified Paths:
--------------
scummvm/trunk/engines/lure/game.cpp
scummvm/trunk/engines/lure/game.h
scummvm/trunk/engines/lure/sound.cpp
Modified: scummvm/trunk/engines/lure/game.cpp
===================================================================
--- scummvm/trunk/engines/lure/game.cpp 2007-10-25 10:37:23 UTC (rev 29256)
+++ scummvm/trunk/engines/lure/game.cpp 2007-10-25 10:39:19 UTC (rev 29257)
@@ -877,7 +877,9 @@
_soundFlag = !_soundFlag;
menu.getMenu(2).entries()[2] = sl.getString(_soundFlag ? S_SOUND_ON : S_SOUND_OFF);
- Sound.setVolume(_soundFlag ? DEFAULT_VOLUME : 0);
+
+ // Stop all currently playing sounds
+ Sound.killSounds();
}
void Game::handleBootParam(int value) {
@@ -980,6 +982,7 @@
void Game::saveToStream(WriteStream *stream) {
stream->writeByte(_fastTextFlag);
+ stream->writeByte(_soundFlag);
}
void Game::loadFromStream(ReadStream *stream) {
@@ -988,6 +991,9 @@
_fastTextFlag = stream->readByte() != 0;
menu.getMenu(2).entries()[1] = sl.getString(_fastTextFlag ? S_FAST_TEXT : S_SLOW_TEXT);
+
+ _soundFlag = stream->readByte() != 0;
+ menu.getMenu(2).entries()[2] = sl.getString(_soundFlag ? S_SOUND_ON : S_SOUND_OFF);
}
Modified: scummvm/trunk/engines/lure/game.h
===================================================================
--- scummvm/trunk/engines/lure/game.h 2007-10-25 10:37:23 UTC (rev 29256)
+++ scummvm/trunk/engines/lure/game.h 2007-10-25 10:39:19 UTC (rev 29257)
@@ -79,6 +79,7 @@
void setState(uint8 flags) { _state = flags; }
bool &preloadFlag() { return _preloadFlag; }
bool fastTextFlag() { return _fastTextFlag; }
+ bool soundFlag() { return _soundFlag; }
// Menu item support methods
void doDebugMenu();
Modified: scummvm/trunk/engines/lure/sound.cpp
===================================================================
--- scummvm/trunk/engines/lure/sound.cpp 2007-10-25 10:37:23 UTC (rev 29256)
+++ scummvm/trunk/engines/lure/sound.cpp 2007-10-25 10:39:19 UTC (rev 29257)
@@ -365,6 +365,10 @@
// Only play sounds if a sound driver is active
return;
+ if (!Game::getReference().soundFlag())
+ // Don't play sounds if sound is turned off
+ return;
+
uint32 dataOfs = READ_LE_UINT32(_soundData->data() + soundNum * 4 + 2);
uint8 *soundStart = _soundData->data() + dataOfs;
uint32 dataSize;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list