MCPcopy Create free account
hub / github.com/OpenXcom/OpenXcom / setVolume

Method setVolume

src/Engine/Game.cpp:338–359  ·  view source on GitHub ↗

* Changes the audio volume of the music and * sound effect channels. * @param sound Sound volume, from 0 to MIX_MAX_VOLUME. * @param music Music volume, from 0 to MIX_MAX_VOLUME. * @param ui UI volume, from 0 to MIX_MAX_VOLUME. */

Source from the content-addressed store, hash-verified

336 * @param ui UI volume, from 0 to MIX_MAX_VOLUME.
337 */
338void Game::setVolume(int sound, int music, int ui)
339{
340 if (!Options::mute)
341 {
342 if (sound >= 0)
343 {
344 sound = volumeExponent(sound) * (double)SDL_MIX_MAXVOLUME;
345 Mix_Volume(-1, sound);
346 }
347 if (music >= 0)
348 {
349 music = volumeExponent(music) * (double)SDL_MIX_MAXVOLUME;
350 Mix_VolumeMusic(music);
351 }
352 if (ui >= 0)
353 {
354 ui = volumeExponent(ui) * (double)SDL_MIX_MAXVOLUME;
355 Mix_Volume(1, ui);
356 Mix_Volume(2, ui);
357 }
358 }
359}
360
361double Game::volumeExponent(int volume)
362{

Callers 7

slrMusicVolumeChangeMethod · 0.80
slrSoundVolumeChangeMethod · 0.80
slrUiVolumeChangeMethod · 0.80
IntroStateMethod · 0.80
initMethod · 0.80
btnOkClickMethod · 0.80
btnCancelClickMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected