From 8a8a560e5cae0a414616045a0c882e3bd98d9b06 Mon Sep 17 00:00:00 2001 From: chai Date: Wed, 20 Apr 2022 20:42:02 +0800 Subject: * space beam --- AlienSurvival/Assets/Scripts/Physics/AABBShape.cs | 45 +++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 AlienSurvival/Assets/Scripts/Physics/AABBShape.cs (limited to 'AlienSurvival/Assets/Scripts/Physics/AABBShape.cs') diff --git a/AlienSurvival/Assets/Scripts/Physics/AABBShape.cs b/AlienSurvival/Assets/Scripts/Physics/AABBShape.cs new file mode 100644 index 0000000..5105c72 --- /dev/null +++ b/AlienSurvival/Assets/Scripts/Physics/AABBShape.cs @@ -0,0 +1,45 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +#if UNITY_EDITOR +using UnityEditor; +#endif + +[RequireComponent(typeof(TopDownTransform))] +public class AABBShape : ShapeBase +{ + + [Tooltip("中心点(相对此节点的偏移)")] + [SerializeField] private Vector2 m_Centre; + public Vector2 centre { get { return m_Centre;} set { m_Centre = value; } } + + [Tooltip("大小(TopDown空间下)")] + [SerializeField] private Vector2 m_Size; + public Vector2 size { get { return m_Size; } set { m_Size = value; } } + + private TopDownTransform m_TopDownTransform; + private TopDownTransform topdownTransform + { + get + { + if(m_TopDownTransform == null) + { + m_TopDownTransform = GetComponent(); + } + + return m_TopDownTransform; + } + } + +#if UNITY_EDITOR + + private void OnDrawGizmos() + { + Vector3 pos = topdownTransform.Get3DPosition(); + Handles.color = Color.green; + Handles.DrawWireCube(pos + new Vector3(m_Centre.x, m_Centre.y, 0), new Vector3(size.x, size.y, 0)); + } + +#endif + +} \ No newline at end of file -- cgit v1.1-26-g67d0