From 1fb422cde207b8b24ab9e8a545abb4c9204773c3 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Mon, 2 Dec 2013 08:29:51 -0500 Subject: VOYEUR: Implemented sound effects for the lock screen --- engines/voyeur/sound.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'engines/voyeur/sound.cpp') diff --git a/engines/voyeur/sound.cpp b/engines/voyeur/sound.cpp index 628e6e27a9..baba45fb45 100644 --- a/engines/voyeur/sound.cpp +++ b/engines/voyeur/sound.cpp @@ -20,15 +20,22 @@ * */ +#include "audio/audiostream.h" +#include "audio/decoders/raw.h" +#include "common/memstream.h" #include "voyeur/sound.h" namespace Voyeur { -SoundManager::SoundManager() { +SoundManager::SoundManager(Audio::Mixer *mixer) { + _mixer = mixer; } void SoundManager::playVOCMap(byte *voc, int vocSize) { - // TODO + Common::MemoryReadStream *dataStream = new Common::MemoryReadStream(voc, vocSize, DisposeAfterUse::NO); + Audio::AudioStream *audioStream = Audio::makeVOCStream(dataStream, Audio::FLAG_UNSIGNED, DisposeAfterUse::YES); + + _mixer->playStream(Audio::Mixer::kSFXSoundType, &_soundHandle, audioStream); } bool SoundManager::vocMapStatus() { @@ -37,11 +44,11 @@ bool SoundManager::vocMapStatus() { } void SoundManager::continueVocMap() { - // TODO + // No implementation needed in ScummVM } void SoundManager::abortVOCMap() { - // TODO + _mixer->stopHandle(_soundHandle); } } // End of namespace Voyeur -- cgit v1.2.3