diff options
| author | SonicDcer <alejandro.asenjo88@gmail.com> | 2026-06-15 03:13:19 -0300 |
|---|---|---|
| committer | SonicDcer <alejandro.asenjo88@gmail.com> | 2026-06-15 03:13:19 -0300 |
| commit | cee62dd2c39ecf9c032c573fabed1fbb08f9517a (patch) | |
| tree | 34594092ae41c0d92b2b05c0f52be1d8bd18a253 /src/port | |
| parent | ed6604310a74c2207716a5bee32ae05d5fd00f7a (diff) | |
| parent | b96d7e4c530a11975b0f7a618253b9a0ea225880 (diff) | |
Merge branch 'main' of github.com:HarbourMasters/Starship
Diffstat (limited to 'src/port')
| -rw-r--r-- | src/port/Engine.h | 1 | ||||
| -rw-r--r-- | src/port/extractor/GameExtractor.cpp | 1 | ||||
| -rw-r--r-- | src/port/ui/ImguiUI.cpp | 51 |
3 files changed, 44 insertions, 9 deletions
diff --git a/src/port/Engine.h b/src/port/Engine.h index bbb50c60..b937e9db 100644 --- a/src/port/Engine.h +++ b/src/port/Engine.h @@ -6,6 +6,7 @@ typedef enum { SF64_VER_US = 0x94F1D5A7, SF64_VER_EU = 0x6EE9ADE7, + SF64_VER_EU_SPA = 0x3964945f, SF64_VER_JP = 0x3728D3E1 } SF64Version; diff --git a/src/port/extractor/GameExtractor.cpp b/src/port/extractor/GameExtractor.cpp index d75ab3c3..9be7f4b7 100644 --- a/src/port/extractor/GameExtractor.cpp +++ b/src/port/extractor/GameExtractor.cpp @@ -18,6 +18,7 @@ std::unordered_map<std::string, std::string> mGameList = { { "d064229a32cc05ab85e2381ce07744eb3ffaf530", "Star Fox 64 (J) (V1.0) (Uncompressed)" }, { "05b307b8804f992af1a1e2fbafbd588501fdf799", "Star Fox 64 (E) (V1.0)" }, { "09f5d5c14219fc77a36c5a6ad5e63f7abd8b3385", "Star Fox 64 (E) (V1.0) (Uncompressed)" }, + { "e6dad7523ff8f83fad6fbdb59d472b4f76340c2b", "Star Fox 64 (E) (V1.0) (Spanish Romhack)" }, { "c8a10699dea52f4bb2e2311935c1376dfb352e7a", "Star Fox 64 (C) (V1.1)" }, { "3a05aba5549fa71e8b16a0c6e2c8481b070818a9", "Star Fox 64 (C) (V1.1) (Uncompressed)" }, }; diff --git a/src/port/ui/ImguiUI.cpp b/src/port/ui/ImguiUI.cpp index 67dfb7e1..5874ac2a 100644 --- a/src/port/ui/ImguiUI.cpp +++ b/src/port/ui/ImguiUI.cpp @@ -115,6 +115,9 @@ static const char* filters[3] = { static const char* voiceLangs[] = { "Original", /*"Japanese",*/ "Lylat" }; +static const char* voiceLangsSPA[] = { + "EspaƱol", /*"Japanese",*/ "Lylat" +}; void DrawSpeakerPositionEditor() { static ImVec2 lastCanvasPos; @@ -309,15 +312,26 @@ void DrawSettingsMenu(){ UIWidgets::Spacer(0); if (UIWidgets::BeginMenu("Language")) { ImGui::Dummy(ImVec2(150, 0.0f)); - if (!GameEngine::HasVersion(SF64_VER_JP) && GameEngine::HasVersion(SF64_VER_EU)){ - //UIWidgets::Spacer(0); - if (UIWidgets::CVarCombobox("Voices", "gVoiceLanguage", voiceLangs, - { - .tooltip = "Changes the language of the voice acting in the game", - .defaultIndex = 0, - })) { - Audio_SetVoiceLanguage(CVarGetInteger("gVoiceLanguage", 0)); - }; + if (!GameEngine::HasVersion(SF64_VER_JP) && (GameEngine::HasVersion(SF64_VER_EU) || GameEngine::HasVersion(SF64_VER_EU_SPA))) { + if (GameEngine::HasVersion(SF64_VER_EU_SPA)) { + //UIWidgets::Spacer(0); + if (UIWidgets::CVarCombobox("Voices", "gVoiceLanguage", voiceLangsSPA, + { + .tooltip = "Changes the language of the voice acting in the game", + .defaultIndex = 0, + })) { + Audio_SetVoiceLanguage(CVarGetInteger("gVoiceLanguage", 0)); + }; + } else { + //UIWidgets::Spacer(0); + if (UIWidgets::CVarCombobox("Voices", "gVoiceLanguage", voiceLangs, + { + .tooltip = "Changes the language of the voice acting in the game", + .defaultIndex = 0, + })) { + Audio_SetVoiceLanguage(CVarGetInteger("gVoiceLanguage", 0)); + }; + } } else { if (UIWidgets::Button("Install JP/EU Audio")) { if (GameEngine::GenAssetFile(false)){ @@ -570,6 +584,10 @@ static const char* hudAspects[] = { "Expand", "Custom", "Original (4:3)", "Widescreen (16:9)", "Nintendo 3DS (5:3)", "16:10 (8:5)", "Ultrawide (21:9)" }; +static const char* radioCommBox[] = { + "Original", "Expand" +}; + void DrawEnhancementsMenu() { if (UIWidgets::BeginMenu("Enhancements")) { @@ -622,6 +640,21 @@ void DrawEnhancementsMenu() { } if (UIWidgets::BeginMenu("HUD")) { + if (UIWidgets::CVarCombobox("Radio Communication Box", "gRadioCommBox.Selection", radioCommBox, + { + .tooltip = "Which Aspect Ratio to use when drawing the Radio Communication Box", + .defaultIndex = 0, + })) { + switch (CVarGetInteger("gRadioCommBox.Selection", 0)) { + case 0: + CVarSetInteger("gRadioCommBox.expand", 0); + break; + case 1: + CVarSetInteger("gRadioCommBox.expand", 1); + break; + } + } + if (UIWidgets::CVarCombobox("HUD Aspect Ratio", "gHUDAspectRatio.Selection", hudAspects, { .tooltip = "Which Aspect Ratio to use when drawing the HUD (Radar, gauges and radio messages)", |
