aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorLifeIsAParadox <LifeIsAParadox@users.noreply.github.com>2021-10-02 01:47:18 +0200
committerLifeIsAParadox <LifeIsAParadox@users.noreply.github.com>2021-10-02 01:47:18 +0200
commitafba6154c39c6dcce239da7bc9dfbd680c845fe1 (patch)
treea9a66eb93245f8573f84b6f7d2473e226c3248bf /src/main/java
parentbf21200f661c5dd0a434bd8413e359566b569d0a (diff)
downloadSkyblocker-afba6154c39c6dcce239da7bc9dfbd680c845fe1.tar.gz
Skyblocker-afba6154c39c6dcce239da7bc9dfbd680c845fe1.tar.bz2
Skyblocker-afba6154c39c6dcce239da7bc9dfbd680c845fe1.zip
fix blaze offset and smaler outline and automaticly highlight correct blaze
solving issue #7 and #8
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java42
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java7
3 files changed, 17 insertions, 36 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java b/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java
index 750fa159..8baba403 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/SkyblockerMod.java
@@ -29,9 +29,7 @@ public class SkyblockerMod implements ClientModInitializer {
if (TICKS % 4 == 0)
try {
if(Utils.isDungeons){
- if (SkyblockerConfig.get().locations.dungeons.blazesolver) {
- DungeonBlaze.DungeonBlaze();
- }
+ DungeonBlaze.DungeonBlaze();
}
}catch(Exception e) {
//System.out.println("Blazesolver: " + e);
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java
index 621c5cc4..ab81cd75 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java
@@ -1,36 +1,24 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import me.xmrvizzy.skyblocker.utils.color.QuadColor;
import me.xmrvizzy.skyblocker.utils.RenderUtils;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents;
import net.minecraft.client.MinecraftClient;
-import net.minecraft.client.font.TextRenderer;
-import net.minecraft.client.render.debug.DebugRenderer;
import net.minecraft.entity.Entity;
-import net.minecraft.text.LiteralText;
-import net.minecraft.util.Formatting;
import net.minecraft.util.math.Box;
public class DungeonBlaze {
static Entity highestBlaze = null;
static Entity lowestBlaze = null;
static boolean renderHooked = false;
- private static long lastCalculationTime = 0;
- private static boolean lastCalculationExists = false;
- private static int lastCalculationMinX = 0;
- private static int lastCalculationMinY = 0;
- private static int lastCalculationWidth = 0;
- private static int lastCalculationHeight = 0;
public static void DungeonBlaze() {
MinecraftClient client = MinecraftClient.getInstance();
if(!renderHooked){
-
+
WorldRenderEvents.END.register(DungeonBlaze::blazeRenderer);
- MinecraftClient.getInstance().player.sendMessage(new LiteralText("--- BlazeSolver ---"), false);
- MinecraftClient.getInstance().player.sendMessage(new LiteralText("Blaze Low: ").append(new LiteralText("Red").formatted(Formatting.RED)), false);
- MinecraftClient.getInstance().player.sendMessage(new LiteralText("Blaze High: ").append(new LiteralText("Green").formatted(Formatting.GREEN)), false);
renderHooked = true;
}
Iterable<Entity> entities = client.world.getEntities();
@@ -38,7 +26,6 @@ public class DungeonBlaze {
int lowestHealth = 99999999;
for (Entity entity : entities) {
- //System.out.println(entity.getName().getString());
if (entity.getName().getString().contains("Blaze") && entity.getName().getString().contains("/")) {
String blazeName = entity.getName().getString();
@@ -66,28 +53,21 @@ public class DungeonBlaze {
QuadColor outlineColorRed = QuadColor.single( 0.0F, 1.0F, 0.0F, 1f);
QuadColor outlineColorGreen = QuadColor.single(1.0F, 0.0F, 0.0F, 1f);
try {
- TextRenderer tr = MinecraftClient.getInstance().textRenderer;
- DebugRenderer wc = MinecraftClient.getInstance().debugRenderer;
-
- if(highestBlaze != null){
+ if(highestBlaze != null && lowestBlaze != null && highestBlaze.isAlive() && lowestBlaze.isAlive() && SkyblockerConfig.get().locations.dungeons.blazesolver){
/* Outline */
- Box blaze = highestBlaze.getBoundingBox().expand(1);
- RenderUtils.drawBoxOutline(blaze,outlineColorRed,2.5f);
- }
- if(lowestBlaze != null){
+ if(highestBlaze.getY() <69) {
+ Box blaze = highestBlaze.getBoundingBox().expand(0.3, 0.9, 0.3).offset(0, -1.1, 0);
+ RenderUtils.drawBoxOutline(blaze, outlineColorRed, 5f);
+ }
/* Outline */
- Box blaze = lowestBlaze.getBoundingBox().expand(1);
- RenderUtils.drawBoxOutline(blaze,outlineColorGreen,2.5f);
+ if(lowestBlaze.getY() >69) {
+ Box blaze = lowestBlaze.getBoundingBox().expand(0.3, 0.9, 0.3).offset(0, -1.1, 0);
+ RenderUtils.drawBoxOutline(blaze, outlineColorRed, 5f);
+ }
}
}catch(Exception e) {
- //System.out.println("BlazeRenderer: " + e.getStackTrace());
System.out.println("BlazeRenderer: " + e);
}
-
}
-
-
-
-
} \ No newline at end of file
diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java
index 05044ba0..1699db81 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java
@@ -12,6 +12,7 @@ import net.minecraft.client.render.VertexFormat;
import net.minecraft.client.render.VertexFormats;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.entity.Entity;
+import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Box;
import net.minecraft.util.math.Direction;
import net.minecraft.util.math.MathHelper;
@@ -20,10 +21,12 @@ import net.minecraft.util.math.Vec3f;
public class RenderUtils {
-
-
// -------------------- Outline Boxes --------------------
+ public static void drawBoxOutline(BlockPos blockPos, QuadColor color, float lineWidth, Direction... excludeDirs) {
+ drawBoxOutline(new Box(blockPos), color, lineWidth, excludeDirs);
+ }
+
public static void drawBoxOutline(Box box, QuadColor color, float lineWidth, Direction... excludeDirs) {
if (!FrustumUtils.isBoxVisible(box)) {
return;