Add more game languages and make game names translatable

Game languages added:
- Spanish (Mexico)
- British English
- Portuguese (Portugal)
- Swedish
- Thai
- Indonesian
- Vietnamese (Vietnam)
This commit is contained in:
GMatrixGames 2020-10-12 18:42:15 -04:00
parent db1f5a225f
commit 231ffeb0f7
No known key found for this signature in database
GPG Key ID: 19B7F96FB9AF302F
8 changed files with 602 additions and 355 deletions

View File

@ -42,21 +42,28 @@
public enum ELanguage : long
{
English,
AustralianEnglish,
BritishEnglish,
French,
German,
Italian,
Spanish,
SpanishLatin,
SpanishMexico,
Arabic,
Japanese,
Korean,
Polish,
PortugueseBrazil,
PortuguesePortugal,
Russian,
Turkish,
Chinese,
TraditionalChinese,
AustralianEnglish
Swedish,
Thai,
Indonesian,
VietnameseVietnam
}
public enum EJsonType: long

View File

@ -3,6 +3,7 @@ using PakReader.Parsers.Objects;
using System;
using System.Collections.Generic;
using System.Windows;
using FModel.Properties;
using ToastNotifications;
using ToastNotifications.Lifetime;
using ToastNotifications.Position;
@ -52,17 +53,17 @@ namespace FModel
{
return ActualGame switch
{
EGame.Fortnite => "Fortnite",
EGame.Valorant => "Valorant",
EGame.DeadByDaylight => "Dead By Daylight",
EGame.Borderlands3 => "Borderlands 3",
EGame.MinecraftDungeons => "Minecraft Dungeons",
EGame.BattleBreakers => "Battle Breakers",
EGame.Spellbreak => "Spellbreak",
EGame.StateOfDecay2 => "State of Decay 2",
EGame.TheCycleEA => "The Cycle (Early Access)",
EGame.Fortnite => Resources.GameName_Fortnite,
EGame.Valorant => Resources.GameName_Valorant,
EGame.DeadByDaylight => Resources.GameName_DeadByDaylight,
EGame.Borderlands3 => Resources.GameName_Borderlands3,
EGame.MinecraftDungeons => Resources.GameName_MinecraftDungeons,
EGame.BattleBreakers => Resources.GameName_BattleBreakers,
EGame.Spellbreak => Resources.GameName_Spellbreak,
EGame.StateOfDecay2 => Resources.GameName_StateofDecay2,
EGame.TheCycleEA => Resources.GameName_TheCycle,
EGame.Unknown => "Unknown",
_ => "Unknown",
_ => "Unknown"
};
}
}

File diff suppressed because it is too large Load Diff

View File

@ -1091,4 +1091,55 @@ It's now the most used free software to leak on Fortnite.</value>
<data name="ResetSettings" xml:space="preserve">
<value>Reset Settings</value>
</data>
<data name="GameName_Fortnite" xml:space="preserve">
<value>Fortnite</value>
</data>
<data name="GameName_Valorant" xml:space="preserve">
<value>Valorant</value>
</data>
<data name="GameName_DeadByDaylight" xml:space="preserve">
<value>Dead By Daylight</value>
</data>
<data name="GameName_Borderlands3" xml:space="preserve">
<value>Borderlands 3</value>
</data>
<data name="GameName_MinecraftDungeons" xml:space="preserve">
<value>Minecraft Dungeons</value>
</data>
<data name="AustralianEnglish" xml:space="preserve">
<value>Australian English</value>
</data>
<data name="BritishEnglish" xml:space="preserve">
<value>British English</value>
</data>
<data name="PortuguesePortugal" xml:space="preserve">
<value>Portuguese (Portugal)</value>
</data>
<data name="SpanishMexico" xml:space="preserve">
<value>Spanish (Mexico)</value>
</data>
<data name="Swedish" xml:space="preserve">
<value>Swedish</value>
</data>
<data name="Thai" xml:space="preserve">
<value>Thai</value>
</data>
<data name="Indonesian" xml:space="preserve">
<value>Indonesian</value>
</data>
<data name="VietnameseVietnam" xml:space="preserve">
<value>Vietnamese (Vietnam)</value>
</data>
<data name="GameName_BattleBreakers" xml:space="preserve">
<value>Battle Breakers</value>
</data>
<data name="GameName_Spellbreak" xml:space="preserve">
<value>Spellbreak</value>
</data>
<data name="GameName_StateofDecay2" xml:space="preserve">
<value>State of Decay 2</value>
</data>
<data name="GameName_TheCycle" xml:space="preserve">
<value>The Cycle</value>
</data>
</root>

View File

@ -796,4 +796,31 @@
<data name="Fat" xml:space="preserve">
<value>厚</value>
</data>
<data name="GameName_Fortnite" xml:space="preserve">
<value>堡垒之夜</value>
</data>
<data name="GameName_Valorant" xml:space="preserve">
<value>无畏契约</value>
</data>
<data name="GameName_MinecraftDungeons" xml:space="preserve">
<value>我的世界地牢</value>
</data>
<data name="GameName_Borderlands3" xml:space="preserve">
<value>无主之地3</value>
</data>
<data name="GameName_BattleBreakers" xml:space="preserve">
<value>《BATTLE BREAKERS》</value>
</data>
<data name="GameName_Spellbreak" xml:space="preserve">
<value>《Spellbreak》</value>
</data>
<data name="GameName_StateofDecay2" xml:space="preserve">
<value>《State of Decay 2》</value>
</data>
<data name="GameName_DeadByDaylight" xml:space="preserve">
<value>《Dead by Daylight》</value>
</data>
<data name="GameName_TheCycle" xml:space="preserve">
<value>《The Cycle》</value>
</data>
</root>

View File

@ -147,9 +147,6 @@ namespace FModel.Utils
else if (Globals.Game.ActualGame == EGame.Valorant)
return lang switch
{
//Indonesian id-ID
//Thailand th-TH
//Vietnam vi-VN
ELanguage.English => "en-US",
ELanguage.French => "fr-FR",
ELanguage.German => "de-DE",
@ -165,12 +162,14 @@ namespace FModel.Utils
ELanguage.Turkish => "tr-TR",
ELanguage.Chinese => "zh-CN",
ELanguage.TraditionalChinese => "zh-TW",
ELanguage.Thai => "th-TH",
ELanguage.VietnameseVietnam => "vi-VN",
ELanguage.Indonesian => "id-ID",
_ => "en",
};
else if (Globals.Game.ActualGame == EGame.DeadByDaylight)
return lang switch
{
//Thailand th
ELanguage.English => "en",
ELanguage.French => "fr",
ELanguage.German => "de",
@ -186,25 +185,26 @@ namespace FModel.Utils
ELanguage.Turkish => "tr",
ELanguage.Chinese => "zh-Hans",
ELanguage.TraditionalChinese => "zh-Hant",
ELanguage.Thai => "th",
_ => "en",
};
else if (Globals.Game.ActualGame == EGame.MinecraftDungeons)
return lang switch
{
//Swedish sv-SE
//Mexican Spanish es-MX
//Portugal Portuguese pt-PT
//British English en-GB
ELanguage.English => "en",
ELanguage.BritishEnglish => "en-GB",
ELanguage.French => "fr-FR",
ELanguage.German => "de-DE",
ELanguage.Italian => "it-IT",
ELanguage.Spanish => "es-ES",
ELanguage.SpanishMexico => "es-MX",
ELanguage.Japanese => "ja-JP",
ELanguage.Korean => "ko-KR",
ELanguage.Polish => "pl-PL",
ELanguage.PortugueseBrazil => "pt-BR",
ELanguage.PortuguesePortugal => "pt-PT",
ELanguage.Russian => "ru-RU",
ELanguage.Swedish => "sv-SE",
_ => "en"
};
else if (Globals.Game.ActualGame == EGame.BattleBreakers)
@ -244,9 +244,9 @@ namespace FModel.Utils
ELanguage.PortugueseBrazil => "pt-BR",
ELanguage.Italian => "it-IT",
ELanguage.French => "fr-FR",
ELanguage.SpanishLatin => "es-MX",
ELanguage.SpanishMexico => "es-MX",
ELanguage.German => "de-DE",
_ => "en"
_ => "en-US"
};
else if (Globals.Game.ActualGame == EGame.TheCycleEA)
return lang switch

View File

@ -52,20 +52,28 @@ namespace FModel.ViewModels.ComboBox
public static ObservableCollection<ComboBoxViewModel> languageCbViewModel = new ObservableCollection<ComboBoxViewModel>
{
new ComboBoxViewModel { Id = 0, Content = Properties.Resources.English, Property = ELanguage.English },
new ComboBoxViewModel { Id = 1, Content = Properties.Resources.French, Property = ELanguage.French },
new ComboBoxViewModel { Id = 2, Content = Properties.Resources.German, Property = ELanguage.German },
new ComboBoxViewModel { Id = 3, Content = Properties.Resources.Italian, Property = ELanguage.Italian },
new ComboBoxViewModel { Id = 4, Content = Properties.Resources.Spanish, Property = ELanguage.Spanish },
new ComboBoxViewModel { Id = 5, Content = Properties.Resources.SpanishLatin, Property = ELanguage.SpanishLatin },
new ComboBoxViewModel { Id = 6, Content = Properties.Resources.Arabic, Property = ELanguage.Arabic },
new ComboBoxViewModel { Id = 7, Content = Properties.Resources.Japanese, Property = ELanguage.Japanese },
new ComboBoxViewModel { Id = 8, Content = Properties.Resources.Korean, Property = ELanguage.Korean },
new ComboBoxViewModel { Id = 9, Content = Properties.Resources.Polish, Property = ELanguage.Polish },
new ComboBoxViewModel { Id = 10, Content = Properties.Resources.PortugueseBrazil, Property = ELanguage.PortugueseBrazil },
new ComboBoxViewModel { Id = 11, Content = Properties.Resources.Russian, Property = ELanguage.Russian },
new ComboBoxViewModel { Id = 12, Content = Properties.Resources.Turkish, Property = ELanguage.Turkish },
new ComboBoxViewModel { Id = 13, Content = Properties.Resources.Chinese, Property = ELanguage.Chinese },
new ComboBoxViewModel { Id = 14, Content = Properties.Resources.TraditionalChinese, Property = ELanguage.TraditionalChinese }
new ComboBoxViewModel { Id = 1, Content = Properties.Resources.AustralianEnglish, Property = ELanguage.AustralianEnglish },
new ComboBoxViewModel { Id = 2, Content = Properties.Resources.BritishEnglish, Property = ELanguage.BritishEnglish },
new ComboBoxViewModel { Id = 3, Content = Properties.Resources.French, Property = ELanguage.French },
new ComboBoxViewModel { Id = 4, Content = Properties.Resources.German, Property = ELanguage.German },
new ComboBoxViewModel { Id = 5, Content = Properties.Resources.Italian, Property = ELanguage.Italian },
new ComboBoxViewModel { Id = 6, Content = Properties.Resources.Spanish, Property = ELanguage.Spanish },
new ComboBoxViewModel { Id = 7, Content = Properties.Resources.SpanishLatin, Property = ELanguage.SpanishLatin },
new ComboBoxViewModel { Id = 8, Content = Properties.Resources.SpanishMexico, Property = ELanguage.SpanishMexico },
new ComboBoxViewModel { Id = 9, Content = Properties.Resources.Arabic, Property = ELanguage.Arabic },
new ComboBoxViewModel { Id = 10, Content = Properties.Resources.Japanese, Property = ELanguage.Japanese },
new ComboBoxViewModel { Id = 11, Content = Properties.Resources.Korean, Property = ELanguage.Korean },
new ComboBoxViewModel { Id = 12, Content = Properties.Resources.Polish, Property = ELanguage.Polish },
new ComboBoxViewModel { Id = 13, Content = Properties.Resources.PortugueseBrazil, Property = ELanguage.PortugueseBrazil },
new ComboBoxViewModel { Id = 14, Content = Properties.Resources.PortuguesePortugal, Property = ELanguage.PortuguesePortugal },
new ComboBoxViewModel { Id = 15, Content = Properties.Resources.Russian, Property = ELanguage.Russian },
new ComboBoxViewModel { Id = 16, Content = Properties.Resources.Turkish, Property = ELanguage.Turkish },
new ComboBoxViewModel { Id = 17, Content = Properties.Resources.Chinese, Property = ELanguage.Chinese },
new ComboBoxViewModel { Id = 18, Content = Properties.Resources.TraditionalChinese, Property = ELanguage.TraditionalChinese },
new ComboBoxViewModel { Id = 19, Content = Properties.Resources.Swedish, Property = ELanguage.Swedish },
new ComboBoxViewModel { Id = 20, Content = Properties.Resources.Thai, Property = ELanguage.Thai },
new ComboBoxViewModel { Id = 21, Content = Properties.Resources.Indonesian, Property = ELanguage.Indonesian },
new ComboBoxViewModel { Id = 22, Content = Properties.Resources.VietnameseVietnam, Property = ELanguage.VietnameseVietnam }
};
public static ObservableCollection<ComboBoxViewModel> jsonCbViewModel = new ObservableCollection<ComboBoxViewModel>

View File

@ -37,11 +37,11 @@ namespace FModel.Windows.Settings
_outputPath = Properties.Settings.Default.OutputPath;
_useDiscordRpc = Properties.Settings.Default.UseDiscordRpc;
FLanguages_CbBox.ItemsSource = ComboBoxVm.programLanguageCbViewModel;
FLanguages_CbBox.SelectedItem = ComboBoxVm.programLanguageCbViewModel.Where(x => x.Id == Properties.Settings.Default.ProgramLanguage).FirstOrDefault();
FLanguages_CbBox.SelectedItem = ComboBoxVm.programLanguageCbViewModel.FirstOrDefault(x => x.Id == Properties.Settings.Default.ProgramLanguage);
Languages_CbBox.ItemsSource = ComboBoxVm.languageCbViewModel;
Languages_CbBox.SelectedItem = ComboBoxVm.languageCbViewModel.Where(x => x.Id == Properties.Settings.Default.AssetsLanguage).FirstOrDefault();
Languages_CbBox.SelectedItem = ComboBoxVm.languageCbViewModel.FirstOrDefault(x => x.Id == Properties.Settings.Default.AssetsLanguage);
Json_CbBox.ItemsSource = ComboBoxVm.jsonCbViewModel;
Json_CbBox.SelectedItem = ComboBoxVm.jsonCbViewModel.Where(x => x.Id == Properties.Settings.Default.AssetsJsonType).FirstOrDefault();
Json_CbBox.SelectedItem = ComboBoxVm.jsonCbViewModel.FirstOrDefault(x => x.Id == Properties.Settings.Default.AssetsJsonType);
}
private async Task SaveAndExit()