diff --git a/UnleashedRecomp/api/SWA/System/ApplicationDocument.h b/UnleashedRecomp/api/SWA/System/ApplicationDocument.h index c712e84b..d9fa2624 100644 --- a/UnleashedRecomp/api/SWA/System/ApplicationDocument.h +++ b/UnleashedRecomp/api/SWA/System/ApplicationDocument.h @@ -5,6 +5,16 @@ namespace SWA { + enum ELanguage : uint32_t + { + eLanguage_English, + eLanguage_Japanese, + eLanguage_German, + eLanguage_French, + eLanguage_Italian, + eLanguage_Spanish + }; + enum EVoiceLanguage : uint32_t { eVoiceLanguage_English, @@ -28,7 +38,7 @@ namespace SWA xpointer m_pVftable; xpointer m_pMember; - SWA_INSERT_PADDING(0x04); + be m_Language; be m_VoiceLanguage; SWA_INSERT_PADDING(0x0C); be m_Region; diff --git a/UnleashedRecomp/patches/audio_patches.cpp b/UnleashedRecomp/patches/audio_patches.cpp index a6527aae..a2a721f6 100644 --- a/UnleashedRecomp/patches/audio_patches.cpp +++ b/UnleashedRecomp/patches/audio_patches.cpp @@ -27,15 +27,5 @@ void AudioPatches::Update(float deltaTime) *pEffectsVolume = Config::EffectsVolume; } -PPC_FUNC_IMPL(__imp__sub_824EB9B0); -PPC_FUNC(sub_824EB9B0) -{ - auto pApplicationDocument = (SWA::CApplicationDocument*)g_memory.Translate(ctx.r4.u32); - - pApplicationDocument->m_VoiceLanguage = (SWA::EVoiceLanguage)Config::VoiceLanguage.Value; - - __imp__sub_824EB9B0(ctx, base); -} - // Stub volume setter. GUEST_FUNCTION_STUB(sub_82E58728); diff --git a/UnleashedRecomp/patches/resident_patches.cpp b/UnleashedRecomp/patches/resident_patches.cpp index 7e4b582f..ea95d557 100644 --- a/UnleashedRecomp/patches/resident_patches.cpp +++ b/UnleashedRecomp/patches/resident_patches.cpp @@ -31,6 +31,17 @@ PPC_FUNC(sub_824DCF38) __imp__sub_824DCF38(ctx, base); } +// Load voice language files. +PPC_FUNC_IMPL(__imp__sub_824EB9B0); +PPC_FUNC(sub_824EB9B0) +{ + auto pApplicationDocument = (SWA::CApplicationDocument*)g_memory.Translate(ctx.r4.u32); + + pApplicationDocument->m_VoiceLanguage = (SWA::EVoiceLanguage)Config::VoiceLanguage.Value; + + __imp__sub_824EB9B0(ctx, base); +} + // CApplicationDocument::LoadArchiveDatabases PPC_FUNC_IMPL(__imp__sub_824EFD28); PPC_FUNC(sub_824EFD28)