Skip to content

Commit

Permalink
Use language global setting instead of gLanguages
Browse files Browse the repository at this point in the history
  • Loading branch information
xoascf authored Mar 27, 2024
1 parent 66eeb22 commit 56e0017
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 17 deletions.
2 changes: 1 addition & 1 deletion soh/soh/Enhancements/randomizer/randomizer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2931,7 +2931,7 @@ void GenerateRandomizerImgui(std::string seed = "") {
// RANDOTODO implement chest minigame shuffle with keysanity
cvarSettings[RSK_SHUFFLE_CHEST_MINIGAME] = false;

cvarSettings[RSK_LANGUAGE] = CVarGetInteger("gLanguages", 0);
cvarSettings[RSK_LANGUAGE] = gSaveContext.language;

cvarSettings[RSK_CUCCO_COUNT] = CVarGetInteger("gRandomizeCuccosToReturn", 7);
cvarSettings[RSK_BIG_POE_COUNT] = CVarGetInteger("gRandomizeBigPoeTargetCount", 10);
Expand Down
4 changes: 2 additions & 2 deletions soh/soh/Enhancements/tts/tts.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ std::string GetParameritizedText(std::string key, TextBank bank, const char* arg
}

const char* GetLanguageCode() {
switch (CVarGetInteger("gLanguages", 0)) {
switch (gSaveContext.language) {
case LANGUAGE_FRA:
return "fr-FR";
break;
Expand Down Expand Up @@ -1028,7 +1028,7 @@ void RegisterOnDialogMessageHook() {

void InitTTSBank() {
std::string languageSuffix = "_eng.json";
switch (CVarGetInteger("gLanguages", 0)) {
switch (gSaveContext.language) {
case LANGUAGE_FRA:
languageSuffix = "_fra.json";
break;
Expand Down
4 changes: 2 additions & 2 deletions soh/soh/SaveManager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1166,7 +1166,7 @@ int SaveManager::GetSaveSectionID(std::string& sectionName) {
void SaveManager::CreateDefaultGlobal() {
gSaveContext.audioSetting = 0;
gSaveContext.zTargetSetting = 0;
gSaveContext.language = CVarGetInteger("gLanguages", LANGUAGE_ENG);
gSaveContext.language = LANGUAGE_ENG;

SaveGlobal();
}
Expand Down Expand Up @@ -2546,7 +2546,7 @@ void SaveManager::ConvertFromUnversioned() {
gSaveContext.zTargetSetting = data[SRAM_HEADER_ZTARGET] & 1;
gSaveContext.language = data[SRAM_HEADER_LANGUAGE];
if (gSaveContext.language >= LANGUAGE_MAX) {
gSaveContext.language = CVarGetInteger("gLanguages", LANGUAGE_ENG);
gSaveContext.language = LANGUAGE_ENG;
}
SaveGlobal();

Expand Down
22 changes: 14 additions & 8 deletions soh/soh/SohMenuBar.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -457,14 +457,20 @@ void DrawSettingsMenu() {

if (ImGui::BeginMenu("Languages")) {
UIWidgets::PaddedEnhancementCheckbox("Translate Title Screen", "gTitleScreenTranslation");
if (UIWidgets::EnhancementRadioButton("English", "gLanguages", LANGUAGE_ENG)) {
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnSetGameLanguage>();
}
if (UIWidgets::EnhancementRadioButton("German", "gLanguages", LANGUAGE_GER)) {
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnSetGameLanguage>();
}
if (UIWidgets::EnhancementRadioButton("French", "gLanguages", LANGUAGE_FRA)) {
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnSetGameLanguage>();
if (ImGui::BeginCombo("Game Language", gSaveContext.language)) {
if (ImGui::Selectable("English")) {
gSaveContext.language = LANGUAGE_ENG;
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnSetGameLanguage>();
}
if (ImGui::Selectable("German")) {
gSaveContext.language = LANGUAGE_GER;
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnSetGameLanguage>();
}
if (ImGui::Selectable("French")) {
gSaveContext.language = LANGUAGE_FRA;
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnSetGameLanguage>();
}
ImGui::EndCombo();
}
ImGui::EndMenu();
}
Expand Down
2 changes: 0 additions & 2 deletions soh/src/code/game.c
Original file line number Diff line number Diff line change
Expand Up @@ -329,8 +329,6 @@ void GameState_Update(GameState* gameState) {
func_800C49F4(gfxCtx);
}

gSaveContext.language = CVarGetInteger("gLanguages", LANGUAGE_ENG);

GameInteractor_ExecuteOnGameFrameUpdate();
gameState->frames++;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -692,7 +692,6 @@ void FileChoose_UpdateOptionsMenu(GameState* thisx) {
sLastOptionButtonIndex = -1;
osSyncPrintf("SAVE");
Save_SaveGlobal();
CVarSave();
osSyncPrintf(VT_FGCOL(YELLOW));
osSyncPrintf("Na_SetSoundOutputMode = %d\n", gSaveContext.audioSetting);
osSyncPrintf("Na_SetSoundOutputMode = %d\n", gSaveContext.audioSetting);
Expand Down Expand Up @@ -753,7 +752,6 @@ void FileChoose_UpdateOptionsMenu(GameState* thisx) {

// Persist the new language so it is not overridden on the next frame
if (languageChanged) {
CVarSetInteger("gLanguages", gSaveContext.language);
GameInteractor_ExecuteOnSetGameLanguage();
}

Expand Down

0 comments on commit 56e0017

Please sign in to comment.