X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2Fopenal_wrapper.cpp;h=4331c69f33ff075d450336a0dadefc2e5d966959;hb=cc92cb7b7f9b87cb791c504bf930d622d74db368;hp=b59706581288660a97125d563f30e6a35c13a47a;hpb=ff29f47f799d99cec7c2a6aa2cf818da2b931fc5;p=lugaru.git diff --git a/Source/openal_wrapper.cpp b/Source/openal_wrapper.cpp index b597065..4331c69 100644 --- a/Source/openal_wrapper.cpp +++ b/Source/openal_wrapper.cpp @@ -27,6 +27,8 @@ along with Lugaru. If not, see . #include "Sounds.h" #include "Game.h" +extern float slomofreq; + // NOTE: // FMOD uses a Left Handed Coordinate system, OpenAL uses a Right Handed // one...so we just need to flip the sign on the Z axis when appropriate. @@ -430,21 +432,20 @@ static signed char OPENAL_Sample_SetMode(OPENAL_SAMPLE *sptr, unsigned int mode) return true; } -AL_API signed char OPENAL_SetFrequency(int channel, int freq) +AL_API signed char OPENAL_SetFrequency(int channel, bool slomo) { if (!initialized) return false; if (channel == OPENAL_ALL) { for (int i = 0; i < num_channels; i++) - OPENAL_SetFrequency(i, freq); + OPENAL_SetFrequency(i, slomo); return true; } if ((channel < 0) || (channel >= num_channels)) return false; - if (freq == 8012) - // hack - alSourcef(impl_channels[channel].sid, AL_PITCH, 8012.0f / 44100.0f); + if (slomo) + alSourcef(impl_channels[channel].sid, AL_PITCH, ((ALfloat) slomofreq) / 44100.0f); else alSourcef(impl_channels[channel].sid, AL_PITCH, 1.0f); return true;