/// <summary> /// Called each time the inspector's GUI is refreshed. /// </summary> public override void OnInspectorGUI() { LocalizedText myTarget = (LocalizedText)target; EditorGUIUtility.labelWidth = 60; // If the Locked flag is on, just show a selected label that is grayed out. if (myTarget.Locked) { EditorGUILayout.BeginHorizontal(); GUI.color = Color.grey; EditorGUILayout.LabelField("Token: ", GUILayout.Width(EditorGUIUtility.labelWidth - 4)); EditorGUILayout.SelectableLabel(myTarget.Token, EditorStyles.textField, GUILayout.Height(EditorGUIUtility.singleLineHeight)); GUI.color = Color.white; EditorGUILayout.EndHorizontal(); } else { myTarget.Token = EditorGUILayout.TextField("Token: ", myTarget.Token); } // If the token is in devon, set the Text components text to keep it updated. if (Localizer.Has(myTarget.Token)) { myTarget.GetComponent <Text>().text = Localizer.Get(myTarget.Token); } else { EditorGUILayout.LabelField("Token is not pushed to Devon"); if (myTarget.Token == "" && !myTarget.Locked) { EditorGUILayout.Space(); EditorGUILayout.Space(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("Suggested:", GUILayout.Width(EditorGUIUtility.labelWidth + 10)); EditorGUILayout.SelectableLabel(SceneManager.GetActiveScene().name + "." + myTarget.transform.parent.name + "." + myTarget.name, EditorStyles.textField, GUILayout.Height(EditorGUIUtility.singleLineHeight)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); EditorGUILayout.Space(); } } myTarget.Locked = EditorGUILayout.Toggle("Locked:", myTarget.Locked); if (!myTarget.Locked && GUILayout.Button("Generate Token Name")) { myTarget.Token = (SceneManager.GetActiveScene().name + "." + myTarget.transform.parent.name + "." + myTarget.name).ToLower(); EditorUtility.SetDirty(target); } }
public void Show(string level, bool preloadScene) { ResetSelectFirst(); SelectFirstButton(); NextScene = level; isPreloadScene = preloadScene; klausGear.SetActive(false); k1Gear.SetActive(false); // Turn on proper players GameObject[] players = GameObject.FindGameObjectsWithTag("Player"); for (int i = 0; i != players.Length; ++i) { if (players[i].name.Contains("Klaus")) { klausGear.SetActive(true); } else if (players[i].name.Contains("K1")) { k1Gear.SetActive(true); } } // Turn on black line content HUD_TimeAttack hudTimeAttack = GameObject.FindObjectOfType <HUD_TimeAttack>(); if (hudTimeAttack == null || !hudTimeAttack.ShowLevelCompleted()) { timePanel.SetActive(false); quoteText.gameObject.SetActive(true); } else { timePanel.SetActive(true); quoteText.gameObject.SetActive(false); } // Check if K1 is alone on this level MoveStateKlaus[] klauses = GameObject.FindObjectsOfType <MoveStateKlaus>(); if (klauses == null || klauses.Length == 0) { UIFontSetter fontSetter = quoteText.GetComponent <UIFontSetter>(); if (fontSetter != null) { fontSetter.ChangeFontType(FontsManager.FontType.K1); } } quoteText.ObjectText = quoteText.ObjectText.ToUpper(); }
public override void OnInspectorGUI() { base.OnInspectorGUI(); LocalizationInitializer.Startup(); Target = target as LocalizedText; if (Application.isPlaying) { return; } var service = LocalizationService.Instance; if (service == null || service.Strings == null) { var p = EditorGUILayout.TextField("Key", Target.Key); if (p != Target.Key) { Target.Key = p; EditorUtility.SetDirty(target); } EditorGUILayout.LabelField("Error ", "LocalizationService Not Found"); } else { var files = service.StringsByFile.Select(o => o.Key).ToArray(); var findex = Array.IndexOf(files, Target.File); var fi = EditorGUILayout.Popup("File", findex, files); if (fi != findex) { Target.File = files[fi]; EditorUtility.SetDirty(target); } // if (!string.IsNullOrEmpty(Target.File)) { //filter Target.Filter = EditorGUILayout.TextField("Filter ", Target.Filter); string[] words; if (!string.IsNullOrEmpty(Target.Filter)) { words = service.StringsByFile[Target.File].Select(o => o.Key).Where(o => o.Contains(Target.Filter)).ToArray(); } else { words = service.StringsByFile[Target.File].Select(o => o.Key).ToArray(); } var index = Array.IndexOf(words, Target.Key); var i = EditorGUILayout.Popup("Keys", index, words); if (i != index) { Target.Key = words[i]; Target.Value = service.Get(Target.Key, string.Empty); EditorUtility.SetDirty(target); } } } if (!string.IsNullOrEmpty(Target.Value)) { EditorGUILayout.LabelField("Value ", Target.Value); Target.GetComponent <UnityEngine.UI.Text>().text = Target.Value; } }
public override void OnInspectorGUI() { base.OnInspectorGUI(); LocalizationInitializer.Startup(); Target = target as LocalizedText; if (Application.isPlaying) return; var service = LocalizationService.Instance; if (service == null || service.Strings == null) { var p = EditorGUILayout.TextField("Key", Target.Key); if (p != Target.Key) { Target.Key = p; EditorUtility.SetDirty(target); } EditorGUILayout.LabelField("Error ", "LocalizationService Not Found"); } else { var files = service.StringsByFile.Select(o => o.Key).ToArray(); var findex = Array.IndexOf(files, Target.File); var fi = EditorGUILayout.Popup("File", findex, files); if (fi != findex) { Target.File = files[fi]; EditorUtility.SetDirty(target); } // if (!string.IsNullOrEmpty(Target.File)) { //filter Target.Filter = EditorGUILayout.TextField("Filter ", Target.Filter); string[] words; if (!string.IsNullOrEmpty(Target.Filter)) { words = service.StringsByFile[Target.File].Select(o => o.Key).Where(o => o.Contains(Target.Filter)).ToArray(); } else { words = service.StringsByFile[Target.File].Select(o => o.Key).ToArray(); } var index = Array.IndexOf(words, Target.Key); var i = EditorGUILayout.Popup("Keys", index, words); if (i != index) { Target.Key = words[i]; Target.Value = service.Get(Target.Key, string.Empty); EditorUtility.SetDirty(target); } } } if (!string.IsNullOrEmpty(Target.Value)) { EditorGUILayout.LabelField("Value ", Target.Value); Target.GetComponent<UnityEngine.UI.Text>().text = Target.Value; } }