diff options
author | chai <chaifix@163.com> | 2020-10-15 07:24:10 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2020-10-15 07:24:10 +0800 |
commit | e846c64d6f927879cb8a095e62d773a8d7b3c9f4 (patch) | |
tree | 7882744bbf2b6c7096ec15fb300f088c5a0807c5 /Assets/Plugins/Editor/AdvancedInspector/FieldEditors/CharEditor.cs | |
parent | cd12e74241678ee3c0752484d310b202187ba24c (diff) |
*ability system
Diffstat (limited to 'Assets/Plugins/Editor/AdvancedInspector/FieldEditors/CharEditor.cs')
-rw-r--r-- | Assets/Plugins/Editor/AdvancedInspector/FieldEditors/CharEditor.cs | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Assets/Plugins/Editor/AdvancedInspector/FieldEditors/CharEditor.cs b/Assets/Plugins/Editor/AdvancedInspector/FieldEditors/CharEditor.cs new file mode 100644 index 00000000..2a82f0ea --- /dev/null +++ b/Assets/Plugins/Editor/AdvancedInspector/FieldEditors/CharEditor.cs @@ -0,0 +1,40 @@ +using UnityEngine; +using UnityEditor; +using System; +using System.Collections; + +namespace AdvancedInspector +{ + public class CharEditor : FieldEditor + { + public override Type[] EditedTypes + { + get { return new Type[] { typeof(char) }; } + } + + public override void Draw(InspectorField field, GUIStyle style) + { + GUILayout.BeginHorizontal(); + + object value = GetValue(field); + string text = ""; + if (value != null) + text = value.ToString(); + + EditorGUI.BeginChangeCheck(); + + string result = EditorGUILayout.TextField(text); + + char c; + if (result.Length == 0) + c = '\0'; + else + c = result[0]; + + if (EditorGUI.EndChangeCheck()) + field.SetValue(c); + + GUILayout.EndHorizontal(); + } + } +}
\ No newline at end of file |