From 678296a3d7c1f244ecd251f4e26258e09ee3688a Mon Sep 17 00:00:00 2001 From: Fenrisul Date: Tue, 17 Feb 2015 18:36:56 -0800 Subject: [PATCH] Added SkeletonUtility button to SkeletonAnimatorInspector --- .../Editor/SkeletonAnimatorInspector.cs | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/spine-unity/Assets/spine-unity/Editor/SkeletonAnimatorInspector.cs b/spine-unity/Assets/spine-unity/Editor/SkeletonAnimatorInspector.cs index e6eb7de8b..beefec4a2 100644 --- a/spine-unity/Assets/spine-unity/Editor/SkeletonAnimatorInspector.cs +++ b/spine-unity/Assets/spine-unity/Editor/SkeletonAnimatorInspector.cs @@ -40,10 +40,13 @@ using Spine; [CustomEditor(typeof(SkeletonAnimator))] public class SkeletonAnimatorInspector : SkeletonRendererInspector { protected SerializedProperty layerMixModes; - + protected bool isPrefab; protected override void OnEnable () { base.OnEnable(); layerMixModes = serializedObject.FindProperty("layerMixModes"); + + if (PrefabUtility.GetPrefabType(this.target) == PrefabType.Prefab) + isPrefab = true; } protected override void gui () { @@ -51,6 +54,18 @@ public class SkeletonAnimatorInspector : SkeletonRendererInspector { EditorGUILayout.PropertyField(layerMixModes, true); - serializedObject.ApplyModifiedProperties(); + SkeletonAnimator component = (SkeletonAnimator)target; + if (!component.valid) + return; + + EditorGUILayout.Space(); + + if (!isPrefab) { + if (component.GetComponent() == null) { + if (GUILayout.Button(new GUIContent("Add Skeleton Utility", SpineEditorUtilities.Icons.skeletonUtility), GUILayout.Height(30))) { + component.gameObject.AddComponent(); + } + } + } } }