using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; namespace ActionTool { [CustomPropertyDrawer(typeof(CurveDictionary))] public class CurveDictionaryDrawer : SerializableDictionaryPropertyDrawer { } public class AnimationCurveEditor : EditorWindow { SerializedObject obj; private void OnEnable() { titleContent = new GUIContent("Curves"); maxSize = new Vector2(300, 2000); minSize = new Vector2(300, 200); } private void OnDisable() { } private void Update() { } private void OnGUI() { AnimationData animData = ActionManager.animationData; if (animData == null) { this.Close(); return; } if (obj == null || obj.targetObject != animData) { obj = new SerializedObject(animData); } var curves = obj.FindProperty("curves"); EditorGUILayout.PropertyField(curves, true); if (obj.ApplyModifiedProperties()) { } } } }