diff --git a/BetterHI3Launcher.csproj b/BetterHI3Launcher.csproj
index 68fbd1e..ba5601b 100644
--- a/BetterHI3Launcher.csproj
+++ b/BetterHI3Launcher.csproj
@@ -225,6 +225,7 @@
+
diff --git a/DialogWindow.xaml b/DialogWindow.xaml
index bc5a1ee..4b39c70 100644
--- a/DialogWindow.xaml
+++ b/DialogWindow.xaml
@@ -87,9 +87,11 @@
-
-
-
+
+
+
+
+
diff --git a/DialogWindow.xaml.cs b/DialogWindow.xaml.cs
index b66096f..200c224 100644
--- a/DialogWindow.xaml.cs
+++ b/DialogWindow.xaml.cs
@@ -1,5 +1,6 @@
using System.ComponentModel;
using System.Windows;
+using System.Windows.Media;
namespace BetterHI3Launcher
{
@@ -24,6 +25,10 @@ public DialogWindow(string title, string message, bool question = false)
ConfirmButton.Content = MainWindow.textStrings["button_yes"];
CancelButton.Content = MainWindow.textStrings["button_no"];
}
+ if(MainWindow.LauncherLanguage != "en")
+ {
+ Resources["Font"] = new FontFamily("Segoe UI Bold");
+ }
Application.Current.MainWindow.WindowState = WindowState.Normal;
BpUtility.PlaySound(Properties.Resources.Window_Open);
}
diff --git a/MainWindow.xaml b/MainWindow.xaml
index 1e6f92c..2760cd8 100644
--- a/MainWindow.xaml
+++ b/MainWindow.xaml
@@ -188,7 +188,7 @@
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
+
-
+
+
+
+
+
+
-
-
-
-
+
+
+
-
-
-
-
-
-
+
-
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
-
+
diff --git a/MainWindow.xaml.cs b/MainWindow.xaml.cs
index 622a34d..6c085f6 100644
--- a/MainWindow.xaml.cs
+++ b/MainWindow.xaml.cs
@@ -45,7 +45,7 @@ enum HI3Mirror
public partial class MainWindow : Window
{
- public static readonly Version LocalLauncherVersion = new Version("1.1.20210511.0");
+ public static readonly Version LocalLauncherVersion = new Version("1.1.20210513.0");
public static readonly string RootPath = Directory.GetCurrentDirectory();
public static readonly string LocalLowPath = $"{Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)}Low";
public static readonly string LauncherDataPath = Path.Combine(LocalLowPath, @"Bp\Better HI3 Launcher");
@@ -349,6 +349,9 @@ public MainWindow()
case "sr-Latn-RS":
LauncherLanguage = "sr";
break;
+ case "th-TH":
+ LauncherLanguage = "th";
+ break;
case "vi-VN":
LauncherLanguage = "vi";
break;
@@ -507,6 +510,9 @@ public MainWindow()
var CMLanguageSerbian = new MenuItem{Header = textStrings["contextmenu_language_serbian"]};
CMLanguageSerbian.Click += (sender, e) => CM_Language_Click(sender, e);
CMLanguage.Items.Add(CMLanguageSerbian);
+ var CMLanguageThai = new MenuItem {Header = textStrings["contextmenu_language_thai"]};
+ CMLanguageThai.Click += (sender, e) => CM_Language_Click(sender, e);
+ CMLanguage.Items.Add(CMLanguageThai);
CMLanguage.Items.Add(new Separator());
var CMLanguageContribute = new MenuItem{Header = textStrings["contextmenu_language_contribute"]};
CMLanguageContribute.Click += (sender, e) => BpUtility.StartProcess("https://github.com/BuIlDaLiBlE/BetterHI3Launcher#contibuting-translations", null, RootPath, true);
@@ -544,6 +550,9 @@ public MainWindow()
case "sr":
CMLanguageSerbian.IsChecked = true;
break;
+ case "th":
+ CMLanguageThai.IsChecked = true;
+ break;
default:
CMLanguageEnglish.IsChecked = true;
break;
@@ -1829,7 +1838,6 @@ await Task.Run(() =>
{
ChangelogBox.Visibility = Visibility.Visible;
ChangelogBoxMessageTextBlock.Visibility = Visibility.Visible;
- ChangelogBoxScrollViewer.Height -= 20;
FetchChangelog();
}
try
@@ -2061,9 +2069,12 @@ string SelectGameInstallDirectory()
private void OptionsButton_Click(object sender, RoutedEventArgs e)
{
- BpUtility.PlaySound(Properties.Resources.Click);
- OptionsContextMenu.PlacementTarget = sender as Button;
+ var button = sender as Button;
+ OptionsContextMenu.Placement = System.Windows.Controls.Primitives.PlacementMode.Relative;
+ OptionsContextMenu.PlacementTarget = button;
+ OptionsContextMenu.VerticalOffset = button.Height;
OptionsContextMenu.IsOpen = true;
+ BpUtility.PlaySound(Properties.Resources.Click);
}
private async Task CM_DownloadCache_Click(object sender, RoutedEventArgs e)
@@ -2882,52 +2893,47 @@ private void CM_Language_Click(object sender, RoutedEventArgs e)
{
try{LauncherRegKey.DeleteValue("Language");}catch{}
}
- else if(lang == textStrings["contextmenu_language_english"])
- {
- LauncherLanguage = "en";
- }
- else if(lang == textStrings["contextmenu_language_russian"])
- {
- LauncherLanguage = "ru";
- }
- else if(lang == textStrings["contextmenu_language_spanish"])
- {
- LauncherLanguage = "es";
- }
- else if(lang == textStrings["contextmenu_language_portuguese"])
- {
- LauncherLanguage = "pt";
- }
- else if(lang == textStrings["contextmenu_language_german"])
- {
- LauncherLanguage = "de";
- }
- else if(lang == textStrings["contextmenu_language_vietnamese"])
- {
- LauncherLanguage = "vi";
- }
- else if(lang == textStrings["contextmenu_language_serbian"])
- {
- LauncherLanguage = "sr";
- }
else
{
- Log($"ERROR: Translation for {lang} doesn't exist", true, 1);
- return;
- }
- if(lang != textStrings["contextmenu_language_system"])
- {
- SetLanguage(LauncherLanguage);
+ if(lang == textStrings["contextmenu_language_english"])
+ {
+ LauncherLanguage = "en";
+ }
+ else if(lang == textStrings["contextmenu_language_russian"])
+ {
+ LauncherLanguage = "ru";
+ }
+ else if(lang == textStrings["contextmenu_language_spanish"])
+ {
+ LauncherLanguage = "es";
+ }
+ else if(lang == textStrings["contextmenu_language_portuguese"])
+ {
+ LauncherLanguage = "pt";
+ }
+ else if(lang == textStrings["contextmenu_language_german"])
+ {
+ LauncherLanguage = "de";
+ }
+ else if(lang == textStrings["contextmenu_language_vietnamese"])
+ {
+ LauncherLanguage = "vi";
+ }
+ else if(lang == textStrings["contextmenu_language_serbian"])
+ {
+ LauncherLanguage = "sr";
+ }
+ else if(lang == textStrings["contextmenu_language_thai"])
+ {
+ LauncherLanguage = "th";
+ }
+ else
+ {
+ Log($"ERROR: Translation for {lang} doesn't exist", true, 1);
+ return;
+ }
LauncherRegKey.SetValue("Language", LauncherLanguage);
}
- var parent = (MenuItem)item.Parent;
- foreach(dynamic i in parent.Items)
- {
- if(i.GetType() != typeof(MenuItem) || i == item)
- continue;
- i.IsChecked = false;
- }
- item.IsChecked = true;
Log($"Set language to {lang}");
BpUtility.StartProcess(LauncherExeName, string.Join(" ", CommandLineArgs), RootPath, true);
Application.Current.Shutdown();
@@ -3091,7 +3097,9 @@ private void IntroBoxCloseButton_Click(object sender, RoutedEventArgs e)
{
IntroBox.Visibility = Visibility.Collapsed;
if(FirstLaunch)
+ {
GameUpdateCheck();
+ }
}
private void DownloadCacheBoxFullCacheButton_Click(object sender, RoutedEventArgs e)
@@ -3526,7 +3534,6 @@ private void ChangelogBoxCloseButton_Click(object sender, RoutedEventArgs e)
{
ChangelogBox.Visibility = Visibility.Collapsed;
ChangelogBoxMessageTextBlock.Visibility = Visibility.Collapsed;
- ChangelogBoxScrollViewer.Height = 325;
}
private void ShowLogCheckBox_Checked(object sender, RoutedEventArgs e)
@@ -3749,6 +3756,10 @@ public void SetLanguage(string lang)
LauncherLanguage = lang;
TextStrings_Serbian();
break;
+ case "th":
+ LauncherLanguage = lang;
+ TextStrings_Thai();
+ break;
case "vi":
LauncherLanguage = lang;
TextStrings_Vietnamese();
@@ -3760,29 +3771,7 @@ public void SetLanguage(string lang)
}
if(LauncherLanguage != "en")
{
- var IntroBoxGrid = VisualTreeHelper.GetChild(IntroBox, 1) as Grid;
- var ChangelogBoxGrid = VisualTreeHelper.GetChild(ChangelogBox, 1) as Grid;
- var AboutBoxGrid = VisualTreeHelper.GetChild(AboutBox, 1) as Grid;
- IntroBoxGrid.Height += 8;
- ChangelogBoxGrid.Height += 8;
- AboutBoxGrid.Height += 8;
- DownloadCacheBoxMessageTextBlock.Height -= 5;
Resources["Font"] = new FontFamily("Segoe UI Bold");
- if(LauncherLanguage == "de")
- {
- AboutBoxGrid.Height -= 10;
- AboutBoxMessageTextBlock.Height -= 10;
- }
- else if(LauncherLanguage == "es" || LauncherLanguage == "pt" || LauncherLanguage == "sr" || LauncherLanguage == "vi")
- {
- RepairBoxMessageTextBlock.Height -= 5;
- }
- else if(LauncherLanguage == "ru")
- {
- RepairBoxMessageTextBlock.Height -= 5;
- AboutBoxGrid.Height -= 10;
- AboutBoxMessageTextBlock.Height -= 10;
- }
}
}
diff --git a/TextStrings_de.cs b/TextStrings_de.cs
index 09e9ca6..89cf6fa 100644
--- a/TextStrings_de.cs
+++ b/TextStrings_de.cs
@@ -42,6 +42,7 @@ private void TextStrings_German()
textStrings["contextmenu_language_german"] = "Deutsch";
textStrings["contextmenu_language_vietnamese"] = "Vietnamesisch";
textStrings["contextmenu_language_serbian"] = "Serbisch";
+ textStrings["contextmenu_language_thai"] = "Thailändisch";
textStrings["contextmenu_language_contribute"] = "Willst du helfen?";
textStrings["contextmenu_about"] = "Über";
textStrings["progresstext_error"] = "Ein Fehler ist aufgetreten :^(";
@@ -79,7 +80,7 @@ private void TextStrings_German()
textStrings["changelogbox_1_msg"] = "Better Honkai Impact 3rd Launcher wurde aktualisiert, hier siehst du die letzten Änderungen:";
textStrings["changelogbox_2_msg"] = "Lade Changelog...";
textStrings["changelogbox_3_msg"] = "Fehler beim Laden der Changelog.";
- textStrings["aboutbox_msg"] = "Es hat sich einiges verbessert oder nicht? :^)\nDieses Projekt ist entstanden, um euch Captains eine bessere Spielerfahrung zu bieten.\nDieser Launcher steht in keinem Zusammenhang mit miHoYo und ist ein OpenSource Projekt.\nJedes Feedback wird freundlich begrüßt.\nBesonderen Dank gehen an diese GitHub-Contributors:\nSinsOfSeven - Beitrag zur benutzerdefinierten Auflösung\nProxy-E23 - Beitrag der spanischen Sprache\nSpookyKisuy - Beitrag der portugiesischen Sprache\nbulawin1, Vrontis - Beitrag der deutscher Sprache\nKorewaLidesu - Beitrag der vietnamesischen Sprache";
+ textStrings["aboutbox_msg"] = "Es hat sich einiges verbessert oder nicht? :^)\nDieses Projekt ist entstanden, um euch Captains eine bessere Spielerfahrung zu bieten.\nDieser Launcher steht in keinem Zusammenhang mit miHoYo und ist ein OpenSource Projekt.\nJedes Feedback wird freundlich begrüßt.\nBesonderen Dank gehen an diese GitHub-Contributors:\nSinsOfSeven - Beitrag zur benutzerdefinierten Auflösung\nProxy-E23 - Beitrag der spanischen Sprache\nSpookyKisuy - Beitrag der portugiesischen Sprache\nbulawin1, Vrontis - Beitrag der deutscher Sprache\nKorewaLidesu - Beitrag der vietnamesischen Sprache\nVoRTeXStarz - Beitrag der thailändischen Sprache";
textStrings["msgbox_genericerror_title"] = "Fehler";
textStrings["msgbox_genericerror_msg"] = "Ein Fehler ist aufgetreten.\nFür mehr Informationen schaue im Log nach.";
textStrings["msgbox_neterror_title"] = "Netzwerkfehler";
diff --git a/TextStrings_en.cs b/TextStrings_en.cs
index 17d7f73..e0b5a94 100644
--- a/TextStrings_en.cs
+++ b/TextStrings_en.cs
@@ -60,6 +60,7 @@ private void TextStrings_English()
textStrings.Add("contextmenu_language_german", "German");
textStrings.Add("contextmenu_language_vietnamese", "Vietnamese");
textStrings.Add("contextmenu_language_serbian", "Serbian");
+ textStrings.Add("contextmenu_language_thai", "Thai");
textStrings.Add("contextmenu_language_contribute", "Want to help?");
textStrings.Add("contextmenu_sounds", "Sounds");
textStrings.Add("contextmenu_about", "About");
@@ -99,7 +100,7 @@ private void TextStrings_English()
textStrings.Add("changelogbox_1_msg", "Better Honkai Impact 3rd Launcher has just become even better. Here's what happened:");
textStrings.Add("changelogbox_2_msg", "Loading changelog...");
textStrings.Add("changelogbox_3_msg", "Failed to load the changelog.");
- textStrings.Add("aboutbox_msg", "Well it is much more advanced, isn't it? :^)\nThis project was made with hope for many captains to have a better experience with the game.\nIt is not affiliated with miHoYo and is completely open source.\nAny feedback is greatly appreciated.\nSpecial thanks to these GitHub contributors:\nSinsOfSeven - Custom resolution contribution\nProxy-E23 - Spanish language translation\nSpookyKisuy - Portuguese language translation\nbulawin1, Vrontis - German language translation\nKorewaLidesu - Vietnamese language translation\nSm1leAway - Serbian language translation");
+ textStrings.Add("aboutbox_msg", "Well it is much more advanced, isn't it? :^)\nThis project was made with hope for many captains to have a better experience with the game.\nIt is not affiliated with miHoYo and is completely open source.\nAny feedback is greatly appreciated.\nSpecial thanks to these GitHub contributors:\nSinsOfSeven - Custom resolution contribution\nProxy-E23 - Spanish language translation\nSpookyKisuy - Portuguese language translation\nbulawin1, Vrontis - German language translation\nKorewaLidesu - Vietnamese language translation\nSm1leAway - Serbian language translation\nVoRTeXStarz - Thai language translation");
textStrings.Add("msgbox_genericerror_title", "Error");
textStrings.Add("msgbox_genericerror_msg", "An error occurred.\nFor more information take a look at the log.");
textStrings.Add("msgbox_neterror_title", "Network error");
diff --git a/TextStrings_es.cs b/TextStrings_es.cs
index c692291..60f3b15 100644
--- a/TextStrings_es.cs
+++ b/TextStrings_es.cs
@@ -49,6 +49,7 @@ private void TextStrings_Spanish()
textStrings["contextmenu_language_german"] = "Alemán";
textStrings["contextmenu_language_vietnamese"] = "Vietnamita";
textStrings["contextmenu_language_serbian"] = "Serbio";
+ textStrings["contextmenu_language_thai"] = "Tailandés";
textStrings["contextmenu_language_contribute"] = "¿Quieres ayudar?";
textStrings["contextmenu_sounds"] = "Sonidos";
textStrings["contextmenu_about"] = "Acerca de";
@@ -87,7 +88,7 @@ private void TextStrings_Spanish()
textStrings["changelogbox_1_msg"] = "Better Honkai Impact 3rd Launcher se ha vuelto mejor. Esto es lo que paso:";
textStrings["changelogbox_2_msg"] = "Cargando el changelog...";
textStrings["changelogbox_3_msg"] = "No se pudo cargar el changelog.";
- textStrings["aboutbox_msg"] = "Bueno, es mucho más avanzado, ¿no?:^)\nEste proyecto se creo con la intención de que los capitanes tuvieran una mejor experiencia con el juego..\nBetterHI3Launcher no está afiliado a miHoYo y es completamente de código abierto..\nAgradecemos mucho todo el feedback.\nUn agradecimiento especial a los contribuidores de GitHub:\nSinsOfSeven - Contribución de resolución personalizada\nProxy-E23 - Traducción al idioma español\nSpookyKisuy - Traducción al idioma portugués\nbulawin1, Vrontis - Traducción al idioma alemán\nKorewaLidesu - Traducción al idioma vietnamita\nSm1leAway - Traducción al idioma sérvia";
+ textStrings["aboutbox_msg"] = "Bueno, es mucho más avanzado, ¿no?:^)\nEste proyecto se creo con la intención de que los capitanes tuvieran una mejor experiencia con el juego..\nBetterHI3Launcher no está afiliado a miHoYo y es completamente de código abierto..\nAgradecemos mucho todo el feedback.\nUn agradecimiento especial a los contribuidores de GitHub:\nSinsOfSeven - Contribución de resolución personalizada\nProxy-E23 - Traducción al idioma español\nSpookyKisuy - Traducción al idioma portugués\nbulawin1, Vrontis - Traducción al idioma alemán\nKorewaLidesu - Traducción al idioma vietnamita\nSm1leAway - Traducción al idioma sérvia\nVoRTeXStarz - Traducción al idioma tailandés";
textStrings["msgbox_genericerror_msg"] = "Ha ocurrido un error.\nPara mas informacion, consultar el log.";
textStrings["msgbox_neterror_title"] = "Error de red";
textStrings["msgbox_neterror_msg"] = "Error al conectarse al servidor:\n{0}";
diff --git a/TextStrings_pt.cs b/TextStrings_pt.cs
index 6bb71bd..589bcf6 100644
--- a/TextStrings_pt.cs
+++ b/TextStrings_pt.cs
@@ -50,6 +50,7 @@ private void TextStrings_Portuguese()
textStrings["contextmenu_language_german"] = "Alemã";
textStrings["contextmenu_language_vietnamese"] = "Vietnamita";
textStrings["contextmenu_language_serbian"] = "Sérvia";
+ textStrings["contextmenu_language_thai"] = "Tailandês";
textStrings["contextmenu_language_contribute"] = "Quer ajudar?";
textStrings["contextmenu_sounds"] = "Sons";
textStrings["contextmenu_about"] = "Sobre";
@@ -88,7 +89,7 @@ private void TextStrings_Portuguese()
textStrings["changelogbox_1_msg"] = "Better Honkai Impact 3rd Launcher acaba de se tornar ainda melhor. Aqui está o que aconteceu:";
textStrings["changelogbox_2_msg"] = "Carregando o changelog...";
textStrings["changelogbox_3_msg"] = "Não foi possível carregar o changelog.";
- textStrings["aboutbox_msg"] = "Bem, é muito mais avançado, não é? :^)\nEste projeto foi feito com a esperança de que muitos capitães tivessem uma melhor experiência com o jogo.\nEle não é afiliado à miHoYo e é totalmente código-aberto.\nQualquer comentário será muito bem vindo.\nAgradecimentos especiais à esses contribuidores do GitHub:\nSinsOfSeven - Contribuição de resolução personalizada\nProxy-E23 - Tradução da idioma espanhola\nSpookyKisuy - Tradução da idioma portuguêsa\nbulawin1, Vrontis - Tradução da idioma alemã\nKorewaLidesu - Tradução da idioma vietnamita\nSm1leAway - Tradução da idioma sérvia";
+ textStrings["aboutbox_msg"] = "Bem, é muito mais avançado, não é? :^)\nEste projeto foi feito com a esperança de que muitos capitães tivessem uma melhor experiência com o jogo.\nEle não é afiliado à miHoYo e é totalmente código-aberto.\nQualquer comentário será muito bem vindo.\nAgradecimentos especiais à esses contribuidores do GitHub:\nSinsOfSeven - Contribuição de resolução personalizada\nProxy-E23 - Tradução da idioma espanhola\nSpookyKisuy - Tradução da idioma portuguêsa\nbulawin1, Vrontis - Tradução da idioma alemã\nKorewaLidesu - Tradução da idioma vietnamita\nSm1leAway - Tradução da idioma sérvia\nVoRTeXStarz - Tradução da idioma tailandesa";
textStrings["msgbox_genericerror_title"] = "Erro";
textStrings["msgbox_genericerror_msg"] = "Ocorreu um erro.\nPara obter informações dê uma olhada no log.";
textStrings["msgbox_neterror_title"] = "Erro de rede";
diff --git a/TextStrings_ru.cs b/TextStrings_ru.cs
index 2112f8c..8fa9c85 100644
--- a/TextStrings_ru.cs
+++ b/TextStrings_ru.cs
@@ -53,6 +53,7 @@ private void TextStrings_Russian()
textStrings["contextmenu_language_german"] = "Немецкий";
textStrings["contextmenu_language_vietnamese"] = "Вьетнамский";
textStrings["contextmenu_language_serbian"] = "Сербский";
+ textStrings["contextmenu_language_thai"] = "Тайский";
textStrings["contextmenu_language_contribute"] = "Хотите помочь?";
textStrings["contextmenu_sounds"] = "Звуки";
textStrings["contextmenu_about"] = "О лаунчере";
@@ -92,7 +93,7 @@ private void TextStrings_Russian()
textStrings["changelogbox_1_msg"] = "Better Honkai Impact 3rd Launcher только что стал ещё лучше. Вот что произошло:";
textStrings["changelogbox_2_msg"] = "Загрузка истории изменений...";
textStrings["changelogbox_3_msg"] = "Не удалось загрузить историю изменений.";
- textStrings["aboutbox_msg"] = "Ну он и правда лучше же, верно? :^)\nДанный проект был сделан с целью улучшить игровой опыт множества капитанов.\nОн не связан с miHoYo и исходный код полностью открыт.\nЛюбой отзыв глубоко приветствуется.\nОсобая благодарность данным добровольцам с GitHub:\nSinsOfSeven - Задавание своего разрешения экрана игры\nProxy-E23 - Перевод на испанский язык\nSpookyKisuy - Перевод на португальский язык\nbulawin1, Vrontis - Перевод на немецкий язык\nKorewaLidesu - Перевод на вьетнамский язык\nSm1leAway - Перевод на сербский язык";
+ textStrings["aboutbox_msg"] = "Ну он и правда лучше же, верно? :^)\nДанный проект был сделан с целью улучшить игровой опыт множества капитанов.\nОн не связан с miHoYo и исходный код полностью открыт.\nЛюбой отзыв глубоко приветствуется.\nОсобая благодарность данным добровольцам с GitHub:\nSinsOfSeven - Задавание своего разрешения экрана игры\nProxy-E23 - Перевод на испанский язык\nSpookyKisuy - Перевод на португальский язык\nbulawin1, Vrontis - Перевод на немецкий язык\nKorewaLidesu - Перевод на вьетнамский язык\nSm1leAway - Перевод на сербский язык\nVoRTeXStarz - Перевод на тайский язык";
textStrings["msgbox_download_cache_1_msg"] = "Сейчас начнётся загрузка полного кеша.";
textStrings["msgbox_download_cache_2_msg"] = "Сейчас начнётся загрузка кеша числовых файлов.";
textStrings["msgbox_download_cache_3_msg"] = "Размер загрузки: {0}.\nПродолжить?";
@@ -145,8 +146,8 @@ private void TextStrings_Russian()
textStrings["msgbox_uninstallerror_msg"] = "Произошла ошибка удаления игры.\nДля дополнительной информации посмотрите лог.";
textStrings["msgbox_uninstallerror_title"] = "Ошибка удаления";
textStrings["msgbox_download_type_1_msg"] = "Будет сброшен тип загрузки игровых ресурсов в надежде исправить печально известную проблему с бесконечной загрузкой в игре.\nПродолжить?";
- textStrings["msgbox_download_type_2_msg"] = "Тип загрузки сброшен. Запустите игру и выберете \"HD assets\".";
- textStrings["msgbox_download_type_3_msg"] = "Тип загрузки уже был сброшен. Запустите игру и выберете \"HD assets\".";
+ textStrings["msgbox_download_type_2_msg"] = "Тип загрузки сброшен. Запустите игру и выберите \"HD assets\".";
+ textStrings["msgbox_download_type_3_msg"] = "Тип загрузки уже был сброшен. Запустите игру и выберите \"HD assets\".";
textStrings["msgbox_fixsubs_1_msg"] = "Будет произведена попытка исправить субтитры к видео (и гача баннеры). Убедитесь, что все видеофайлы были загружены в игре.\nПродолжить?";
textStrings["msgbox_fixsubs_2_msg"] = "Распаковка субтитров к видео {0}/{1}...";
textStrings["msgbox_fixsubs_3_msg"] = "Проверка файла субтитров {0}/{1}...";
diff --git a/TextStrings_sr.cs b/TextStrings_sr.cs
index fd7df1a..3949341 100644
--- a/TextStrings_sr.cs
+++ b/TextStrings_sr.cs
@@ -48,6 +48,7 @@ private void TextStrings_Serbian()
textStrings["contextmenu_language_german"] = "Nemački";
textStrings["contextmenu_language_vietnamese"] = "Vijetnamski";
textStrings["contextmenu_language_serbian"] = "Srpski";
+ textStrings["contextmenu_language_thai"] = "Tajlandski";
textStrings["contextmenu_language_contribute"] = "Želiš da pomogneš?";
textStrings["contextmenu_sounds"] = "Zvuci";
textStrings["contextmenu_about"] = "O programu";
@@ -87,7 +88,7 @@ private void TextStrings_Serbian()
textStrings["changelogbox_1_msg"] = "Better Honkai Impact 3rd Launcher je upravo postao još bolji. Evo kako:";
textStrings["changelogbox_2_msg"] = "Učitavanje zapisa promena...";
textStrings["changelogbox_3_msg"] = "Nije uspelo da učita zapis promena.";
- textStrings["aboutbox_msg"] = "Pa mnogo je napredniji, zar ne? :^)\nOvaj projekat je napravljen sa idejom da pomogne mnogim kapetanima da imaju bolje iskustvo.\nNije nikako povezan sa miHoYo-om i kompletno je \"open source\".\nBilo kakve povratne informacije su cenjene.\nSpecijalne pohvale za sledeće GitHub pomagače:\nSinsOfSeven - Posebna rezolucija\nProxy-E23 - Španski prevod\nSpookyKisuy - Portugalski prevod\nbulawin1, Vrontis - Nemački prevod\nKorewaLidesu - Vijetnamski prevod\nSm1leAway - Srpski prevod";
+ textStrings["aboutbox_msg"] = "Pa mnogo je napredniji, zar ne? :^)\nOvaj projekat je napravljen sa idejom da pomogne mnogim kapetanima da imaju bolje iskustvo.\nNije nikako povezan sa miHoYo-om i kompletno je \"open source\".\nBilo kakve povratne informacije su cenjene.\nSpecijalne pohvale za sledeće GitHub pomagače:\nSinsOfSeven - Posebna rezolucija\nProxy-E23 - Španski prevod\nSpookyKisuy - Portugalski prevod\nbulawin1, Vrontis - Nemački prevod\nKorewaLidesu - Vijetnamski prevod\nSm1leAway - Srpski prevod\nSm1leAway - Tajlandski prevod";
textStrings["msgbox_genericerror_title"] = "Greška";
textStrings["msgbox_genericerror_msg"] = "Došlo je do greške.\nZa više informacija pogledaj zapis.";
textStrings["msgbox_neterror_title"] = "Mrežna greška";
diff --git a/TextStrings_th.cs b/TextStrings_th.cs
new file mode 100644
index 0000000..3cae9d3
--- /dev/null
+++ b/TextStrings_th.cs
@@ -0,0 +1,192 @@
+using System.Windows;
+
+namespace BetterHI3Launcher
+{
+ public partial class MainWindow : Window
+ {
+ private void TextStrings_Thai()
+ {
+ textStrings["version"] = "เวอร์ชั่น";
+ textStrings["launcher_version"] = "โปรแกรมเวอร์ชั่น";
+ textStrings["outdated"] = "ล้าสมัย";
+ textStrings["enabled"] = "เปิดใช้งาน";
+ textStrings["disabled"] = "ปิดการใช้งาน";
+ textStrings["button_yes"] = "ใช่";
+ textStrings["button_no"] = "ไม่";
+ textStrings["button_download"] = "ดาวน์โหลด";
+ textStrings["button_downloading"] = "กำลังดาวน์โหลด";
+ textStrings["button_running"] = "กำลังทำงาน";
+ textStrings["button_update"] = "อัพเดท";
+ textStrings["button_pause"] = "หยุด";
+ textStrings["button_launch"] = "เริ่ม";
+ textStrings["button_options"] = "ตั้งค่า";
+ textStrings["button_resume"] = "ต่อ";
+ textStrings["button_ok"] = "โอเค";
+ textStrings["button_confirm"] = "ตกลง";
+ textStrings["button_cancel"] = "ยกเลิก";
+ textStrings["button_github"] = "ไปที่GitHub repository";
+ textStrings["button_generate"] = "สร้าง";
+ textStrings["label_server"] = "เซิร์ฟเวอร์";
+ textStrings["label_mirror"] = "ไฟล์สำรอง";
+ textStrings["label_log"] = "แสดงการบันทึก";
+ textStrings["contextmenu_downloadcache"] = "ดาวน์โหลดไฟล์แคช";
+ textStrings["contextmenu_repair"] = "ซ่อมไฟล์เกม";
+ textStrings["contextmenu_move"] = "ย้ายไฟล์เกม";
+ textStrings["contextmenu_uninstall"] = "ถอนการติดตั้งเกม";
+ textStrings["contextmenu_fixsubs"] = "แก้ไขSubtitlesไม่ขึ้น";
+ textStrings["contextmenu_download_type"] = "รีเซ็ตDownload type";
+ textStrings["contextmenu_game_settings"] = "การจัดการตั้งค่าต่างๆในเกม";
+ textStrings["contextmenu_customfps"] = "ตั้งค่าFPSสูงสุดแบบกำหนดเอง";
+ textStrings["contextmenu_customresolution"] = "ตั้งค่าความละเอียด";
+ textStrings["contextmenu_resetgamesettings"] = "รีเซ็ตการตั้งค่าเกม";
+ textStrings["contextmenu_web_profile"] = "ไปที่เว็บโปรไฟล์";
+ textStrings["contextmenu_feedback"] = "ส่งความคิดเห็น";
+ textStrings["contextmenu_changelog"] = "แสดงบันทึกการเปลี่ยนแปลง";
+ textStrings["contextmenu_language"] = "ภาษา";
+ textStrings["contextmenu_language_system"] = "ค่าเริ่มต้นของระบบ";
+ textStrings["contextmenu_language_english"] = "อังกฤษ";
+ textStrings["contextmenu_language_russian"] = "รัสเซีย";
+ textStrings["contextmenu_language_spanish"] = "สเปน";
+ textStrings["contextmenu_language_portuguese"] = "โปรตุเกส";
+ textStrings["contextmenu_language_german"] = "เยอรมัน";
+ textStrings["contextmenu_language_vietnamese"] = "เวียดนาม";
+ textStrings["contextmenu_language_serbian"] = "เซอร์เบีย";
+ textStrings["contextmenu_language_thai"] = "ไทย";
+ textStrings["contextmenu_language_contribute"] = "ต้องการที่จะช่วย?";
+ textStrings["contextmenu_sounds"] = "เสียง";
+ textStrings["contextmenu_about"] = "เกี่ยวกับ";
+ textStrings["progresstext_error"] = "เกิดความผิดพลาด :^(";
+ textStrings["progresstext_verifying_files"] = "กำลังตรวจสอบไฟล์เกม...";
+ textStrings["progresstext_verifying_file"] = "กำลังตรวจสอบไฟล์เกม {0}/{1}...";
+ textStrings["progresstext_cleaningup"] = "กำลังจัดการไฟล์...";
+ textStrings["progresstext_checkingupdate"] = "กำลังตรวจสอบการอัปเดต...";
+ textStrings["progresstext_downloadsize"] = "ขนาดการดาวน์โหลด";
+ textStrings["progresstext_downloaded"] = "ดาวน์โหลด {0}/{1} ({2})";
+ textStrings["progresstext_downloading_file"] = "ดาวน์โหลดไฟล์ {0}/{1}...";
+ textStrings["progresstext_eta"] = "เวลาโดยประมาณ: {0}";
+ textStrings["progresstext_unpacking_1"] = "กำลังแตกไฟล์เกม...";
+ textStrings["progresstext_unpacking_2"] = "กำลังแตกไฟล์เกม {0}/{1}...";
+ textStrings["progresstext_moving_files"] = "กำลังย้ายไฟล์เกม...";
+ textStrings["progresstext_uninstalling"] = "กำลังถอนการติดตั้งเกม...";
+ textStrings["progresstext_mirror_connect"] = "กำลังเชื่อมต่อกับไฟล์สำรอง...";
+ textStrings["progresstext_initiating_download"] = "กำลังเริ่มการดาวน์โหลด...";
+ textStrings["progresstext_updating_launcher"] = "กำลังอัปเดตตัวเรียกใช้งาน...";
+ textStrings["progresstext_generating_hash"] = "กำลังสร้างแฮชสำหรับไฟล์ {0}/{1}...";
+ textStrings["progresstext_zipping"] = "กำลังเพิ่มไฟล์ {0}/{1} ลงในไฟล์ZIP...";
+ textStrings["progresstext_fetching_hashes"] = "กำลังดึงไฟล์แฮช...";
+ textStrings["introbox_title"] = "ยินดีต้อนรับสู่ Better Honkai Impact 3rd launcher!";
+ textStrings["introbox_msg"] = "ดูเหมือนว่านี่จะเป็นครั้งแรกที่คุณใช้โปรแกรมนี้นะ ผมดีใจที่คุณตัดสินใจทดลองใช้ ในกรณีที่คุณต้องการแสดงความคิดเห็นอย่าลังเลที่จะดำเนินการดังกล่าวโดยคลิกปุ่ม \"ตั้งค่า\" แล้วเลือก \"ส่งความคิดเห็น\"\n หากคุณติดตั้งเกมในเครื่องไปก่อนหน้านี้แล้วแล้วเพียงแค่กดปุ่ม \"ดาวน์โหลด\" แล้วเลือกไฟล์เกมที่คุณติดตั้งไว้ ตัวโปรแกรมจะตรวจจับเวอร์ชันเกมของคุณโดยอัตโนมัติและคุณจะไม่ต้องดาวน์โหลดเกมใหม่";
+ textStrings["downloadcachebox_msg"] = "เลือกว่าจะดาวน์โหลดไฟล์แคชแบบเต็มหรือแค่ไฟล์แคชขนาดเล็ก\nเลือก \"ไฟล์แคชแบบเต็ม\" ถ้าคุณมีปัญหาในการโหลดไฟล์ทรัพยากรต่างๆ\nเลือก \"ไฟล์แคชขนาดเล็ก\" ถ้าคุณมีปัญหาตอนช่วงกำลังดาวน์โหลดการตั้งค่า\nโปรดทราบว่าขณะนี้ยังไม่มีวิธีการดึงแคชล่าสุดมาใช้โดยโดยอัตโนมัติและทางเราต้องอัปโหลดไปยังเว็บสำรองไฟล์ด้วยตนเอง\nเว็บที่ลงไฟล์สำรอง: {0}\nไฟล์แคชอัพเดตล่าสุดเมื่อ: {1}\nผู้ดูแลไฟล์สำรองปัจจุบันคือ {2}";
+ textStrings["downloadcachebox_button_full_cache"] = "ไฟล์แคชแบบเต็ม";
+ textStrings["downloadcachebox_button_numeric_files"] = "ไฟล์แคชขนาดเล็ก";
+ textStrings["repairbox_msg"] = "การดำเนินการนี้จะตรวจสอบไฟล์เกมทุกไฟล์และพยายามซ่อมแซมหากมีไฟล์ใดเสียหาย อาจใช้เวลาสักครู่\nจะดำเนินการต่อมั้ย?\nเว็บไฟล์สำรองที่พร้อมใช้งาน: {0}\nผู้ดูแลไฟล์สำรองปัจจุบันคือ {1}";
+ textStrings["fpsinputbox_title"] = "ใส่ค่าFPSที่คุณต้องการ";
+ textStrings["fpsinputbox_label_combatfps"] = "FPSในเกม";
+ textStrings["fpsinputbox_label_menufps"] = "FPSหน้าเมนู";
+ textStrings["resolutioninputbox_title"] = "ใส่ค่าความระเอียดที่คุณต้องการ";
+ textStrings["resolutioninputbox_label_width"] = "ความกว้าง";
+ textStrings["resolutioninputbox_label_height"] = "ความสูง";
+ textStrings["resolutioninputbox_label_fullscreen"] = "โหมดเต็มเจอ";
+ textStrings["changelogbox_title"] = "บันทึกการเปลี่ยนแปลง";
+ textStrings["changelogbox_1_msg"] = "Better Honkai Impact 3rd Launcherได้กลายเป็นดียิ่งขึ้นและนี่คือสิ่งที่เกิดขึ้นยังไงล่ะ:";
+ textStrings["changelogbox_2_msg"] = "กำลังโหลดบันทึกการเปลี่ยนแปลง...";
+ textStrings["changelogbox_3_msg"] = "ไม่สามารถโหลดบันทึกการเปลี่ยนแปลงได้";
+ textStrings["aboutbox_msg"] = "มันก้าวหน้ามามากเลย ใช่ไหมล่ะ? :^)\nโปรเจ็กต์นี้จัดทำขึ้นโดยหวังให้กัปตันหลายๆคนได้รับประสบการณ์ที่ดีขึ้นกับเกม\nโปรแกรมนี้ไม่มีส่วนเกี่ยวข้องกับMiHoYoและเป็นโอเพ่นซอร์สแบบสมบูรณ์ \nขอบคุณสำหรับการติชม\nขอขอบคุณเป็นพิเศษสำหรับผู้ร่วมให้ข้อมูลGitHubเหล่านี้:\nSinsOfSeven - ข้อมูลเกี่ยวกับการปรับความระเอียด\nProxy-E23 - แปลภาษาสเปน\nSpookyKisuy - แปลภาษาโปรตุเกส\nbulawin1, Vrontis - แปลภาษาเยอรมัน\nKorewaLidesu - แปลภาษาเวียดนาม\nSm1leAway - แปลภาษาเซอร์เบีย\nVoRTeXStarz - แปลภาษาไทย";
+ textStrings["msgbox_genericerror_title"] = "ข้อผิดพลาด";
+ textStrings["msgbox_genericerror_msg"] = "เกิดข้อผิดพลาด\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_neterror_title"] = "เกิดข้อผิดพลาดกับเครือข่าย ";
+ textStrings["msgbox_neterror_msg"] = "เกิดข้อผิดพลาดขณะเชื่อมต่อกับเซิร์ฟเวอร์:\n{0}";
+ textStrings["msgbox_verifyerror_title"] = "เกิดข้อผิดพลาดในการตรวจสอบไฟล์";
+ textStrings["msgbox_verifyerror_1_msg"] = "เกิดข้อผิดพลาดขณะดาวน์โหลด กรุณาลองใหม่อีกครั้ง";
+ textStrings["msgbox_verifyerror_2_msg"] = "เกิดข้อผิดพลาดขณะดาวน์โหลด ตัวไฟล์อาจเสียหาย\nดำเนินการต่อโดยไม่สนใจ?";
+ textStrings["msgbox_starterror_title"] = "เกิดข้อผิดพลาดในการเริ่มต้น";
+ textStrings["msgbox_starterror_msg"] = "เกิดข้อผิดพลาดขณะเริ่มโปรแกรม:\n{0}";
+ textStrings["msgbox_launcherdownloaderror_msg"] = "เกิดข้อผิดพลาดขณะดาวน์โหลดตัวโปรแกรม:\n{0}";
+ textStrings["msgbox_gamedownloaderror_title"] = "เกิดข้อผิดพลาดขณะดาวน์โหลดไฟล์เกม";
+ textStrings["msgbox_gamedownloaderror_msg"] = "เกิดข้อผิดพลาดขณะดาวน์โหลดไฟล์เกม\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_installerror_msg"] = "เกิดข้อผิดพลาดขณะติดตั้งตัวเกม\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_installerror_title"] = "เกิดข้อผิดพลาดในการติดตั้ง";
+ textStrings["msgbox_process_start_error_msg"] = "เกิดข้อผิดพลาดขณะเริ่มกระบวนการ\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_update_title"] = "แจ้งเตือนการอัพเดท";
+ textStrings["msgbox_install_msg"] = "เกมกำลังจะถูกติดตั้งลงใน:\n{0}\nดำเนินการต่อ?";
+ textStrings["msgbox_install_title"] = "แจ้งเตือนการติดตั้ง";
+ textStrings["msgbox_installdirerror_msg"] = "เกิดข้อผิดพลาดขณะเลือกแฟ้มการติดตั้งเกม\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_installdirerror_title"] = "แฟ้มไม่ถูกต้อง";
+ textStrings["msgbox_abort_1_msg"] = "คุณแน่ใจใช่ไหมว่าต้องการยกเลิกการดาวน์โหลดและปิดการใช้งานโปรแกรม?";
+ textStrings["msgbox_abort_2_msg"] = "ความคืบหน้าจะไม่ถูกบันทึก";
+ textStrings["msgbox_abort_3_msg"] = "ความคืบหน้าจะถูกบันทึกเอาไว้";
+ textStrings["msgbox_abort_title"] = "ยกเลิกคำขอ";
+ textStrings["msgbox_registryerror_msg"] = "เกิดข้อผิดพลาดขณะเข้าถึงรีจิสทรี\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_registryerror_title"] = "รีจิสทรีมีปัญหา";
+ textStrings["msgbox_registryempty_1_msg"] = "ไม่มีค่าที่จะให้ปรับแต่งในรีจิสทรี";
+ textStrings["msgbox_registryempty_2_msg"] = "คุณเปิดเกมแล้วหรือยัง?";
+ textStrings["msgbox_registryempty_3_msg"] = "ลองเปลี่ยนการตั้งค่าวิดีโอในเกมก่อน (การปิดใช้งานแบบเต็มหน้าจอหรือเปลี่ยนพรีเซ็ตการตั้งค่าวิดีโอ ฯลฯ )";
+ textStrings["msgbox_download_cache_1_msg"] = "กำลังจะดาวน์โหลดไฟล์แคชแบบเต็ม";
+ textStrings["msgbox_download_cache_2_msg"] = "กำลังจะดาวน์โหลดไฟล์แคชขนาดเล็ก";
+ textStrings["msgbox_download_cache_3_msg"] = "ขนาดไฟล์ดาวน์โหลด: {0}\nดำเดินการต่อ?";
+ textStrings["msgbox_repair_1_msg"] = "เวอร์ชันของเกมที่ติดตั้งแตกต่างจากข้อมูลการซ่อมแซมบนเซิร์ฟเวอร์ เนื่องจากทางเราต้องอัปเดตข้อมูลนี้ด้วยตนเองจึงอาจไม่สามารถใช้งานได้ในบางครั้ง\nกรุณาลองใหม่อีกครั้ง";
+ textStrings["msgbox_repair_2_msg"] = "ไม่จำเป็นต้องซ่อมแซมไฟล์ใดๆ";
+ textStrings["msgbox_repair_3_msg"] = "เจอ {0} ไฟล์เสียหาย/หายไป จำเป็นจะต้องได้รับการซ่อมแซมโดยการดาวน์โหลดอีกครั้ง\nเนื่องจากเทคโนโลยีนี้ยอดเยี่ยมมากระบบจะดาวน์โหลดเฉพาะไฟล์ที่ต้องการเท่านั้น\nขนาดไฟล์ดาวน์โหลด: {1}\nดำเนินการต่อ?";
+ textStrings["msgbox_repair_4_msg"] = "{0} ไฟล์ ซ่อมแซมเรียบร้อยแล้ว";
+ textStrings["msgbox_repair_5_msg"] = "{0} ไฟล์ ซ่อมแซมไม่สำเร็จ กรุณาตรวจสอบอุปกรณ์จัดเก็บข้อมูลของคุณอาจมีความผิดปกติ";
+ textStrings["msgbox_repair_6_msg"] = "กำลังสร้างไฟล์JSONที่มีรายชื่อไฟล์เกมและแฮชจากนั้นสร้างไฟล์ZIPที่มีไฟล์เหล่านั้น\nดำเนินการต่อ?";
+ textStrings["msgbox_repair_7_msg"] = "จะสร้างไฟล์ZIPต่อไปไหม กระบวนการนี้ต้องใช้เวลาสักครู่";
+ textStrings["msgbox_move_1_msg"] = "เกมกำลังจะถูกย้ายไปที่:\n{0}\nดำเนินการต่อ?";
+ textStrings["msgbox_move_2_msg"] = "ไม่สามารถย้ายเกมภายในแฟ้มเกมปัจจุบันได้";
+ textStrings["msgbox_move_3_msg"] = "ไม่สามารถย้ายเกมในขณะที่ตัวเรียกใช้งานอยู่ในไฟล์เกม ย้ายตัวเรียกใช้งานออกไปภายนอกไฟล์เกมแล้วลองอีกครั้ง";
+ textStrings["msgbox_move_title"] = "ย้าย";
+ textStrings["msgbox_move_error_title"] = "เกิดข้อผิดพลาดในการย้าย";
+ textStrings["msgbox_uninstall_1_msg"] = "คุณแน่ใจใช่ไหมว่าจะถอนการติดตั้งเกม?";
+ textStrings["msgbox_uninstall_2_msg"] = "คุณแน่ใจริงๆแบบจริงๆนะว่าจะถอนการติดตั้งเกม? :^(";
+ textStrings["msgbox_uninstall_3_msg"] = "ลบไฟล์แคชของเกมและการตั้งค่าด้วย?";
+ textStrings["msgbox_uninstall_4_msg"] = "ไม่สามารถถอนการติดตั้งเกมได้ในขณะที่ตัวเรียกใช้งานอยู่ในไฟล์เกม ย้ายตัวเรียกใช้งานออกไปภายนอกไฟล์เกมแล้วลองอีกครั้ง";
+ textStrings["msgbox_uninstall_title"] = "ถอนการติดตั้ง";
+ textStrings["msgbox_uninstallerror_msg"] = "เกิดข้อผิดพลาดขณะถอนการติดตั้งเกม\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_uninstallerror_title"] = "เกิดข้อผิดพลาดระหว่างถอนการติดตั้ง";
+ textStrings["msgbox_download_type_1_msg"] = "การดำเนินการนี้จะรีเซ็ตDownload typeของเกมเพื่อพยายามแก้ไขลูปการอัปเดตซึ่งทำให้คุณไม่สามารถเข้าสู่เกมได้\nดำเนินการต่อ?";
+ textStrings["msgbox_download_type_2_msg"] = "รีเซ็ตDownload typeแล้ว กรุณาเริ่มเกมและเลือก \"HD assets\"";
+ textStrings["msgbox_download_type_3_msg"] = "Download typeถูกรีเซ็ตแล้ว กรุณาเริ่มเกมและเลือก \"HD assets\"";
+ textStrings["msgbox_fixsubs_1_msg"] = "สิ่งนี้จะพยายามแก้ไขคำบรรยาย CG (และภาพหน้าปกกาชา) กรุณาตรวจสอบให้แน่ใจว่าคุณได้ดาวน์โหลด CG ทั้งหมดในเกมแล้ว\nดำเนินการต่อ?";
+ textStrings["msgbox_fixsubs_2_msg"] = "กำลังแตกไฟล์คำบรรยาย {0}/{1}...";
+ textStrings["msgbox_fixsubs_3_msg"] = "กำลังตรวจสอบไฟล์คำบรรยาย {0}/{1}...";
+ textStrings["msgbox_fixsubs_4_msg"] = "แตกไฟล์คำบรรยายสำหรับ {0} CGs";
+ textStrings["msgbox_fixsubs_5_msg"] = "ซ่อมแซม {0} ไฟล์คำบรรยาย";
+ textStrings["msgbox_fixsubs_6_msg"] = "ไม่มีไฟล์คำบรรยายที่จะต้องซ่อมแซม ไฟล์อาจจะยังไม่ได้ดาวน์โหลดหรือถูกซ่อมแซมไปแล้ว";
+ textStrings["msgbox_customfps_1_msg"] = "ค่าต้องไม่ว่างเปล่า";
+ textStrings["msgbox_customfps_2_msg"] = "ค่าต้องไม่เป็นศูนย์หรือติดลบ";
+ textStrings["msgbox_customfps_3_msg"] = "เราไม่แนะนำให้ใช้ค่าที่ต่ำกว่า30 จะดำเนินการต่อมั้ย?";
+ textStrings["msgbox_customfps_4_msg"] = "ตั้งค่าสูงสุดของFPSในเกมและหน้าเมนูเป็น {0} และ {1} ตามลำดับ";
+ textStrings["msgbox_customresolution_1_msg"] = "เราไม่แนะนำให้มีความสูงมากกว่าความกว้าง\nดำเนินการต่อมั้ย?";
+ textStrings["msgbox_customresolution_2_msg"] = "ตั้งค่าความละเอียดเป็น {0}x{1} กับแบบเต็มหน้าจอ {2}";
+ textStrings["msgbox_resetgamesettings_1_msg"] = "การดำเนินการนี้จะล้างการตั้งค่าเกมทั้งหมดที่เก็บไว้ในรีจิสทรี\nใช้สิ่งนี้เมื่อคุณประสบปัญหากับเกมเท่านั้น!\nดำเนินการต่อ?";
+ textStrings["msgbox_resetgamesettings_2_msg"] = "การกระทำนี้ไม่สามารถย้อนกลับได้ แน่ใจไหมว่าต้องการทำสิ่งนี้?";
+ textStrings["msgbox_resetgamesettings_3_msg"] = "การตั้งค่าเกมถูกลบออกจากรีจิสทรี";
+ textStrings["msgbox_extractskip_title"] = "แจ้งเตือนการข้ามไฟล์";
+ textStrings["msgbox_extractskip_msg"] = "การแตกไฟล์เสร็จสมบูรณ์ แต่มีบางไฟล์ที่แตกไฟล์ออกมาไม่ได้ คุณจำเป็นจะต้องแตกไฟล์ด้วยตัวเอง\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_noexe_title"] = "ไม่พบเกม";
+ textStrings["msgbox_noexe_msg"] = "ไม่พบเกมในเครื่อง\nกรุณาลองถอนการติดตั้งเกม";
+ textStrings["msgbox_nodir_title"] = "ไม่มีไฟล์เกม";
+ textStrings["msgbox_nodir_msg"] = "ไม่สามารถหาไฟล์เกมได้\nกรุณาลองถอนการติดตั้งเกม";
+ textStrings["msgbox_installexisting_msg"] = "ดูเหมือนว่าเกมจะได้รับการติดตั้งไปแล้ว:\n{0}\nจะใช้ตำแหน่งนี้ใช่ไหม?";
+ textStrings["msgbox_installexistinginvalid_msg"] = "ตำแหน่งที่เลือกไม่ได้มีการติดตั้งเกมที่ถูกต้อง โปรแกรมใช้งานนี้รองรับเฉพาะไคลเอนต์GlobalและSEA";
+ textStrings["msgbox_install_existing_no_local_version_msg"] = "ไม่สามารถระบุเวอร์ชันในเครื่องได้\nเกมของคุณอัปเดตแล้วหรือยัง? กรุณาเลือกอย่างตั้งใจนะ!\nถ้าเลือก \"ใช่\" จะทำให้คุณสามารถเปิดเกมได้\nถ้าเลือก \"ไม่\" จะทำให้คุณต้องดาวน์โหลดเกม";
+ textStrings["msgbox_notice_title"] = "แจ้งเตือน";
+ textStrings["msgbox_novideodir_msg"] = "ไม่พบตำแหน่งไฟล์วิดีโอ\nกรุณาลองถอนการติดตั้งเกม";
+ textStrings["msgbox_mirrorinfo_msg"] = "ใช้ไฟล์สำรองนี้เฉพาะในกรณีที่คุณไม่สามารถดาวน์โหลดเกมผ่านเซิร์ฟเวอร์ miHoYoได้\nโปรดจำไว้ว่านี้คือการอัพเดทด้วยตัวเอง\nดำเนินการต่อ?";
+ textStrings["msgbox_updatecheckerror_msg"] = "เกิดข้อผิดพลาดขณะตรวจสอบการอัปเดต\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_updatecheckerror_title"] = "เกิดข้อผิดพลาดระหว่างการเช็คอัพเดท";
+ textStrings["msgbox_gamedownloadmirrorold_msg"] = "ดูเหมือนว่าเวอร์ชันเกมบนเซิร์ฟเวอร์ miHoYoจะใหม่กว่าเวอร์ชันในไฟล์สำรอง\nไม่มีเหตุผลที่จะดาวน์โหลดเวอร์ชันที่เก่ากว่าโปรดขอให้ผู้ดูแลระบบไฟล์สำรองอัปโหลดเวอร์ชันใหม่";
+ textStrings["msgbox_gamedownloadpaused_msg"] = "เกมยังไม่ได้ดาวน์โหลดไฟล์ทั้งหมด การเปลี่ยนเซิร์ฟเวอร์หรือเปลี่ยนไฟล์สำรองจะรีเซ็ตความคืบหน้าในการดาวน์โหลด\nดำเนินการต่อมั้ย?";
+ textStrings["msgbox_gamedownloadmirrorerror_msg"] = "เกิดข้อผิดพลาดขณะดาวน์โหลดจากไฟล์สำรอง\nสำหรับข้อมูลเพิ่มเติมโปรดดูที่บันทึก";
+ textStrings["msgbox_install_little_space_msg"] = "อาจจะมีพื้นที่ว่างไม่เพียงพอในอุปกรณ์ที่เลือกขอแนะนำให้เพิ่มพื้นที่ว่างหรือการติดตั้งอาจทำให้ล้มเหลว\nดำเนินการต่อ?";
+ textStrings["msgbox_install_wrong_drive_type_msg"] = "ไม่สามารถติดตั้งบนอุปกรณ์ที่เลือก";
+ textStrings["msgbox_move_little_space_msg"] = "อาจมีพื้นที่ว่างไม่เพียงพอในอุปกรณ์ที่เลือกขอแนะนำให้เพิ่มพื้นที่ว่างหรือย้ายการดำเนินการอาจทำให้ล้มเหลว\nดำเนินการต่อ?";
+ textStrings["msgbox_move_wrong_drive_type_msg"] = "ไม่สามารถย้ายไปยังอุปกรณ์ที่เลือก";
+ textStrings["msgbox_mirror_error_msg"] = "เกิดข้อผิดพลาดกับไฟล์สำรอง บอกให้คนที่ดูแลไฟล์สำรองทราบข้อความด้านล่างนี้\nMessage: {0}";
+ textStrings["msgbox_net_version_old_msg"] = "ตัวโปรแกรมนี้ต้องการ .NET Framework 4.6.1 หรือใหม่กว่าในการติดตั้ง";
+ textStrings["msgbox_language_msg"] = "ภาษาที่ใช้กำลังจะเปลี่ยนเป็น{0}และตัวโปรแกรมกำลังจะถูกรีสตาร์ท\nดำเนินการต่อ?";
+ textStrings["msgbox_conn_bp_error_msg"] = "ไม่สามารถเชื่อมต่อกับเครือข่าย Bp:";
+ textStrings["msgbox_conn_mihoyo_error_msg"] = "ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์ miHoYo:";
+ }
+ }
+}
\ No newline at end of file
diff --git a/TextStrings_vi.cs b/TextStrings_vi.cs
index 4d8cc99..f6c9bf4 100644
--- a/TextStrings_vi.cs
+++ b/TextStrings_vi.cs
@@ -49,6 +49,7 @@ private void TextStrings_Vietnamese()
textStrings["contextmenu_language_german"] = "Tiếng Đức";
textStrings["contextmenu_language_vietnamese"] = "Tiếng Việt";
textStrings["contextmenu_language_serbian"] = "Tiếng Serbia";
+ textStrings["contextmenu_language_thai"] = "Tiếng Thái";
textStrings["contextmenu_language_contribute"] = "Muốn giúp đỡ?";
textStrings["contextmenu_sounds"] = "Âm thanh";
textStrings["contextmenu_about"] = "Thông tin";
@@ -87,7 +88,7 @@ private void TextStrings_Vietnamese()
textStrings["changelogbox_1_msg"] = "Better Honkai Impact 3rd Launcher vừa trở nên tốt hơn. Đây là những gì đã xảy ra:";
textStrings["changelogbox_2_msg"] = "Lấy changelog...";
textStrings["changelogbox_3_msg"] = "Không thể lấy changelog.";
- textStrings["aboutbox_msg"] = "Chà, nó cao cấp hơn nhiều phải không? :^)\nDự án này được thực hiện với hy vọng nhiều thuyền trưởng sẽ có trải nghiệm tốt hơn với trò chơi.\nNó không liên kết với miHoYo và hoàn toàn là mã nguồn mở.\nBất kỳ thông tin phản hồi đều được đánh giá rất cao.\nĐặc biệt cảm ơn những cộng tác viên GitHub:\nSinsOfSeven - Custom resolution contribution\nProxy-E23 - Spanish language translation\nSpookyKisuy - Portuguese language translation\nbulawin1, Vrontis - German language translation\nKorewaLidesu - Vietnamese language translation\nSm1leAway - Serbian language translation";
+ textStrings["aboutbox_msg"] = "Chà, nó cao cấp hơn nhiều phải không? :^)\nDự án này được thực hiện với hy vọng nhiều thuyền trưởng sẽ có trải nghiệm tốt hơn với trò chơi.\nNó không liên kết với miHoYo và hoàn toàn là mã nguồn mở.\nBất kỳ thông tin phản hồi đều được đánh giá rất cao.\nĐặc biệt cảm ơn những cộng tác viên GitHub:\nSinsOfSeven - Custom resolution contribution\nProxy-E23 - Spanish language translation\nSpookyKisuy - Portuguese language translation\nbulawin1, Vrontis - German language translation\nKorewaLidesu - Vietnamese language translation\nSm1leAway - Serbian language translation\nVoRTeXStarz - Thai language translation";
textStrings["msgbox_genericerror_title"] = "Lỗi";
textStrings["msgbox_genericerror_msg"] = "Đã có lỗi xảy ra.\nĐể biết thêm thông tin, hãy xem log.";
textStrings["msgbox_neterror_title"] = "Lỗi mạng";
diff --git a/Utility.cs b/Utility.cs
index 9acbc47..b667bf4 100644
--- a/Utility.cs
+++ b/Utility.cs
@@ -24,6 +24,17 @@ public static void StartProcess(string proccess, string arguments, string workin
Process.Start(startInfo);
}
+ public static void PlaySound(Stream sound)
+ {
+ if(!MainWindow.DisableSounds)
+ {
+ try
+ {
+ new SoundPlayer(sound).Play();
+ }catch{}
+ }
+ }
+
// https://stackoverflow.com/a/10520086/7570821
public static string CalculateMD5(string filename)
{
@@ -47,32 +58,6 @@ public static string ToBytesCount(long bytes)
return string.Format("{0:##.##} {1}{2}", bytes / Math.Pow(unit, exp), MainWindow.textStrings["binary_prefixes"][exp - 1], unitStr);
}
- public static bool IsFileLocked(FileInfo file)
- {
- try
- {
- using(FileStream stream = file.Open(FileMode.Open, FileAccess.Read, FileShare.None))
- {
- stream.Close();
- }
- }
- catch(IOException)
- {
- return true;
- }
- return false;
- }
-
- public static HttpWebRequest CreateWebRequest(string url, string method = "GET", int timeout = 30000)
- {
- var webRequest = (HttpWebRequest)WebRequest.Create(url);
- webRequest.Method = method;
- webRequest.UserAgent = MainWindow.UserAgent;
- webRequest.Headers.Add("Accept-Language", MainWindow.LauncherLanguage);
- webRequest.Timeout = timeout;
- return webRequest;
- }
-
public static string GetWindowsVersion()
{
var key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion");
@@ -87,8 +72,7 @@ public static string GetWindowsVersion()
{
name = value;
}
- }
- catch{}
+ }catch{}
try
{
var value = key.GetValue("CurrentBuild").ToString();
@@ -96,8 +80,7 @@ public static string GetWindowsVersion()
{
build = value;
}
- }
- catch{}
+ }catch{}
try
{
var value = key.GetValue("DisplayVersion").ToString();
@@ -105,8 +88,7 @@ public static string GetWindowsVersion()
{
version = value;
}
- }
- catch{}
+ }catch{}
try
{
var value = key.GetValue("UBR").ToString();
@@ -114,8 +96,7 @@ public static string GetWindowsVersion()
{
revision = value;
}
- }
- catch{}
+ }catch{}
if(Environment.OSVersion.Version.Major == 10)
{
if(!string.IsNullOrEmpty(version))
@@ -129,15 +110,30 @@ public static string GetWindowsVersion()
}
}
- public static void PlaySound(Stream sound)
+ public static bool IsFileLocked(FileInfo file)
{
- if(!MainWindow.DisableSounds)
+ try
{
- try
+ using(FileStream stream = file.Open(FileMode.Open, FileAccess.Read, FileShare.None))
{
- new SoundPlayer(sound).Play();
- }catch{}
+ stream.Close();
+ }
+ }
+ catch(IOException)
+ {
+ return true;
}
+ return false;
+ }
+
+ public static HttpWebRequest CreateWebRequest(string url, string method = "GET", int timeout = 30000)
+ {
+ var webRequest = (HttpWebRequest)WebRequest.Create(url);
+ webRequest.Method = method;
+ webRequest.UserAgent = MainWindow.UserAgent;
+ webRequest.Headers.Add("Accept-Language", MainWindow.LauncherLanguage);
+ webRequest.Timeout = timeout;
+ return webRequest;
}
}