private I18N(II18NStringRepository i18NStringRepository) { this.i18NStringRepository = i18NStringRepository; var files = Directory.GetFiles( Application.streamingAssetsPath + "/i18n", "*.json", SearchOption.TopDirectoryOnly); foreach (var file in files) { try { var json = File.ReadAllText(file); var data = JsonConvert.DeserializeObject <I18NDictionary>(json); Dictionaries.Add(data.Name, new I18NDictionaryInfo(data.Name, data.DisplayName)); } catch (Exception exception) { Debug.LogError(exception.Message); } } this.fallback = LoadDictionary("en-US"); ChangeLocale(GetDefaultLocale()); }
public void ChangeLocale(string locale) { this.active = Dictionaries.ContainsKey(locale) ? LoadDictionary(locale) : this.fallback; }