diff options
author | Marisa-Chan | 2014-01-17 09:32:06 +0700 |
---|---|---|
committer | Marisa-Chan | 2014-01-17 09:32:06 +0700 |
commit | 61224e7225061551765c07b691e8d8c5da3434df (patch) | |
tree | 51e3b002cd79f3f5299ed55fa7378156cd04bde6 | |
parent | 9803f7e6c045d625ee41e5b2769b1b2de3ab8ee3 (diff) | |
download | scummvm-rg350-61224e7225061551765c07b691e8d8c5da3434df.tar.gz scummvm-rg350-61224e7225061551765c07b691e8d8c5da3434df.tar.bz2 scummvm-rg350-61224e7225061551765c07b691e8d8c5da3434df.zip |
ZVISION: Move MusicNode to use Audio::SoundHandle.
-rw-r--r-- | engines/zvision/music_node.cpp | 9 | ||||
-rw-r--r-- | engines/zvision/music_node.h | 2 | ||||
-rw-r--r-- | engines/zvision/zvision.cpp | 7 | ||||
-rw-r--r-- | engines/zvision/zvision.h | 2 |
4 files changed, 6 insertions, 14 deletions
diff --git a/engines/zvision/music_node.cpp b/engines/zvision/music_node.cpp index 6be4683178..709b554823 100644 --- a/engines/zvision/music_node.cpp +++ b/engines/zvision/music_node.cpp @@ -57,13 +57,12 @@ MusicNode::MusicNode(ZVision *engine, uint32 key, Common::String &filename, bool audioStream = makeRawZorkStream(filename, _engine); } - _id = _engine->getAudioId(); if (_loop) { Audio::LoopingAudioStream *loopingAudioStream = new Audio::LoopingAudioStream(audioStream, 0, DisposeAfterUse::YES); - _engine->_mixer->playStream(Audio::Mixer::kPlainSoundType, 0, loopingAudioStream, _id, _volume); + _engine->_mixer->playStream(Audio::Mixer::kPlainSoundType, &_handle, loopingAudioStream, -1, _volume); } else { - _engine->_mixer->playStream(Audio::Mixer::kPlainSoundType, 0, audioStream, _id, _volume); + _engine->_mixer->playStream(Audio::Mixer::kPlainSoundType, &_handle, audioStream, -1, _volume); } if (_key != StateKey_NotSet) @@ -71,14 +70,14 @@ MusicNode::MusicNode(ZVision *engine, uint32 key, Common::String &filename, bool } MusicNode::~MusicNode() { - _engine->_mixer->stopID(_id); + _engine->_mixer->stopHandle(_handle); if (_key != StateKey_NotSet) _engine->getScriptManager()->setStateValue(_key, 2); debug(1, "MusicNode: %d destroyed\n", _key); } bool MusicNode::process(uint32 deltaTimeInMillis) { - if (! _engine->_mixer->isSoundIDActive(_id)) + if (! _engine->_mixer->isSoundHandleActive(_handle)) return stop(); return false; } diff --git a/engines/zvision/music_node.h b/engines/zvision/music_node.h index 6aed4556fa..973feaf175 100644 --- a/engines/zvision/music_node.h +++ b/engines/zvision/music_node.h @@ -23,6 +23,7 @@ #ifndef ZVISION_MUSIC_NODE_H #define ZVISION_MUSIC_NODE_H +#include "audio/mixer.h" #include "zvision/sidefx.h" namespace Common { @@ -55,6 +56,7 @@ private: bool _crossfade; int32 _crossfade_delta; int32 _crossfade_time; + Audio::SoundHandle _handle; }; } // End of namespace ZVision diff --git a/engines/zvision/zvision.cpp b/engines/zvision/zvision.cpp index 05923ce079..f21498c315 100644 --- a/engines/zvision/zvision.cpp +++ b/engines/zvision/zvision.cpp @@ -201,13 +201,6 @@ Common::String ZVision::generateAutoSaveFileName() { return Common::String::format("%s.auto", _targetName.c_str()); } -int ZVision::getAudioId() { - _aud_id++; - if (_aud_id < 0) - _aud_id = 0; - return _aud_id; -} - void ZVision::setRenderDelay(uint delay) { _rendDelay = delay; } diff --git a/engines/zvision/zvision.h b/engines/zvision/zvision.h index 23c5f60a4a..26d7644eb0 100644 --- a/engines/zvision/zvision.h +++ b/engines/zvision/zvision.h @@ -153,8 +153,6 @@ public: */ void playVideo(Video::VideoDecoder &videoDecoder, const Common::Rect &destRect = Common::Rect(0, 0, 0, 0), bool skippable = true); - int getAudioId(); - Common::String generateSaveFileName(uint slot); Common::String generateAutoSaveFileName(); |