dynamic_wallet_icon cvar

This commit is contained in:
Thomas Achatz 2022-03-30 20:34:16 -05:00
commit 795a10f0eb
4 changed files with 37 additions and 18 deletions

View file

@ -58,6 +58,9 @@ namespace Game {
Settings.enhancements.animated_pause_menu = stob(Conf[EnhancementSection]["animated_pause_menu"]); Settings.enhancements.animated_pause_menu = stob(Conf[EnhancementSection]["animated_pause_menu"]);
CVar_SetS32(const_cast<char*>("gPauseLiveLink"), Settings.enhancements.animated_pause_menu); CVar_SetS32(const_cast<char*>("gPauseLiveLink"), Settings.enhancements.animated_pause_menu);
Settings.enhancements.dynamic_wallet_icon = stob(Conf[EnhancementSection]["dynamic_wallet_icon"]);
CVar_SetS32(const_cast<char*>("gDynamicWalletIcon"), Settings.enhancements.dynamic_wallet_icon);
// Audio // Audio
Settings.audio.master = Ship::stof(Conf[AudioSection]["master"]); Settings.audio.master = Ship::stof(Conf[AudioSection]["master"]);
CVar_SetFloat(const_cast<char*>("gGameMasterVolume"), Settings.audio.master); CVar_SetFloat(const_cast<char*>("gGameMasterVolume"), Settings.audio.master);
@ -139,6 +142,7 @@ namespace Game {
Conf[EnhancementSection]["fast_text"] = std::to_string(Settings.enhancements.fast_text); Conf[EnhancementSection]["fast_text"] = std::to_string(Settings.enhancements.fast_text);
Conf[EnhancementSection]["disable_lod"] = std::to_string(Settings.enhancements.disable_lod); Conf[EnhancementSection]["disable_lod"] = std::to_string(Settings.enhancements.disable_lod);
Conf[EnhancementSection]["animated_pause_menu"] = std::to_string(Settings.enhancements.animated_pause_menu); Conf[EnhancementSection]["animated_pause_menu"] = std::to_string(Settings.enhancements.animated_pause_menu);
Conf[EnhancementSection]["dynamic_wallet_icon"] = std::to_string(Settings.enhancements.dynamic_wallet_icon);
// Controllers // Controllers

View file

@ -23,6 +23,7 @@ struct SoHConfigType {
bool fast_text = false; bool fast_text = false;
bool disable_lod = false; bool disable_lod = false;
bool animated_pause_menu = false; bool animated_pause_menu = false;
bool dynamic_wallet_icon = false;
} enhancements; } enhancements;
// Controller // Controller

View file

@ -358,6 +358,11 @@ namespace SohImGui {
needs_save = true; needs_save = true;
} }
if (ImGui::Checkbox("Dynamic Wallet Icon", &Game::Settings.enhancements.dynamic_wallet_icon)) {
CVar_SetS32(const_cast<char*>("gDynamicWalletIcon"), Game::Settings.enhancements.dynamic_wallet_icon);
needs_save = true;
}
ImGui::EndMenu(); ImGui::EndMenu();
} }

View file

@ -3169,24 +3169,33 @@ void Interface_Draw(GlobalContext* globalCtx) {
s16 rupeeR; s16 rupeeR;
s16 rupeeG; s16 rupeeG;
s16 rupeeB; s16 rupeeB;
switch (CUR_UPG_VALUE(UPG_WALLET)) {
case 0: if (CVar_GetS32("gDynamicWalletIcon", 0)) {
rupeeR = rupeeIconGreen[0]; switch (CUR_UPG_VALUE(UPG_WALLET)) {
rupeeG = rupeeIconGreen[1]; case 0:
rupeeB = rupeeIconGreen[2]; rupeeR = rupeeIconGreen[0];
break; rupeeG = rupeeIconGreen[1];
case 1: rupeeB = rupeeIconGreen[2];
rupeeR = rupeeIconBlue[0]; break;
rupeeG = rupeeIconBlue[1]; case 1:
rupeeB = rupeeIconBlue[2]; rupeeR = rupeeIconBlue[0];
break; rupeeG = rupeeIconBlue[1];
case 2: rupeeB = rupeeIconBlue[2];
rupeeR = rupeeIconRed[0]; break;
rupeeG = rupeeIconRed[1]; case 2:
rupeeB = rupeeIconRed[2]; rupeeR = rupeeIconRed[0];
break; rupeeG = rupeeIconRed[1];
default: rupeeB = rupeeIconRed[2];
break; break;
default:
break;
}
}
else {
rupeeR = rupeeIconGreen[0];
rupeeG = rupeeIconGreen[1];
rupeeB = rupeeIconGreen[2];
} }
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, rupeeR, rupeeG, rupeeB, interfaceCtx->magicAlpha); gDPSetPrimColor(OVERLAY_DISP++, 0, 0, rupeeR, rupeeG, rupeeB, interfaceCtx->magicAlpha);