diff options
author | Robert Špalek | 2009-10-12 22:27:23 +0000 |
---|---|---|
committer | Robert Špalek | 2009-10-12 22:27:23 +0000 |
commit | e77928440307f0d8a765e32100e031989ad25ff5 (patch) | |
tree | 970e4c758de39c9c5f97bc6557428a0363a07101 /engines/draci/game.cpp | |
parent | d306e1219e606f5af6b3dd37556f1ba1ecb5ed51 (diff) | |
download | scummvm-rg350-e77928440307f0d8a765e32100e031989ad25ff5.tar.gz scummvm-rg350-e77928440307f0d8a765e32100e031989ad25ff5.tar.bz2 scummvm-rg350-e77928440307f0d8a765e32100e031989ad25ff5.zip |
Sound effects are now correctly played.
Dubbing is not yet played.
svn-id: r45000
Diffstat (limited to 'engines/draci/game.cpp')
-rw-r--r-- | engines/draci/game.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/draci/game.cpp b/engines/draci/game.cpp index d5701c3eae..ff15483cc7 100644 --- a/engines/draci/game.cpp +++ b/engines/draci/game.cpp @@ -1157,7 +1157,7 @@ int Game::loadAnimation(uint animNum, uint z) { uint scaledWidth = animationReader.readUint16LE(); uint scaledHeight = animationReader.readUint16LE(); byte mirror = animationReader.readByte(); - uint sample = animationReader.readUint16LE(); + int sample = animationReader.readUint16LE() - 1; uint freq = animationReader.readUint16LE(); uint delay = animationReader.readUint16LE(); @@ -1301,6 +1301,11 @@ void Game::enterNewRoom(bool force_reload) { } debugC(1, kDraciLogicDebugLevel, "Entering room %d using gate %d", _newRoom, _newGate); + // TODO: maybe wait till all sounds end instead of stopping them. + // In any case, make sure all sounds are stopped before we deallocate + // their memory by clearing the cache. + _vm->_sound->stopAll(); + // Clear archives _vm->_roomsArchive->clearCache(); _vm->_spritesArchive->clearCache(); |