diff options
Diffstat (limited to 'SurvivalTest/Assets/Scripts/TopDown/Editor/TopDownTransformInspector.cs')
-rw-r--r-- | SurvivalTest/Assets/Scripts/TopDown/Editor/TopDownTransformInspector.cs | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/SurvivalTest/Assets/Scripts/TopDown/Editor/TopDownTransformInspector.cs b/SurvivalTest/Assets/Scripts/TopDown/Editor/TopDownTransformInspector.cs new file mode 100644 index 0000000..1e4f6e0 --- /dev/null +++ b/SurvivalTest/Assets/Scripts/TopDown/Editor/TopDownTransformInspector.cs @@ -0,0 +1,50 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + + +[CustomEditor(typeof(TopDownTransform))] +public class TopDownTransformInspector : Editor +{ + + TopDownTransform m_TopDownTransform; + + private void OnEnable() + { + m_TopDownTransform = target as TopDownTransform; + } + + private void OnDisable() + { + } + + public override void OnInspectorGUI() + { + base.OnInspectorGUI(); + } + + protected override void OnHeaderGUI() + { + base.OnHeaderGUI(); + } + + //https://answers.unity.com/questions/463207/how-do-you-make-a-custom-handle-respond-to-the-mou.html + private void OnSceneGUI() + { + Vector3 pos3d = m_TopDownTransform.GetProjectedPosition(); + + float arrowSize = 2f; + + Handles.color = Handles.xAxisColor; + m_TopDownTransform.x += EditorHandlesHelper.PositionArrow(pos3d + new Vector3(0, -m_TopDownTransform.z, 0), Vector3.right, 1f, arrowSize).x; + + Handles.color = Handles.yAxisColor; + m_TopDownTransform.y -= EditorHandlesHelper.PositionArrow(pos3d + new Vector3(0, -m_TopDownTransform.z, 0), Vector3.up, 1f, arrowSize).y; + + Handles.color = Handles.zAxisColor; + m_TopDownTransform.z -= EditorHandlesHelper.PositionArrow(pos3d /*+ new Vector3(-0.3f, 0, 0)*/, Vector3.up, 1.4f, arrowSize).y; + + } + +}
\ No newline at end of file |