]> git.lizzy.rs Git - BoundingBoxOutlineReloaded.git/blobdiff - src/main/java/com/irtimaled/bbor/client/models/BoundingBoxSpawningSphere.java
General performance improvements and serverside fixes
[BoundingBoxOutlineReloaded.git] / src / main / java / com / irtimaled / bbor / client / models / BoundingBoxSpawningSphere.java
index a7d5948cab3465405b964f5e65bb6098968dc966..396a5c4d129382dc97587ee6e76a48737bcfe108 100644 (file)
@@ -1,19 +1,31 @@
 package com.irtimaled.bbor.client.models;
 
+import com.irtimaled.bbor.client.ClientRenderer;
+import com.irtimaled.bbor.client.renderers.AbstractRenderer;
+import com.irtimaled.bbor.client.renderers.SpawningSphereRenderer;
 import com.irtimaled.bbor.common.BoundingBoxType;
-import com.irtimaled.bbor.common.models.BoundingBoxSphere;
-import com.irtimaled.bbor.common.models.Point;
+import net.minecraft.util.math.BlockPos;
+
+import java.util.HashSet;
+import java.util.Set;
 
 public class BoundingBoxSpawningSphere extends BoundingBoxSphere {
+    private static final AbstractRenderer<BoundingBoxSpawningSphere> RENDERER = ClientRenderer.registerRenderer(BoundingBoxSpawningSphere.class, () -> new SpawningSphereRenderer());
+
     public static final int SAFE_RADIUS = 24;
     public static final int SPAWN_RADIUS = 128;
 
+    private final Set<BlockPos> blocks = new HashSet<>();
     private Integer spawnableCount;
 
     public BoundingBoxSpawningSphere(Point point) {
         super(point, SPAWN_RADIUS, BoundingBoxType.AFKSphere);
     }
 
+    public Set<BlockPos> getBlocks() {
+        return blocks;
+    }
+
     public boolean isWithinSphere(Point point) {
         return this.getPoint().getDistance(point) <= getRadius() + 0.5D;
     }
@@ -25,4 +37,9 @@ public class BoundingBoxSpawningSphere extends BoundingBoxSphere {
     public Integer getSpawnableSpacesCount() {
         return this.spawnableCount;
     }
+
+    @Override
+    public AbstractRenderer<?> getRenderer() {
+        return RENDERER;
+    }
 }