/// <summary> /// Raises the dropdown changed event. /// </summary> public void OnDropdownChanged() { if (isStarted == true) { string pref = HeadsetChooser.options[HeadsetChooser.value].text; prefsStorage.SetPrefString(JCSettingsManager.HmdTypePlayerPref, pref); } }
public void SaveDeviceNameChosen(string deviceNameChosen) { PlayerPrefsStorage prefsStorage = new PlayerPrefsStorage(Game.ForceVision); if (!string.IsNullOrEmpty(deviceNameChosen)) { Log.Debug("SaveDeviceNameChosen : " + deviceNameChosen); prefsStorage.SetPrefString(DeviceNameChosenPlayerPref, deviceNameChosen); } else { Log.Debug("SaveDeviceNameChosen, delete key : " + DeviceNameChosenPlayerPref); prefsStorage.DeletePref(DeviceNameChosenPlayerPref); } }
private void OnAssetsReadyUseLanguage(string locale) { //set player pref and locale PlayerPrefsStorage prefsStorage = new PlayerPrefsStorage(Game.ForceVision); prefsStorage.SetPrefString(Localizer.LanguagePrefKey, locale); //set locale in Localizer Localizer.Locale = locale; string[] bankNames = Localizer.GetSoundBankNames(); StartCoroutine(Localizer.ChangeWWiseLanguage(bankNames, bankNames)); Localizer.Load(true); UnityEngine.SceneManagement.SceneManager.LoadScene("PreLaunch"); }
IEnumerator ChangeLanguage() { yield return(new WaitForEndOfFrame()); if (locale != Localizer.Locale) { loadingWindow = Instantiate(LoadingWindowPrefab); loadingWindow.transform.SetParent(transform.parent.transform, false); DownloadControllerFactory.CancelAll(); DownloadControllerFactory factory = new DownloadControllerFactory(); DownloadController downloadController = factory.CreateDownloadController(this, (success, id) => { loadingWindow.GetComponent <DownloadPanel>().DownloadComplete(success, id); if (success == true) { activeSelection = LanguageDropDownUI.value; Localizer.Load(true); //set player pref and locale PlayerPrefsStorage prefsStorage = new PlayerPrefsStorage(Game.ForceVision); prefsStorage.SetPrefString(Localizer.LanguagePrefKey, locale); //set locale in Localizer Localizer.Locale = locale; string[] bankNames = Localizer.GetSoundBankNames(); StartCoroutine(Localizer.ChangeWWiseLanguage(bankNames, bankNames)); } else { LanguageDropDownUI.value = activeSelection; } }, locale, (prog) => { if (loadingWindow != null) { loadingWindow.GetComponent <DownloadPanel>().UpdateProgress(prog); } }); yield return(new WaitForEndOfFrame()); downloadController.Init(); } }
IEnumerator ChangeLanguage(string locale) { yield return(new WaitForEndOfFrame()); if (locale != Localizer.Locale) { #if SKU_CHINA OnAssetsReadyUseLanguage(locale); #else LoadingWindow.GetComponent <DownloadPanel>().StartWindow(DownloadController.InstanceIdCount + 1); DownloadControllerFactory.CancelAll(); DownloadControllerFactory factory = new DownloadControllerFactory(); DownloadController downloadController = factory.CreateDownloadController(this, (success, id) => { if (LoadingWindow != null && LoadingWindow.GetComponent <DownloadPanel>() != null) { LoadingWindow.GetComponent <DownloadPanel>().DownloadComplete(success, id); if (success == true) { Localizer.Load(true); OnAssetsReadyUseLanguage(locale); } } }, locale, (prog) => { if (LoadingWindow != null && LoadingWindow.GetComponent <DownloadPanel>() != null) { LoadingWindow.GetComponent <DownloadPanel>().UpdateProgress(prog); } }); yield return(new WaitForEndOfFrame()); downloadController.Init(); #endif } else { LanguageSelectionComplete(); //load prelaunch if first time selecting language PlayerPrefsStorage prefsStorage = new PlayerPrefsStorage(Game.ForceVision); if (prefsStorage.PrefKeyExists(Localizer.LanguagePrefKey) == false) { prefsStorage.SetPrefString(Localizer.LanguagePrefKey, locale); //only reload prelaunch if first language selected isnt first language in list. //First language means they selected the default language for the app so no reload is necessary. if (locale.Equals(Localizer.Locales[0])) { OnCloseButtonSelected(); if (TitleScreen != null) { TitleScreen.SetActive(true); } } else { UnityEngine.SceneManagement.SceneManager.LoadScene("PreLaunch"); } } } ForceVisionAnalytics.LogLanguageSelect(locale); }