Эх сурвалжийг харах

[unity] Fix SkeletonPartsRendererInspector multi-edit.

pharan 7 жил өмнө
parent
commit
a03b0cc288

+ 10 - 7
spine-unity/Assets/Spine/Editor/spine-unity/Modules/SkeletonRenderSeparator/Editor/SkeletonPartsRendererInspector.cs

@@ -38,17 +38,20 @@ namespace Spine.Unity.Modules {
 		SpineInspectorUtility.SerializedSortingProperties sortingProperties;
 
 		void OnEnable () {			
-			sortingProperties = new SpineInspectorUtility.SerializedSortingProperties((target as Component).GetComponent<MeshRenderer>());
+			sortingProperties = new SpineInspectorUtility.SerializedSortingProperties(SpineInspectorUtility.GetRenderersSerializedObject(serializedObject));
 		}
 
 		public override void OnInspectorGUI () {
 			SpineInspectorUtility.SortingPropertyFields(sortingProperties, true);
-			EditorGUILayout.Space();
-			if (SpineInspectorUtility.LargeCenteredButton(new GUIContent("Select SkeletonRenderer", SpineEditorUtilities.Icons.spine))) {
-				var thisSkeletonPartsRenderer = target as SkeletonPartsRenderer;
-				var srs = thisSkeletonPartsRenderer.GetComponentInParent<SkeletonRenderSeparator>();
-				if (srs != null && srs.partsRenderers.Contains(thisSkeletonPartsRenderer) && srs.SkeletonRenderer != null)
-					Selection.activeGameObject = srs.SkeletonRenderer.gameObject;
+
+			if (!serializedObject.isEditingMultipleObjects) {
+				EditorGUILayout.Space();
+				if (SpineInspectorUtility.LargeCenteredButton(new GUIContent("Select SkeletonRenderer", SpineEditorUtilities.Icons.spine))) {
+					var thisSkeletonPartsRenderer = target as SkeletonPartsRenderer;
+					var srs = thisSkeletonPartsRenderer.GetComponentInParent<SkeletonRenderSeparator>();
+					if (srs != null && srs.partsRenderers.Contains(thisSkeletonPartsRenderer) && srs.SkeletonRenderer != null)
+						Selection.activeGameObject = srs.SkeletonRenderer.gameObject;
+				}
 			}
 		}
 	}