mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2025-09-06 00:44:42 +00:00
Compare commits
3 Commits
4860ca342c
...
356090b683
Author | SHA1 | Date | |
---|---|---|---|
![]() |
356090b683 | ||
![]() |
af6d357d8a | ||
![]() |
2fe0bcff12 |
@ -58,5 +58,6 @@
|
|||||||
<PackageVersion Include="System.IO.Hashing" Version="9.0.2" />
|
<PackageVersion Include="System.IO.Hashing" Version="9.0.2" />
|
||||||
<PackageVersion Include="System.Management" Version="9.0.2" />
|
<PackageVersion Include="System.Management" Version="9.0.2" />
|
||||||
<PackageVersion Include="UnicornEngine.Unicorn" Version="2.0.2-rc1-fb78016" />
|
<PackageVersion Include="UnicornEngine.Unicorn" Version="2.0.2-rc1-fb78016" />
|
||||||
|
<PackageVersion Include="WebViewControl-Avalonia" Version="3.120.10" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
@ -8,7 +8,7 @@ using LibHac.Tools.FsSystem.NcaUtils;
|
|||||||
using Ryujinx.Common.Helper;
|
using Ryujinx.Common.Helper;
|
||||||
using Ryujinx.Common.Logging;
|
using Ryujinx.Common.Logging;
|
||||||
using Ryujinx.HLE.HOS.Services.Am.AppletAE;
|
using Ryujinx.HLE.HOS.Services.Am.AppletAE;
|
||||||
using Ryujinx.HLE.HOS.SystemState;
|
using Ryujinx.HLE.Utilities;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
@ -74,34 +74,6 @@ namespace Ryujinx.HLE.HOS.Applets.Error
|
|||||||
return ((resultCode & 0x1FF) + 2000, (resultCode >> 9) & 0x3FFF);
|
return ((resultCode & 0x1FF) + 2000, (resultCode >> 9) & 0x3FFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static string SystemLanguageToLanguageKey(SystemLanguage systemLanguage)
|
|
||||||
{
|
|
||||||
return systemLanguage switch
|
|
||||||
{
|
|
||||||
#pragma warning disable IDE0055 // Disable formatting
|
|
||||||
SystemLanguage.Japanese => "ja",
|
|
||||||
SystemLanguage.AmericanEnglish => "en-US",
|
|
||||||
SystemLanguage.French => "fr",
|
|
||||||
SystemLanguage.German => "de",
|
|
||||||
SystemLanguage.Italian => "it",
|
|
||||||
SystemLanguage.Spanish => "es",
|
|
||||||
SystemLanguage.Chinese => "zh-Hans",
|
|
||||||
SystemLanguage.Korean => "ko",
|
|
||||||
SystemLanguage.Dutch => "nl",
|
|
||||||
SystemLanguage.Portuguese => "pt",
|
|
||||||
SystemLanguage.Russian => "ru",
|
|
||||||
SystemLanguage.Taiwanese => "zh-HansT",
|
|
||||||
SystemLanguage.BritishEnglish => "en-GB",
|
|
||||||
SystemLanguage.CanadianFrench => "fr-CA",
|
|
||||||
SystemLanguage.LatinAmericanSpanish => "es-419",
|
|
||||||
SystemLanguage.SimplifiedChinese => "zh-Hans",
|
|
||||||
SystemLanguage.TraditionalChinese => "zh-Hant",
|
|
||||||
SystemLanguage.BrazilianPortuguese => "pt-BR",
|
|
||||||
_ => "en-US",
|
|
||||||
#pragma warning restore IDE0055
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
private static string CleanText(string value)
|
private static string CleanText(string value)
|
||||||
{
|
{
|
||||||
return Patterns.CleanText.Replace(value, string.Empty).Replace("\0", string.Empty);
|
return Patterns.CleanText.Replace(value, string.Empty).Replace("\0", string.Empty);
|
||||||
@ -114,7 +86,7 @@ namespace Ryujinx.HLE.HOS.Applets.Error
|
|||||||
using LibHac.Fs.IStorage ncaFileStream = new LocalStorage(FileSystem.VirtualFileSystem.SwitchPathToSystemPath(binaryTitleContentPath), FileAccess.Read, FileMode.Open);
|
using LibHac.Fs.IStorage ncaFileStream = new LocalStorage(FileSystem.VirtualFileSystem.SwitchPathToSystemPath(binaryTitleContentPath), FileAccess.Read, FileMode.Open);
|
||||||
Nca nca = new(_horizon.Device.FileSystem.KeySet, ncaFileStream);
|
Nca nca = new(_horizon.Device.FileSystem.KeySet, ncaFileStream);
|
||||||
IFileSystem romfs = nca.OpenFileSystem(NcaSectionType.Data, _horizon.FsIntegrityCheckLevel);
|
IFileSystem romfs = nca.OpenFileSystem(NcaSectionType.Data, _horizon.FsIntegrityCheckLevel);
|
||||||
string languageCode = SystemLanguageToLanguageKey(_horizon.State.DesiredSystemLanguage);
|
string languageCode = GlobalizationUtils.SystemLanguageToLanguageKey(_horizon.State.DesiredSystemLanguage);
|
||||||
string filePath = $"/{module}/{description:0000}/{languageCode}_{key}";
|
string filePath = $"/{module}/{description:0000}/{languageCode}_{key}";
|
||||||
|
|
||||||
if (romfs.FileExists(filePath))
|
if (romfs.FileExists(filePath))
|
||||||
|
35
src/Ryujinx.HLE/Utilities/GlobalizationUtils.cs
Normal file
35
src/Ryujinx.HLE/Utilities/GlobalizationUtils.cs
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
using Ryujinx.HLE.HOS.SystemState;
|
||||||
|
|
||||||
|
namespace Ryujinx.HLE.Utilities
|
||||||
|
{
|
||||||
|
static class GlobalizationUtils
|
||||||
|
{
|
||||||
|
public static string SystemLanguageToLanguageKey(SystemLanguage systemLanguage)
|
||||||
|
{
|
||||||
|
return systemLanguage switch
|
||||||
|
{
|
||||||
|
#pragma warning disable IDE0055 // Disable formatting
|
||||||
|
SystemLanguage.Japanese => "ja",
|
||||||
|
SystemLanguage.AmericanEnglish => "en-US",
|
||||||
|
SystemLanguage.French => "fr",
|
||||||
|
SystemLanguage.German => "de",
|
||||||
|
SystemLanguage.Italian => "it",
|
||||||
|
SystemLanguage.Spanish => "es",
|
||||||
|
SystemLanguage.Chinese => "zh-Hans",
|
||||||
|
SystemLanguage.Korean => "ko",
|
||||||
|
SystemLanguage.Dutch => "nl",
|
||||||
|
SystemLanguage.Portuguese => "pt",
|
||||||
|
SystemLanguage.Russian => "ru",
|
||||||
|
SystemLanguage.Taiwanese => "zh-HansT",
|
||||||
|
SystemLanguage.BritishEnglish => "en-GB",
|
||||||
|
SystemLanguage.CanadianFrench => "fr-CA",
|
||||||
|
SystemLanguage.LatinAmericanSpanish => "es-419",
|
||||||
|
SystemLanguage.SimplifiedChinese => "zh-Hans",
|
||||||
|
SystemLanguage.TraditionalChinese => "zh-Hant",
|
||||||
|
SystemLanguage.BrazilianPortuguese => "pt-BR",
|
||||||
|
_ => "en-US",
|
||||||
|
#pragma warning restore IDE0055
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -74,6 +74,7 @@
|
|||||||
<PackageReference Include="Silk.NET.Vulkan.Extensions.KHR" />
|
<PackageReference Include="Silk.NET.Vulkan.Extensions.KHR" />
|
||||||
<PackageReference Include="SPB" />
|
<PackageReference Include="SPB" />
|
||||||
<PackageReference Include="SharpZipLib" />
|
<PackageReference Include="SharpZipLib" />
|
||||||
|
<PackageReference Include="WebViewControl-Avalonia" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
Loading…
Reference in New Issue
Block a user