/// <summary> /// Load localized strings to the memory. /// </summary> public static void Load() { var sheet = SheetParser.LoadFromPath(PathProvider.SheetPath, SheetParser.Delimiter.Tab); LocalizedStrings.Clear(); for (var i = 1; i < sheet.Count; i++) { var id = sheet[i][0]; if (string.IsNullOrEmpty(id)) { continue; } if (LocalizedStrings.ContainsKey(id)) { throw new Exception($"<b>[Localizer]</b> Text ID \"<b>{id}</b>\" is duplicated. Please check your localization sheet."); } var strings = sheet[i].ToList(); strings.RemoveAt(0); strings = strings.Select(s => s.Replace("\\n", "\n")) .Select(s => s.Replace("\r", "")) .ToList(); LocalizedStrings.Add(id, strings); } LanguageList = sheet[0].Select(s => s.Replace("\r", "")).ToList(); LanguageList.RemoveAt(0); Settings.LoadLanguageSettings(); ChangeLanguage(CurrentLanguageName ?? ""); }