private void OnValidate()
 {
     if (!Application.isPlaying)
     {
         if (Box2DBounds == null)
         {
             Box2DBounds    = (CollisionFactory.Box2DBounds)CollisionFactory.GetNewBoundsInstance(CollisionFactory.ECollisionShape.BOX);
             PreviousBounds = CollisionFactory.GetNewBoundsInstance(Box2DBounds.CollisionShape);
         }
     }
 }
 protected override void Awake()
 {
     Box2DBounds = (CollisionFactory.Box2DBounds)CollisionFactory.GetNewBoundsInstance(CollisionFactory.ECollisionShape.BOX);
     if (AssignedCollisionType == ECollisionType.PHYSICS)
     {
         Box2DBounds.BufferBounds = BufferSizePhysicsCollision;
         PhysicsBoxBounds         = (CollisionFactory.Box2DBounds)CollisionFactory.GetNewBoundsInstance(CollisionFactory.ECollisionShape.BOX);
     }
     AssignBoundsToCollider(Box2DBounds);
     base.Awake();
 }
 private void OnDrawGizmos()
 {
     #if UNITY_EDITOR
     if (Box2DBounds == null)
     {
         Box2DBounds = (CollisionFactory.Box2DBounds)CollisionFactory.GetNewBoundsInstance(CollisionFactory.ECollisionShape.BOX);
     }
     if (!Application.isPlaying)
     {
         UpdateHitboxBounds();
     }
     Color ColorWithTransparency = DebugDrawColor;
     ColorWithTransparency.a = .2f;
     UnityEditor.Handles.DrawSolidRectangleWithOutline(Box2DBounds.GetVerticies(), ColorWithTransparency, DebugDrawColor);
     #endif
 }
    private void OnDrawGizmos()
    {
        if (!Application.isPlaying)
        {
            if (Box2DBounds == null)
            {
                Box2DBounds = (CollisionFactory.Box2DBounds)CollisionFactory.GetNewBoundsInstance(CollisionFactory.ECollisionShape.BOX);
            }
            UpdateColliderBounds();
        }

        DrawBoxColliderBounds(Box2DBounds, DebugColliderColor);
        if (PhysicsBoxBounds != null)
        {
            DrawBoxColliderBounds(PhysicsBoxBounds, Color.red);
        }
    }
 protected override void Awake()
 {
     base.Awake();
     Box2DBounds = (CollisionFactory.Box2DBounds)CollisionFactory.GetNewBoundsInstance(CollisionFactory.ECollisionShape.BOX);
     AssignHitboxBounds(Box2DBounds);
 }
 /// <summary>
 ///
 /// </summary>
 /// <param name="BoxBounds"></param>
 /// <param name="ColorToDraw"></param>
 private void DrawBoxColliderBounds(CollisionFactory.Box2DBounds BoxBounds, Color ColorToDraw)
 {
     UnityEditor.Handles.color = ColorToDraw;
     UnityEditor.Handles.DrawAAPolyLine(BoxBounds.GetVerticies());
 }