summaryrefslogtreecommitdiff
path: root/marching/Assets/Scripts/Physics/PhysicsManager_CollisionDetection.cs
diff options
context:
space:
mode:
Diffstat (limited to 'marching/Assets/Scripts/Physics/PhysicsManager_CollisionDetection.cs')
-rw-r--r--marching/Assets/Scripts/Physics/PhysicsManager_CollisionDetection.cs10
1 files changed, 8 insertions, 2 deletions
diff --git a/marching/Assets/Scripts/Physics/PhysicsManager_CollisionDetection.cs b/marching/Assets/Scripts/Physics/PhysicsManager_CollisionDetection.cs
index 3436a34..a0dcc97 100644
--- a/marching/Assets/Scripts/Physics/PhysicsManager_CollisionDetection.cs
+++ b/marching/Assets/Scripts/Physics/PhysicsManager_CollisionDetection.cs
@@ -48,8 +48,14 @@ public partial class PhysicsManager : Singleton<PhysicsManager>
public static bool BoxVsBox(Vector4 b1, Vector4 b2)
{
- Vector2 intersection = new Vector2();
- return BoxVsBox(b1, b2, out intersection);
+ float b1w = b1.z / 2f, b1h = b1.w / 2f, b2w = b2.z / 2f, b2h = b2.w / 2f;
+ float distX = b2.x - b1.x;
+ float distY = b2.y - b1.y;
+ if (Mathf.Abs(distX) < b1w + b2w && Mathf.Abs(distY) < b1h + b2h)
+ {
+ return true;
+ }
+ return false;
}
public static bool BoxVsCircle(Vector4 box, Vector2 pos, float radius)