diff options
-rw-r--r-- | sky/sound.cpp | 12 | ||||
-rw-r--r-- | sky/sound.h | 4 |
2 files changed, 14 insertions, 2 deletions
diff --git a/sky/sound.cpp b/sky/sound.cpp index e3ff675bee..95a08587e7 100644 --- a/sky/sound.cpp +++ b/sky/sound.cpp @@ -1252,3 +1252,15 @@ bool SkySound::startSpeech(uint16 textNum) { _mixer->playRaw(&_ingameSpeech, playBuffer, speechSize, 11025, SoundMixer::FLAG_UNSIGNED | SoundMixer::FLAG_AUTOFREE, SOUND_SPEECH); return true; } + +void SkySound::fnPauseFx(void) { + + _mixer->pauseChannel(SOUND_CH0, true); + _mixer->pauseChannel(SOUND_CH1, true); +} + +void SkySound::fnUnPauseFx(void) { + + _mixer->pauseChannel(SOUND_CH0, false); + _mixer->pauseChannel(SOUND_CH1, false); +} diff --git a/sky/sound.h b/sky/sound.h index 298ba1ef0b..cafc3e8e5b 100644 --- a/sky/sound.h +++ b/sky/sound.h @@ -70,8 +70,8 @@ public: void fnStartFx(uint32 sound, uint8 channel); bool startSpeech(uint16 textNum); bool speechFinished(void) { return _ingameSpeech == 0; }; - void fnPauseFx(void) { _mixer->pauseAll(true); }; - void fnUnPauseFx(void) { _mixer->pauseAll(false); }; + void fnPauseFx(void); + void fnUnPauseFx(void); void fnStopFx(void); void stopSpeech(void); void checkFxQueue(void); |