From 05805e8c4b36f34cbfdb57d1ff2c14dd9e115779 Mon Sep 17 00:00:00 2001 From: akarahdev Date: Thu, 18 Jan 2024 09:20:11 -0500 Subject: improve beacons --- .../skyblocker/skyblock/end/BeaconHighlighter.java | 68 ++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java (limited to 'src/main/java/de/hysky/skyblocker/skyblock/end') diff --git a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java new file mode 100644 index 00000000..1815179f --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java @@ -0,0 +1,68 @@ +package de.hysky.skyblocker.skyblock.end; + +import de.hysky.skyblocker.config.SkyblockerConfigManager; +import de.hysky.skyblocker.utils.render.RenderHelper; +import de.hysky.skyblocker.utils.scheduler.Scheduler; +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.util.math.BlockPos; + +import java.util.ArrayList; +import java.util.List; + +public class BeaconHighlighter { + static List pos = new ArrayList<>(); + + /** + * Initializes the beacon highlighting system. + * `BeaconHighlighter::render` is called after translucent rendering. + * `BeaconHighlighter::update` should be called every 5 ticks. + */ + public static void init() { + WorldRenderEvents.AFTER_TRANSLUCENT.register(BeaconHighlighter::render); + Scheduler.INSTANCE.scheduleCyclic(BeaconHighlighter::update, 5); + } + + /** + * Updates the position of the beacon. + * It checks in a 15 block radius on the X/Z axis, and a ~5 block radius on the Y axis. + * If a beacon is found, `pos` is updated to the beacon's position. + */ + + public static void update() { + var player = MinecraftClient.getInstance().player; + var world = MinecraftClient.getInstance().world; + pos.clear(); + if(player != null && world != null && + SkyblockerConfigManager.get().slayer.endermanSlayer.highlightBeacons) { + for(int x = (player.getBlockPos().getX()-15); x { + RenderHelper.renderFilled( + context, + it, + new float[]{1.0f, 0.0f, 0.0f}, + 0.5f, + true + ); + }); + } +} -- cgit From 932cd36d51d505396552478e184d86b4a3a2eb94 Mon Sep 17 00:00:00 2001 From: akarahdev Date: Thu, 18 Jan 2024 09:24:13 -0500 Subject: make this not bannable --- src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/java/de/hysky/skyblocker/skyblock/end') diff --git a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java index 1815179f..0da5cc97 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java @@ -61,7 +61,7 @@ public class BeaconHighlighter { it, new float[]{1.0f, 0.0f, 0.0f}, 0.5f, - true + false ); }); } -- cgit From ffb7d6a489934ee8429146c451a54f5d7627bf64 Mon Sep 17 00:00:00 2001 From: akarahdev Date: Thu, 18 Jan 2024 12:02:57 -0500 Subject: please work --- .../skyblocker/skyblock/end/BeaconHighlighter.java | 49 +++++----------------- 1 file changed, 10 insertions(+), 39 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/skyblock/end') diff --git a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java index 0da5cc97..98929e7c 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java @@ -1,52 +1,24 @@ package de.hysky.skyblocker.skyblock.end; import de.hysky.skyblocker.config.SkyblockerConfigManager; +import de.hysky.skyblocker.utils.Utils; import de.hysky.skyblocker.utils.render.RenderHelper; -import de.hysky.skyblocker.utils.scheduler.Scheduler; 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.util.math.BlockPos; import java.util.ArrayList; import java.util.List; public class BeaconHighlighter { - static List pos = new ArrayList<>(); + public static List positions = new ArrayList<>(); /** * Initializes the beacon highlighting system. * `BeaconHighlighter::render` is called after translucent rendering. - * `BeaconHighlighter::update` should be called every 5 ticks. */ public static void init() { WorldRenderEvents.AFTER_TRANSLUCENT.register(BeaconHighlighter::render); - Scheduler.INSTANCE.scheduleCyclic(BeaconHighlighter::update, 5); - } - - /** - * Updates the position of the beacon. - * It checks in a 15 block radius on the X/Z axis, and a ~5 block radius on the Y axis. - * If a beacon is found, `pos` is updated to the beacon's position. - */ - - public static void update() { - var player = MinecraftClient.getInstance().player; - var world = MinecraftClient.getInstance().world; - pos.clear(); - if(player != null && world != null && - SkyblockerConfigManager.get().slayer.endermanSlayer.highlightBeacons) { - for(int x = (player.getBlockPos().getX()-15); x { - RenderHelper.renderFilled( - context, - it, - new float[]{1.0f, 0.0f, 0.0f}, - 0.5f, - false - ); - }); + if(Utils.isInTheEnd() && SkyblockerConfigManager.get().slayer.endermanSlayer.highlightBeacons) + positions.forEach((it) -> RenderHelper.renderFilled( + context, + it, + new float[]{1.0f, 0.0f, 0.0f}, + 0.5f, + false + )); } } -- cgit From 954ccdb5ef1c0cbe658bfae43edd9cf832854ead Mon Sep 17 00:00:00 2001 From: akarahdev Date: Thu, 18 Jan 2024 15:27:27 -0500 Subject: refactor variable names --- .../java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/skyblock/end') diff --git a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java index 98929e7c..667318a4 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java @@ -11,7 +11,7 @@ import java.util.ArrayList; import java.util.List; public class BeaconHighlighter { - public static List positions = new ArrayList<>(); + public static List beaconPositions = new ArrayList<>(); /** * Initializes the beacon highlighting system. @@ -28,9 +28,9 @@ public class BeaconHighlighter { */ public static void render(WorldRenderContext context) { if(Utils.isInTheEnd() && SkyblockerConfigManager.get().slayer.endermanSlayer.highlightBeacons) - positions.forEach((it) -> RenderHelper.renderFilled( + beaconPositions.forEach((position) -> RenderHelper.renderFilled( context, - it, + position, new float[]{1.0f, 0.0f, 0.0f}, 0.5f, false -- cgit From b00506f518135dd4d062a311908e4506390513db Mon Sep 17 00:00:00 2001 From: akarahdev Date: Sat, 20 Jan 2024 15:40:32 -0500 Subject: again! --- .../de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/skyblock/end') diff --git a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java index 667318a4..65e9e639 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java @@ -24,16 +24,17 @@ public class BeaconHighlighter { /** * Renders the beacon glow around it. It is rendered in a red color with 50% opacity, and * is visible through walls. + * * @param context An instance of WorldRenderContext for the RenderHelper to use */ public static void render(WorldRenderContext context) { - if(Utils.isInTheEnd() && SkyblockerConfigManager.get().slayer.endermanSlayer.highlightBeacons) + if (Utils.isInTheEnd() && SkyblockerConfigManager.get().slayer.endermanSlayer.highlightBeacons) beaconPositions.forEach((position) -> RenderHelper.renderFilled( - context, - position, - new float[]{1.0f, 0.0f, 0.0f}, - 0.5f, - false + context, + position, + new float[]{1.0f, 0.0f, 0.0f}, + 0.5f, + false )); } } -- cgit From 77f8cb5c7db674ddb066bf92f84c530e543dbc3e Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Sun, 21 Jan 2024 12:43:25 -0500 Subject: guh --- src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/skyblock/end') diff --git a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java index 65e9e639..d2269482 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/end/BeaconHighlighter.java @@ -11,11 +11,11 @@ import java.util.ArrayList; import java.util.List; public class BeaconHighlighter { - public static List beaconPositions = new ArrayList<>(); + public static final List beaconPositions = new ArrayList<>(); /** * Initializes the beacon highlighting system. - * `BeaconHighlighter::render` is called after translucent rendering. + * {@link BeaconHighlighter#render(WorldRenderContext)} is called after translucent rendering. */ public static void init() { WorldRenderEvents.AFTER_TRANSLUCENT.register(BeaconHighlighter::render); -- cgit