]> git.lizzy.rs Git - BoundingBoxOutlineReloaded.git/commitdiff
Prep for new rendering
authorIrtimaled <irtimaled@gmail.com>
Mon, 2 Dec 2019 08:30:14 +0000 (00:30 -0800)
committerIrtimaled <irtimaled@gmail.com>
Mon, 2 Dec 2019 08:30:14 +0000 (00:30 -0800)
17 files changed:
src/main/java/com/irtimaled/bbor/client/ClientRenderer.java
src/main/java/com/irtimaled/bbor/client/Player.java [new file with mode: 0644]
src/main/java/com/irtimaled/bbor/client/PlayerCoords.java [deleted file]
src/main/java/com/irtimaled/bbor/client/commands/BeaconCommand.java
src/main/java/com/irtimaled/bbor/client/commands/SpawningSphereCommand.java
src/main/java/com/irtimaled/bbor/client/interop/ClientInterop.java
src/main/java/com/irtimaled/bbor/client/providers/BeaconProvider.java
src/main/java/com/irtimaled/bbor/client/providers/BiomeBorderProvider.java
src/main/java/com/irtimaled/bbor/client/providers/CacheProvider.java
src/main/java/com/irtimaled/bbor/client/providers/CustomBoxProvider.java
src/main/java/com/irtimaled/bbor/client/providers/SlimeChunkProvider.java
src/main/java/com/irtimaled/bbor/client/providers/SpawningSphereProvider.java
src/main/java/com/irtimaled/bbor/client/renderers/MobSpawnerRenderer.java
src/main/java/com/irtimaled/bbor/client/renderers/OffsetPoint.java
src/main/java/com/irtimaled/bbor/client/renderers/SlimeChunkRenderer.java
src/main/java/com/irtimaled/bbor/client/renderers/SpawningSphereRenderer.java
src/main/java/com/irtimaled/bbor/client/renderers/WorldSpawnRenderer.java

index 68f7c9bd1686d58112c1663c4832de1646ad5e21..62ea07c8650fbcae85306b78e7c56886f5d5b56e 100644 (file)
@@ -28,7 +28,7 @@ public class ClientRenderer {
         active = !active;
         if (!active) return;
 
-        PlayerCoords.setActiveY();
+        Player.setActiveY();
     }
 
     static void deactivate() {
@@ -63,10 +63,10 @@ public class ClientRenderer {
 
     private static boolean isWithinRenderDistance(AbstractBoundingBox boundingBox) {
         int renderDistanceBlocks = ClientInterop.getRenderDistanceChunks() * CHUNK_SIZE;
-        int minX = MathHelper.floor(PlayerCoords.getX() - renderDistanceBlocks);
-        int maxX = MathHelper.floor(PlayerCoords.getX() + renderDistanceBlocks);
-        int minZ = MathHelper.floor(PlayerCoords.getZ() - renderDistanceBlocks);
-        int maxZ = MathHelper.floor(PlayerCoords.getZ() + renderDistanceBlocks);
+        int minX = MathHelper.floor(Player.getX() - renderDistanceBlocks);
+        int maxX = MathHelper.floor(Player.getX() + renderDistanceBlocks);
+        int minZ = MathHelper.floor(Player.getZ() - renderDistanceBlocks);
+        int maxZ = MathHelper.floor(Player.getZ() + renderDistanceBlocks);
 
         return boundingBox.intersectsBounds(minX, minZ, maxX, maxZ);
     }
diff --git a/src/main/java/com/irtimaled/bbor/client/Player.java b/src/main/java/com/irtimaled/bbor/client/Player.java
new file mode 100644 (file)
index 0000000..33e714e
--- /dev/null
@@ -0,0 +1,53 @@
+package com.irtimaled.bbor.client;
+
+import com.irtimaled.bbor.common.models.Coords;
+import net.minecraft.entity.player.EntityPlayer;
+
+public class Player {
+    private static double x;
+    private static double y;
+    private static double z;
+    private static double activeY;
+    private static int dimensionId;
+
+    public static void setPosition(double partialTicks, EntityPlayer player) {
+        x = player.lastTickPosX + (player.posX - player.lastTickPosX) * partialTicks;
+        y = player.lastTickPosY + (player.posY - player.lastTickPosY) * partialTicks;
+        z = player.lastTickPosZ + (player.posZ - player.lastTickPosZ) * partialTicks;
+        dimensionId = player.dimension.getId();
+    }
+
+    static void setActiveY() {
+        activeY = y;
+    }
+
+    public static double getX() {
+        return x;
+    }
+
+    public static double getY() {
+        return y;
+    }
+
+    public static double getZ() {
+        return z;
+    }
+
+    public static double getMaxY(double configMaxY) {
+        if (configMaxY == -1) {
+            return activeY;
+        }
+        if (configMaxY == 0) {
+            return y;
+        }
+        return configMaxY;
+    }
+
+    public static int getDimensionId() {
+        return dimensionId;
+    }
+
+    public static Coords getCoords() {
+        return new Coords(x, y, z);
+    }
+}
diff --git a/src/main/java/com/irtimaled/bbor/client/PlayerCoords.java b/src/main/java/com/irtimaled/bbor/client/PlayerCoords.java
deleted file mode 100644 (file)
index 8075dcb..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-package com.irtimaled.bbor.client;
-
-import com.irtimaled.bbor.common.models.Coords;
-import net.minecraft.entity.player.EntityPlayer;
-
-public class PlayerCoords {
-    private static double x;
-    private static double y;
-    private static double z;
-    private static double activeY;
-    private static int dimensionId;
-
-    public static void setPlayerPosition(double partialTicks, EntityPlayer entityPlayer) {
-        x = entityPlayer.lastTickPosX + (entityPlayer.posX - entityPlayer.lastTickPosX) * partialTicks;
-        y = entityPlayer.lastTickPosY + (entityPlayer.posY - entityPlayer.lastTickPosY) * partialTicks;
-        z = entityPlayer.lastTickPosZ + (entityPlayer.posZ - entityPlayer.lastTickPosZ) * partialTicks;
-        dimensionId = entityPlayer.dimension.getId();
-    }
-
-    static void setActiveY() {
-        activeY = y;
-    }
-
-    public static double getX() {
-        return x;
-    }
-
-    public static double getY() {
-        return y;
-    }
-
-    public static double getZ() {
-        return z;
-    }
-
-    public static double getMaxY(double configMaxY) {
-        if (configMaxY == -1) {
-            return activeY;
-        }
-        if (configMaxY == 0) {
-            return y;
-        }
-        return configMaxY;
-    }
-
-    public static int getDimensionId() {
-        return dimensionId;
-    }
-
-    public static Coords get() {
-        return new Coords(x, y, z);
-    }
-}
index a3cf402d1546e83c5d4802825784ccf408daf26e..4a5f4b22366e1d2435e80264449a2690de390178 100644 (file)
@@ -1,6 +1,5 @@
 package com.irtimaled.bbor.client.commands;
 
-import com.irtimaled.bbor.client.PlayerCoords;
 import com.irtimaled.bbor.client.interop.ClientInterop;
 import com.irtimaled.bbor.client.providers.BeaconProvider;
 import com.irtimaled.bbor.common.TypeHelper;
@@ -18,7 +17,6 @@ import net.minecraft.command.arguments.BlockPosArgument;
 import net.minecraft.tileentity.TileEntity;
 import net.minecraft.tileentity.TileEntityBeacon;
 import net.minecraft.util.math.BlockPos;
-import net.minecraft.util.math.Vec3i;
 import net.minecraft.util.text.TextComponentString;
 import net.minecraft.util.text.TextComponentTranslation;
 
@@ -38,7 +36,7 @@ public class BeaconCommand {
                                     return 0;
                                 }))
                         .executes(context -> {
-                            BlockPos pos = new BlockPos(PlayerCoords.getX(), PlayerCoords.getY() - 1, PlayerCoords.getZ());
+                            BlockPos pos = new BlockPos(context.getSource().getPos());
                             AddValidBeacon(context, pos);
                             return 0;
                         }))
@@ -69,7 +67,7 @@ public class BeaconCommand {
         TileEntity tileEntity = Minecraft.getInstance().world.getTileEntity(pos);
         TileEntityBeacon beacon = TypeHelper.as(tileEntity, TileEntityBeacon.class);
         if(beacon == null) {
-            Vec3i playerPosition = new Vec3i(PlayerCoords.getX(), PlayerCoords.getY(), PlayerCoords.getZ());
+            BlockPos playerPosition = new BlockPos(context.getSource().getPos());
             if (pos.getDistance(playerPosition) > ClientInterop.getRenderDistanceChunks()*16) {
                 throw POS_UNLOADED.create();
             }
index a4399d285e1f1e9300fff52626f99418833fa770..625a7d4f5545389c08b2475e98ac45f2fad4e38e 100644 (file)
@@ -1,6 +1,5 @@
 package com.irtimaled.bbor.client.commands;
 
-import com.irtimaled.bbor.client.PlayerCoords;
 import com.irtimaled.bbor.client.providers.SpawningSphereProvider;
 import com.mojang.brigadier.CommandDispatcher;
 import com.mojang.brigadier.builder.LiteralArgumentBuilder;
@@ -29,7 +28,8 @@ public class SpawningSphereCommand {
                                     return 0;
                                 }))
                         .executes(context -> {
-                            SpawningSphereProvider.setSphere(PlayerCoords.getX(), PlayerCoords.getY(), PlayerCoords.getZ());
+                            Vec3d pos = context.getSource().getPos();
+                            SpawningSphereProvider.setSphere(pos.x, pos.y, pos.z);
 
                             CommandHelper.feedback(context, "Spawning sphere set");
                             return 0;
index c8c646210dc8e97759621f43c431d9099adfa330..0efb5391ac0de419c94edcfc1a23c692baef43e6 100644 (file)
@@ -1,7 +1,7 @@
 package com.irtimaled.bbor.client.interop;
 
 import com.irtimaled.bbor.client.ClientRenderer;
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.client.commands.BeaconCommand;
 import com.irtimaled.bbor.client.commands.BoxCommand;
 import com.irtimaled.bbor.client.commands.SeedCommand;
@@ -28,7 +28,7 @@ public class ClientInterop {
     }
 
     public static void render(float partialTicks, EntityPlayerSP player) {
-        PlayerCoords.setPlayerPosition(partialTicks, player);
+        Player.setPosition(partialTicks, player);
         ClientRenderer.render(player.dimension.getId());
     }
 
index e2a8bfc9cb2cb3175dfcd09d8d412c24665993cb..c9f7cff5d93a54cf0001a8331c6c721da47f171b 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.providers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.common.Dimensions;
 import com.irtimaled.bbor.common.models.BoundingBoxBeacon;
 import com.irtimaled.bbor.common.models.Coords;
@@ -25,13 +25,13 @@ public class BeaconProvider implements IBoundingBoxProvider<BoundingBoxBeacon> {
     }
 
     public static void add(Coords coords, int level) {
-        int dimensionId = PlayerCoords.getDimensionId();
+        int dimensionId = Player.getDimensionId();
         BoundingBoxBeacon beacon = BoundingBoxBeacon.from(coords, level);
         getCache(dimensionId).put(coords, beacon);
     }
 
     public static boolean remove(Coords coords) {
-        int dimensionId = PlayerCoords.getDimensionId();
+        int dimensionId = Player.getDimensionId();
         return getCache(dimensionId).remove(coords) != null;
     }
 
index 1fb724fc25d108db201c2a0aef31f04968c5b311..51f384668c2880888f4d0fec6bc8528675b44389 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.providers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.client.interop.BiomeBorderHelper;
 import com.irtimaled.bbor.common.BoundingBoxType;
 import com.irtimaled.bbor.common.MathHelper;
@@ -21,7 +21,7 @@ public class BiomeBorderProvider implements IBoundingBoxProvider<BoundingBoxBiom
         if (!BoundingBoxType.BiomeBorder.shouldRender())
             return Iterators.empty();
 
-        Coords playerCoords = PlayerCoords.get();
+        Coords playerCoords = Player.getCoords();
         Integer renderDistance = ConfigManager.biomeBordersRenderDistance.get();
         Boolean renderAllTransitions = !ConfigManager.renderOnlyCurrentBiome.get();
         if (!playerCoords.equals(lastPlayerCoords) || !renderDistance.equals(lastRenderDistance) || renderAllTransitions != lastRenderAllTransitions) {
index 3e43f698da63ed839d4b02fff12d9bee020bb9c0..be43ff0792fd1b39d9b6df5e4c27e65aafc9a373 100644 (file)
@@ -1,7 +1,7 @@
 package com.irtimaled.bbor.client.providers;
 
 import com.irtimaled.bbor.client.GetCache;
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.client.interop.ClientInterop;
 import com.irtimaled.bbor.common.BoundingBoxCache;
 import com.irtimaled.bbor.common.MathHelper;
@@ -23,10 +23,10 @@ public class CacheProvider implements IBoundingBoxProvider<AbstractBoundingBox>
 
     private static boolean isWithinRenderDistance(AbstractBoundingBox boundingBox) {
         int renderDistanceBlocks = ClientInterop.getRenderDistanceChunks() * CHUNK_SIZE;
-        int minX = MathHelper.floor(PlayerCoords.getX() - renderDistanceBlocks);
-        int maxX = MathHelper.floor(PlayerCoords.getX() + renderDistanceBlocks);
-        int minZ = MathHelper.floor(PlayerCoords.getZ() - renderDistanceBlocks);
-        int maxZ = MathHelper.floor(PlayerCoords.getZ() + renderDistanceBlocks);
+        int minX = MathHelper.floor(Player.getX() - renderDistanceBlocks);
+        int maxX = MathHelper.floor(Player.getX() + renderDistanceBlocks);
+        int minZ = MathHelper.floor(Player.getZ() - renderDistanceBlocks);
+        int maxZ = MathHelper.floor(Player.getZ() + renderDistanceBlocks);
 
         return boundingBox.intersectsBounds(minX, minZ, maxX, maxZ);
     }
index 42a830db187845fc4e27263a953023985c46a591..51bb1f8f60554944389662a2170b741fb351cfa0 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.providers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.common.BoundingBoxType;
 import com.irtimaled.bbor.common.Dimensions;
 import com.irtimaled.bbor.common.models.BoundingBoxCuboid;
@@ -30,14 +30,14 @@ public class CustomBoxProvider implements IBoundingBoxProvider<BoundingBoxCuboid
     }
 
     public static void add(Coords minCoords, Coords maxCoords) {
-        int dimensionId = PlayerCoords.getDimensionId();
+        int dimensionId = Player.getDimensionId();
         int cacheKey = getHashKey(minCoords, maxCoords);
         BoundingBoxCuboid cuboid = BoundingBoxCuboid.from(minCoords, maxCoords, BoundingBoxType.Custom);
         getCache(dimensionId).put(cacheKey, cuboid);
     }
 
     public static boolean remove(Coords minCoords, Coords maxCoords) {
-        int dimensionId = PlayerCoords.getDimensionId();
+        int dimensionId = Player.getDimensionId();
         int cacheKey = getHashKey(minCoords, maxCoords);
         return getCache(dimensionId).remove(cacheKey) != null;
     }
index 5d4e21d1843fdd5eb3731c7aab2655e40b9eba59..c2a7321095524c3b5e209fcee2b5bde1ba63c204 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.providers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.client.interop.ClientInterop;
 import com.irtimaled.bbor.common.BoundingBoxType;
 import com.irtimaled.bbor.common.Dimensions;
@@ -41,8 +41,8 @@ public class SlimeChunkProvider implements IBoundingBoxProvider<BoundingBoxSlime
 
         Set<BoundingBoxSlimeChunk> slimeChunks = new HashSet<>();
         int renderDistanceChunks = ClientInterop.getRenderDistanceChunks();
-        int playerChunkX = MathHelper.floor(PlayerCoords.getX() / CHUNK_SIZE);
-        int playerChunkZ = MathHelper.floor(PlayerCoords.getZ() / CHUNK_SIZE);
+        int playerChunkX = MathHelper.floor(Player.getX() / CHUNK_SIZE);
+        int playerChunkZ = MathHelper.floor(Player.getZ() / CHUNK_SIZE);
         for (int chunkX = playerChunkX - renderDistanceChunks; chunkX <= playerChunkX + renderDistanceChunks; ++chunkX) {
             for (int chunkZ = playerChunkZ - renderDistanceChunks; chunkZ <= playerChunkZ + renderDistanceChunks; ++chunkZ) {
                 if (isSlimeChunk(chunkX, chunkZ)) {
index 2da43ed7797eff4e9f6b62694a1ac5164b8449e9..c54d9f35f5167cf0805ca21e293124588009701a 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.providers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.client.interop.SpawningSphereHelper;
 import com.irtimaled.bbor.client.models.Point;
 import com.irtimaled.bbor.common.MathHelper;
@@ -22,7 +22,7 @@ public class SpawningSphereProvider implements IBoundingBoxProvider<BoundingBoxS
         }
         clear();
 
-        dimensionId = PlayerCoords.getDimensionId();
+        dimensionId = Player.getDimensionId();
         spawningSphere = new BoundingBoxSpawningSphere(coords, xOffset, yOffset, zOffset);
     }
 
index c5a043f71832d7b346e8e83baf6cd8d3407b17be..3024f4266d69a30b8113e7fa6f88429b4c83e6f5 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.renderers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.common.models.BoundingBoxMobSpawner;
 import com.irtimaled.bbor.common.models.Colors;
 import com.irtimaled.bbor.common.models.Coords;
@@ -24,7 +24,7 @@ public class MobSpawnerRenderer extends AbstractRenderer<BoundingBoxMobSpawner>
     }
 
     private void renderActivationLine(OffsetPoint centerPoint) {
-        OffsetPoint playerPos = new OffsetPoint(PlayerCoords.getX(), PlayerCoords.getY(), PlayerCoords.getZ());
+        OffsetPoint playerPos = new OffsetPoint(Player.getX(), Player.getY(), Player.getZ());
         double distance = centerPoint.getDistance(playerPos);
         if (distance <= 20) {
             Color color = distance > 18 ? Color.RED : distance > 16 ? Colors.DARK_ORANGE : Color.GREEN;
index c2a40f8b16b69ba258d79873b0f0c7b42bd0e63e..f841a987667f5c6339bebb6d5e977e82000a66b4 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.renderers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.client.models.Point;
 import com.irtimaled.bbor.common.models.Coords;
 
@@ -20,15 +20,15 @@ class OffsetPoint {
     }
 
     double getX() {
-        return point.getX() - PlayerCoords.getX();
+        return point.getX() - Player.getX();
     }
 
     double getY() {
-        return point.getY() - PlayerCoords.getY();
+        return point.getY() - Player.getY();
     }
 
     double getZ() {
-        return point.getZ() - PlayerCoords.getZ();
+        return point.getZ() - Player.getZ();
     }
 
     OffsetPoint offset(double x, double y, double z) {
index d6e61f5e2ac6846cbfca72b5f3f851b351e59095..051f7f3baa058519971d950a6857c82c83c4c4d5 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.renderers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.common.models.BoundingBoxSlimeChunk;
 import com.irtimaled.bbor.config.ConfigManager;
 
@@ -13,7 +13,7 @@ public class SlimeChunkRenderer extends AbstractRenderer<BoundingBoxSlimeChunk>
         Color color = boundingBox.getColor();
         renderCuboid(bb, color);
 
-        double maxY = PlayerCoords.getMaxY(ConfigManager.slimeChunkMaxY.get());
+        double maxY = Player.getMaxY(ConfigManager.slimeChunkMaxY.get());
         double dY = maxY - 39;
         if (dY > 0) {
             OffsetPoint min = bb.getMin().offset(0, 38, 0);
index 72e229eda4fd139d95f6b83140f420e3c6b8ee9c..772af51b2b3db49aa3fd02e253f7026b4e4e76ef 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.renderers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.client.interop.SpawningSphereHelper;
 import com.irtimaled.bbor.common.MathHelper;
 import com.irtimaled.bbor.common.models.BoundingBoxSpawningSphere;
@@ -35,7 +35,7 @@ public class SpawningSphereRenderer extends AbstractRenderer<BoundingBoxSpawning
         int width = MathHelper.floor(Math.pow(2, 2 + renderDistance));
         int height = MathHelper.floor(Math.pow(2, renderDistance));
 
-        SpawningSphereHelper.findSpawnableSpaces(center.getPoint(), PlayerCoords.get(), width, height,
+        SpawningSphereHelper.findSpawnableSpaces(center.getPoint(), Player.getCoords(), width, height,
                 (x, y, z) -> {
                     OffsetBox offsetBox = new OffsetBox(x, y, z, x + 1, y, z + 1);
                     renderCuboid(offsetBox, Color.RED);
index 7d26db5ffcdd7a401049e2dafad12f31158e1049..4bc93d953045669188f89f9bbcbe625c3936b8e4 100644 (file)
@@ -1,6 +1,6 @@
 package com.irtimaled.bbor.client.renderers;
 
-import com.irtimaled.bbor.client.PlayerCoords;
+import com.irtimaled.bbor.client.Player;
 import com.irtimaled.bbor.common.models.BoundingBoxWorldSpawn;
 import com.irtimaled.bbor.common.models.Coords;
 import com.irtimaled.bbor.config.ConfigManager;
@@ -14,7 +14,7 @@ public class WorldSpawnRenderer extends AbstractRenderer<BoundingBoxWorldSpawn>
         Coords minCoords = boundingBox.getMinCoords();
         Coords maxCoords = boundingBox.getMaxCoords();
 
-        double y = PlayerCoords.getMaxY(ConfigManager.worldSpawnMaxY.get());
+        double y = Player.getMaxY(ConfigManager.worldSpawnMaxY.get());
 
         OffsetBox offsetBox = new OffsetBox(minCoords.getX(), y, minCoords.getZ(), maxCoords.getX(), y, maxCoords.getZ());
         renderOutlinedCuboid(offsetBox.nudge(), color);