Remove sound menu and show proper msgs if sound is off (#9069)

master
Wuzzy 2020-04-13 20:26:54 +02:00 committed by GitHub
parent 27d611fe55
commit 7e21b3cd48
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 44 additions and 22 deletions

View File

@ -1922,29 +1922,47 @@ void Game::processKeyInput()
toggleFast(); toggleFast();
} else if (wasKeyDown(KeyType::NOCLIP)) { } else if (wasKeyDown(KeyType::NOCLIP)) {
toggleNoClip(); toggleNoClip();
#if USE_SOUND
} else if (wasKeyDown(KeyType::MUTE)) { } else if (wasKeyDown(KeyType::MUTE)) {
bool new_mute_sound = !g_settings->getBool("mute_sound"); if (g_settings->getBool("enable_sound")) {
g_settings->setBool("mute_sound", new_mute_sound); bool new_mute_sound = !g_settings->getBool("mute_sound");
if (new_mute_sound) g_settings->setBool("mute_sound", new_mute_sound);
m_game_ui->showTranslatedStatusText("Sound muted"); if (new_mute_sound)
else m_game_ui->showTranslatedStatusText("Sound muted");
m_game_ui->showTranslatedStatusText("Sound unmuted"); else
m_game_ui->showTranslatedStatusText("Sound unmuted");
} else {
m_game_ui->showTranslatedStatusText("Sound system is disabled");
}
} else if (wasKeyDown(KeyType::INC_VOLUME)) { } else if (wasKeyDown(KeyType::INC_VOLUME)) {
float new_volume = rangelim(g_settings->getFloat("sound_volume") + 0.1f, 0.0f, 1.0f); if (g_settings->getBool("enable_sound")) {
wchar_t buf[100]; float new_volume = rangelim(g_settings->getFloat("sound_volume") + 0.1f, 0.0f, 1.0f);
g_settings->setFloat("sound_volume", new_volume); wchar_t buf[100];
const wchar_t *str = wgettext("Volume changed to %d%%"); g_settings->setFloat("sound_volume", new_volume);
swprintf(buf, sizeof(buf) / sizeof(wchar_t), str, myround(new_volume * 100)); const wchar_t *str = wgettext("Volume changed to %d%%");
delete[] str; swprintf(buf, sizeof(buf) / sizeof(wchar_t), str, myround(new_volume * 100));
m_game_ui->showStatusText(buf); delete[] str;
m_game_ui->showStatusText(buf);
} else {
m_game_ui->showTranslatedStatusText("Sound system is disabled");
}
} else if (wasKeyDown(KeyType::DEC_VOLUME)) { } else if (wasKeyDown(KeyType::DEC_VOLUME)) {
float new_volume = rangelim(g_settings->getFloat("sound_volume") - 0.1f, 0.0f, 1.0f); if (g_settings->getBool("enable_sound")) {
wchar_t buf[100]; float new_volume = rangelim(g_settings->getFloat("sound_volume") - 0.1f, 0.0f, 1.0f);
g_settings->setFloat("sound_volume", new_volume); wchar_t buf[100];
const wchar_t *str = wgettext("Volume changed to %d%%"); g_settings->setFloat("sound_volume", new_volume);
swprintf(buf, sizeof(buf) / sizeof(wchar_t), str, myround(new_volume * 100)); const wchar_t *str = wgettext("Volume changed to %d%%");
delete[] str; swprintf(buf, sizeof(buf) / sizeof(wchar_t), str, myround(new_volume * 100));
m_game_ui->showStatusText(buf); delete[] str;
m_game_ui->showStatusText(buf);
} else {
m_game_ui->showTranslatedStatusText("Sound system is disabled");
}
#else
} else if (wasKeyDown(KeyType::MUTE) || wasKeyDown(KeyType::INC_VOLUME)
|| wasKeyDown(KeyType::DEC_VOLUME)) {
m_game_ui->showTranslatedStatusText("Sound system is not supported on this build");
#endif
} else if (wasKeyDown(KeyType::CINEMATIC)) { } else if (wasKeyDown(KeyType::CINEMATIC)) {
toggleCinematic(); toggleCinematic();
} else if (wasKeyDown(KeyType::SCREENSHOT)) { } else if (wasKeyDown(KeyType::SCREENSHOT)) {
@ -4162,8 +4180,12 @@ void Game::showPauseMenu()
} }
#ifndef __ANDROID__ #ifndef __ANDROID__
os << "button_exit[4," << (ypos++) << ";3,0.5;btn_sound;" #if USE_SOUND
<< strgettext("Sound Volume") << "]"; if (g_settings->getBool("enable_sound")) {
os << "button_exit[4," << (ypos++) << ";3,0.5;btn_sound;"
<< strgettext("Sound Volume") << "]";
}
#endif
os << "button_exit[4," << (ypos++) << ";3,0.5;btn_key_config;" os << "button_exit[4," << (ypos++) << ";3,0.5;btn_key_config;"
<< strgettext("Change Keys") << "]"; << strgettext("Change Keys") << "]";
#endif #endif