diff --git a/source/blood/src/sound.cpp b/source/blood/src/sound.cpp index ea4cc8b46..ffe24b065 100644 --- a/source/blood/src/sound.cpp +++ b/source/blood/src/sound.cpp @@ -170,7 +170,7 @@ void sndStartSample(unsigned int nSound, int nVolume, int nChannel, bool bLoop) if (nVolume < 0) { auto udata = soundEngine->GetUserData(snd); - if (udata) nVolume = udata[2]; + if (udata) nVolume = std::min(Scale(udata[2], 255, 100), 255); else nVolume = 255; } soundEngine->StartSound(SOURCE_None, nullptr, nullptr, (nChannel + 1), (bLoop? CHANF_LOOP : EChanFlags::FromInt(0)), snd, nVolume / 255.f, ATTN_NONE);