public static void ChangeLanguage(LanguageItem newLanguage) { if (currentLanguage == newLanguage) { return; } var localizationSettingsData = PlayerPrefsLocalData.GetDataNode(LOCALIZATION_SETTINGS_KEY); localizationSettingsData.AddOrSet(LOCALIZATION_SAVED_LANGUAGE_KEY, newLanguage.name); PlayerPrefsLocalData.SetDataNode(LOCALIZATION_SETTINGS_KEY, localizationSettingsData); currentLanguage = newLanguage; if (_inited) { changeLanguage(newLanguage); } }
public static void ChangeLanguage(LanguageItem newLanguage) { if (currentLanguage == newLanguage) { return; } if (_settings == null) { _settings = new Settings(); } _settings.savedLanguage = newLanguage.name; var localizationSettingsData = _settings.ToJson(); PlayerPrefsLocalData.SetDataNode(LOCALIZATION_SETTINGS_KEY, localizationSettingsData); currentLanguage = newLanguage; if (_inited) { changeLanguage?.Invoke(newLanguage); } }