From ab482ab3df64d97c3df9921f6d645d914368bf08 Mon Sep 17 00:00:00 2001 From: chai Date: Fri, 30 Jul 2021 11:45:46 +0800 Subject: +misc --- Assets/ActionTool/Editor/ActionManager.cs | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) (limited to 'Assets/ActionTool/Editor/ActionManager.cs') diff --git a/Assets/ActionTool/Editor/ActionManager.cs b/Assets/ActionTool/Editor/ActionManager.cs index 7becca02..feefde88 100644 --- a/Assets/ActionTool/Editor/ActionManager.cs +++ b/Assets/ActionTool/Editor/ActionManager.cs @@ -89,10 +89,11 @@ namespace ActionTool public static AnimationEventBase animationEvent { get { return m_CurAnimationEvent; } } private static ColliderData s_CurColliderData; - public static ColliderData colliderData { get { return s_CurColliderData; } } + public static ColliderData colliderData { get { return s_CurColliderData; } set { s_CurColliderData = value; } } public static ColliderData.ColliderFrame s_CurEditColliderFrame; public static ColliderData.ColliderFrame editColliderFrame { get { return s_CurEditColliderFrame; } } + public static ColliderData s_CurEditFrameCollider; private static ActionToolGizmos s_Gizmos; public static ActionToolGizmos gizmos { get { return s_Gizmos; } } @@ -119,6 +120,8 @@ namespace ActionTool public static string unitAnimationClipFolder { get { return unitFolder + "AnimationClip/"; } } public static string unitDataFolder { get { return unitFolder + "UnitData/"; } } + public static int colliderIndex; + public static void OnSelectObj(GameObject obj) { Release(); @@ -168,7 +171,7 @@ namespace ActionTool animationData = null; OnSelectAnimationEvent(null); - OnSelectColliderFrame(null); + OnSelectColliderFrame(null, null); OnSelectBox(null); if (EventEditWindow) EventEditWindow.Close(); if (ColliderFrameWindow) ColliderFrameWindow.Close(); @@ -357,14 +360,17 @@ namespace ActionTool { if (s_CurColliderData == null) return; - ColliderWindow = EditorWindow.GetWindow(true); + if(ColliderWindow == null) + ColliderWindow = EditorWindow.GetWindow(true); } - public static void OnSelectBox(ColliderData collider) + public static void OnSelectBox(ColliderData collider, int index = 0) { s_CurColliderData = collider; if (ColliderWindow != null) ColliderWindow.Repaint(); + colliderIndex = index; + EditCollider(); } public static void AddNewBoxFrame(object param) @@ -375,7 +381,7 @@ namespace ActionTool if(data != null) { var frameData = data.AddFrame(frameIndex); - OnSelectColliderFrame(frameData); + OnSelectColliderFrame(frameData, data); } } @@ -392,19 +398,21 @@ namespace ActionTool public static void DeleteCurFrame() { - if (s_CurColliderData == null) + if (s_CurEditFrameCollider == null) return; if (s_CurEditColliderFrame == null) return; - s_CurColliderData.DeleteFrame(s_CurEditColliderFrame.frame); + s_CurEditFrameCollider.DeleteFrame(s_CurEditColliderFrame.frame); + s_CurEditColliderFrame = null; } - public static void OnSelectColliderFrame(ColliderData.ColliderFrame frame) + public static void OnSelectColliderFrame(ColliderData.ColliderFrame frame, ColliderData collider = null) { s_CurEditColliderFrame = frame; + s_CurEditFrameCollider = collider; - if (frame != null) + if (frame != null) { ColliderFrameWindow = EditorWindow.GetWindow(true); -- cgit v1.1-26-g67d0