void OnEnable() { var dropdown = GetComponent <Dropdown>(); if (dropdown == null) { return; } var currentLanguage = LocalizationManager.CurrentLanguage; if (LocalizationManager.Sources.Count == 0) { LocalizationManager.UpdateSources(); } var languages = LocalizationManager.GetAllLanguages(); // Fill the dropdown elements dropdown.ClearOptions(); dropdown.AddOptions(languages); dropdown.value = languages.IndexOf(currentLanguage); dropdown.onValueChanged.RemoveListener(OnValueChanged); dropdown.onValueChanged.AddListener(OnValueChanged); }
void TaskOnClick() { //-- to move into the next language ---- List <string> languages = LocalizationManager.GetAllLanguages(); int Index = languages.IndexOf(LocalizationManager.CurrentLanguage); if (Index < 0) { Index = 0; } else { if (gameObject.name.Substring(0, 1) == "+") { Index = (Index + 1) % languages.Count; Debug.Log("Language++"); } else { Debug.Log("Language--"); Index = (Index - 1) % languages.Count; } } LocalizationManager.CurrentLanguage = languages[Index]; }
public override void OnInspectorGUI() { string[] Languages; LanguageSource source = setLan.mSource; if (source == null) { LocalizationManager.UpdateSources(); Languages = LocalizationManager.GetAllLanguages().ToArray(); System.Array.Sort(Languages); } else { Languages = source.GetLanguages().ToArray(); System.Array.Sort(Languages); } int index = System.Array.IndexOf(Languages, mProp_Language.stringValue); GUI.changed = false; index = EditorGUILayout.Popup("Language", index, Languages); if (GUI.changed) { if (index < 0 || index >= Languages.Length) { mProp_Language.stringValue = string.Empty; } else { mProp_Language.stringValue = Languages[index]; } GUI.changed = false; serializedObject.ApplyModifiedProperties(); } GUILayout.Space(5); if (setLan.mSource == null) { GUI.contentColor = Color.Lerp(Color.gray, Color.yellow, 0.1f); } source = EditorGUILayout.ObjectField("Language Source:", source, typeof(LanguageSource), true) as LanguageSource; GUI.contentColor = Color.white; if (GUI.changed) { setLan.mSource = source; } serializedObject.ApplyModifiedProperties(); }
private void test() { List <string> allLanguages = LocalizationManager.GetAllLanguages(); int num = allLanguages.IndexOf(LocalizationManager.CurrentLanguage); if (num < 0) { num = 0; } else { num = (num + 1) % allLanguages.Count; } Invoke("test", 3f); }
public static string GetLanguageTitleByCode(string code) { string result = null; List <string> languages = LocalizationManager.GetAllLanguages(); List <string> codes = LocalizationManager.GetAllLanguagesCode(); for (int i = 0; i < languages.Count; i++) { if (code.ToLower() == codes[i].ToLower()) { result = languages[i]; } } return(result); }
private void OnEnable() { Dropdown component = GetComponent <Dropdown>(); if (!(component == null)) { string currentLanguage = LocalizationManager.CurrentLanguage; if (LocalizationManager.Sources.Count == 0) { LocalizationManager.UpdateSources(); } List <string> allLanguages = LocalizationManager.GetAllLanguages(); component.ClearOptions(); component.AddOptions(allLanguages); component.value = allLanguages.IndexOf(currentLanguage); component.onValueChanged.RemoveListener(OnValueChanged); component.onValueChanged.AddListener(OnValueChanged); } }
void test() { //-- to move into the next language ---- List <string> languages = LocalizationManager.GetAllLanguages(); int Index = languages.IndexOf(LocalizationManager.CurrentLanguage); if (Index < 0) { Index = 0; } else { Index = (Index + 1) % languages.Count; } //-- Call this function again in 3 seconds Invoke("test", 3); }
public override void OnEnter() { var ok = false; var languages = LocalizationManager.GetAllLanguages(); var idx = languages.IndexOf(LocalizationManager.CurrentLanguage); if (idx >= 0 && languages.Count > 1) { // select next language LocalizationManager.CurrentLanguage = languages[(idx + 1) % languages.Count]; ok = true; } if (!success.IsNone) { success.Value = ok; } Fsm.Event(ok ? successEvent : failureEvent); Finish(); }
bool EditLanguageSelection() { var _changed = false; if (_target.language == null) { return(false); } // make sure our FsmString is not pointing to a variable. _target.language.UseVariable = false; LocalizationManager.UpdateSources(); string[] Languages = LocalizationManager.GetAllLanguages().ToArray(); System.Array.Sort(Languages); int index = System.Array.IndexOf(Languages, _target.language.Value); int newIndex = EditorGUILayout.Popup("Language", index, Languages); if (newIndex != index) { index = newIndex; _changed = true; if (index < 0 || index >= Languages.Length) { _target.language.Value = string.Empty; } else { _target.language.Value = Languages[index]; } } return(_changed); }