private void DrawCurrentSelectedState(AnimationStateWrapper.Type type) { bool markDirty = false; StateDataDrawer.ReloadCheck(); AnimationPlayerState selectedState = null; if (type == AnimationStateWrapper.Type.BlendTree1D) { selectedState = animationStateWrapper.blendTree1D; } else if (type == AnimationStateWrapper.Type.BlendTree2D) { selectedState = animationStateWrapper.blendTree2D; } else if (type == AnimationStateWrapper.Type.PlayRandomClip) { selectedState = animationStateWrapper.playRandomClip; } else if (type == AnimationStateWrapper.Type.SingleClip) { selectedState = animationStateWrapper.singleClip; } if (selectedState != null) { StateDataDrawer.DrawStateData(selectedState, ref markDirty); } if (markDirty) { EditorUtility.SetDirty(animationStateWrapper); } }
private void DrawSelectedState() { EditorGUILayout.BeginHorizontal(editLayerButton_Background); //Making tabbed views are hard! var editStatesRect = EditorUtilities.ReserveRect(); var editTransitionsRect = EditorUtilities.ReserveRect(); var eventsRect = EditorUtilities.ReserveRect(); var metaDataRect = EditorUtilities.ReserveRect(); EditorGUILayout.EndHorizontal(); DrawTabHeader(editStatesRect, "Clips", 0); DrawTabHeader(editTransitionsRect, "Transitions", 1); DrawTabHeader(eventsRect, "Events", 2); DrawTabHeader(metaDataRect, "Metadata", 3); EditorGUILayout.BeginVertical(editLayerStyle); GUILayout.Space(10f); switch ((AnimationPlayerEditMode)selectedEditMode) { case AnimationPlayerEditMode.States: StateDataDrawer.DrawStateData(animationPlayer, selectedLayer, selectedState, this); break; case AnimationPlayerEditMode.Transitions: AnimationTransitionDrawer.DrawTransitions(animationPlayer, selectedLayer, selectedState, selectedToState, allStateNames[selectedLayer]); break; case AnimationPlayerEditMode.Events: DrawEvents(); break; case AnimationPlayerEditMode.MetaData: metaDataDrawer.DrawMetaData(); break; } GUILayout.Space(20f); EditorGUILayout.EndVertical(); }