// 設定されてる内容の保存 public void SaveSettingMenuData() { // 保存するDataの取得 float bgmVolume = SoundManager.Instance.SettingBGMVolume; float seVolume = SoundManager.Instance.SettingSEVolume; bool isDarkmode = UIManager.Instance.IsDarkmode; UIManager.LanguageType languageType = UIManager.Instance.CurrentLanguageType; // Data の保存 _settingMenuSaveData.SaveSettingMenuData(bgmVolume, seVolume, isDarkmode, languageType); }
// 選択されてる項目に対応する言語の種類を返すメソッド public UIManager.LanguageType SelectedLanguageType() { if (_dropdownIndex == 0) { languageType = UIManager.LanguageType.English; } else if (_dropdownIndex == 1) { languageType = UIManager.LanguageType.Japanese; } return(languageType); }
// 表示する文字の変更 void ChangeDisplayText(UIManager.LanguageType languageType) { if (languageType == UIManager.LanguageType.English) { displayText.text = textData.EnglishText; } else if (languageType == UIManager.LanguageType.Japanese) { displayText.text = textData.JapaneseText; } else { Debug.LogError("There is no text for the selected language."); } }
// SettingMenu の Data を保存 public void SaveSettingMenuData(float BGMVolume, float SEVolume, bool IsDarkMode, UIManager.LanguageType LanguageType) { // 保存するData内容の更新 this.BGMVolume = BGMVolume; this.SEVolume = SEVolume; this.IsDarkMode = IsDarkMode; this.LanguageType = LanguageType; // キーの設定 if (key == "") { key = name; } string jsonData = JsonUtility.ToJson(this, true); // this(このスクリプトの情報) をシリアライズ化(フォーマット化) PlayerPrefs.SetString(key, jsonData); // key に JsonData を格納する // PlayerPrefs.Save(); // 最後に, これらの情報を disc に保存する. アプリケーションの終了時に自動的に呼ばれるので記述しないことが推奨されてる }
// 言語の設定が変更された時に行う処理 void HandleLanguageTypeChange(UIManager.LanguageType languageType) { ChangeDisplayText(languageType); }