From 67a110ee1f2ec045adfa48085442c2e9cda7e364 Mon Sep 17 00:00:00 2001 From: Jonathan Hager Date: Sat, 26 Sep 2020 11:52:23 +0200 Subject: [PATCH] Collisions working --- core/src/com/trs/game/model/Projectile.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/core/src/com/trs/game/model/Projectile.java b/core/src/com/trs/game/model/Projectile.java index c3092cb..d53399f 100644 --- a/core/src/com/trs/game/model/Projectile.java +++ b/core/src/com/trs/game/model/Projectile.java @@ -58,10 +58,20 @@ public class Projectile { System.out.println("Collision"); double collisionAngle = 0; - for(Polygon collision : wall.getCollisionPolygons()){ + for(int i = 0; i < 4; i++){ + + Polygon collision = wall.getCollisionPolygons()[i]; if(Intersector.overlapConvexPolygons(polygon, collision)){ float[] vertices = collision.getVertices(); - collisionAngle = StaticMath.calculateAngle((int) vertices[0], (int) vertices[1], (int) vertices[2], (int) vertices[3]); + switch (i){ + case 0: collisionAngle = StaticMath.calculateAngle((int) vertices[0], (int) vertices[1], (int) vertices[2], (int) vertices[3]); + break; + case 1: collisionAngle = StaticMath.calculateAngle((int) vertices[2], (int) vertices[3], (int) vertices[4], (int) vertices[5]); + break; + case 2: collisionAngle = StaticMath.calculateAngle((int) vertices[0], (int) vertices[1], (int) vertices[2], (int) vertices[3]); + break; + case 3: collisionAngle = StaticMath.calculateAngle((int) vertices[2], (int) vertices[3], (int) vertices[4], (int) vertices[5]); + } break; } }