diff options
Diffstat (limited to 'code/client/snd_openal.c')
-rw-r--r-- | code/client/snd_openal.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/code/client/snd_openal.c b/code/client/snd_openal.c index 26628df..b20e411 100644 --- a/code/client/snd_openal.c +++ b/code/client/snd_openal.c @@ -530,15 +530,13 @@ Adapt the gain if necessary to get a quicker fadeout when the source is too far static void S_AL_ScaleGain(src_t *chksrc, vec3_t origin) { float distance; - - if(chksrc->local) - distance = VectorLength(origin); - else + + if(!chksrc->local) distance = Distance(origin, lastListenerOrigin); - + // If we exceed a certain distance, scale the gain linearly until the sound // vanishes into nothingness. - if((distance -= s_alMaxDistance->value) > 0) + if(!chksrc->local && (distance -= s_alMaxDistance->value) > 0) { float scaleFactor; |