From 221ef76ecebea0cc8d70e0df240bf3996d53a3d3 Mon Sep 17 00:00:00 2001 From: MagicBot Date: Sun, 3 Dec 2023 11:14:00 -0500 Subject: [PATCH] Comments and formatting --- src/engine/gameManager/BuildingManager.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/engine/gameManager/BuildingManager.java b/src/engine/gameManager/BuildingManager.java index 8ca12d26..9c10cbcf 100644 --- a/src/engine/gameManager/BuildingManager.java +++ b/src/engine/gameManager/BuildingManager.java @@ -1009,6 +1009,8 @@ public enum BuildingManager { public static Path2D.Float hullToPath2d(String[] hullString) { + // Method builds convex hull from database vertices + ArrayList vertices = new ArrayList<>(); ArrayList floats = new ArrayList<>(); Path2D.Float outPath = new Path2D.Float(); @@ -1041,14 +1043,22 @@ public enum BuildingManager { return outPath; } - public static void loadColliders(Building building){ + public static void loadColliders(Building building) { + + // Load colliders for this building + building.meshes = new ArrayList<>(); - for(Path2D.Float path : _hull_data.get(building.meshUUID)){ + + for (Path2D.Float path : _hull_data.get(building.meshUUID)) { + Path2D.Float translatedPath = new Path2D.Float(path); - AffineTransform offset = AffineTransform.getTranslateInstance(building.loc.x , building.loc.y); + AffineTransform offset = AffineTransform.getTranslateInstance(building.loc.x, building.loc.y); + translatedPath.transform(offset); + AffineTransform rotate = AffineTransform.getRotateInstance(Math.toRadians(building.getBounds().getQuaternion().angleY), building.loc.x, building.loc.z); translatedPath.transform(rotate); + building.meshes.add(translatedPath); } }