aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/skyblock
diff options
context:
space:
mode:
authorKevin <92656833+kevinthegreat1@users.noreply.github.com>2023-09-05 19:45:14 -0400
committerGitHub <noreply@github.com>2023-09-05 19:45:14 -0400
commitedf217cd8d3f2344700ae44416031ae3d695bf77 (patch)
treea5f6269f3567fe28a410b8fd93c89801ba0c14c6 /src/main/java/me/xmrvizzy/skyblocker/skyblock
parentd6d50160c9a1e5145119d4b06bcd74e9c662238e (diff)
parent30a7b733b0c5a0e7b5002dfd68ec6ece04c02ecc (diff)
downloadSkyblocker-edf217cd8d3f2344700ae44416031ae3d695bf77.tar.gz
Skyblocker-edf217cd8d3f2344700ae44416031ae3d695bf77.tar.bz2
Skyblocker-edf217cd8d3f2344700ae44416031ae3d695bf77.zip
Merge pull request #274 from kevinthegreat1/utils-cleanup
Utils cleanup
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/skyblock')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/TreasureHunter.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/CroesusHelper.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java22
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMapConfigScreen.java8
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/StarredMobGlow.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdos.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TicTacToe.java60
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/ColorTerminal.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/OrderTerminal.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/StartsWithTerminal.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java68
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java14
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ChronomatronSolver.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ExperimentSolver.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/UltrasequencerSolver.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilter.java15
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilter.java39
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilter.java15
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilter.java35
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilter.java16
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilter.java15
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilter.java15
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/MoltenWaveFilter.java15
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ShowOffFilter.java18
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/SimpleChatFilter.java17
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilter.java16
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/EffigyWaypoints.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/HealingMelonIndicator.java6
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/ManiaIndicator.java6
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/MirrorverseWaypoints.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/StakeIndicator.java9
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/TwinClawsIndicator.java9
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/shortcut/Shortcuts.java3
45 files changed, 355 insertions, 144 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java
index b7c4ff2f..ab6fa767 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FairySouls.java
@@ -8,8 +8,8 @@ import com.google.gson.JsonParser;
import me.xmrvizzy.skyblocker.SkyblockerMod;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import me.xmrvizzy.skyblocker.utils.NEURepo;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
import me.xmrvizzy.skyblocker.utils.Utils;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java
index b53157c5..f039a79d 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FishingHelper.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
-import me.xmrvizzy.skyblocker.utils.title.Title;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
+import me.xmrvizzy.skyblocker.utils.render.title.Title;
import net.fabricmc.fabric.api.event.player.UseItemCallback;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayerEntity;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java
index e7c76160..f1d6e986 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/TeleportOverlay.java
@@ -3,8 +3,8 @@ package me.xmrvizzy.skyblocker.skyblock;
import com.mojang.blaze3d.systems.RenderSystem;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import me.xmrvizzy.skyblocker.skyblock.item.PriceInfoTooltip;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
import me.xmrvizzy.skyblocker.utils.Utils;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents;
import net.minecraft.block.BlockState;
@@ -77,6 +77,7 @@ public class TeleportOverlay {
/**
* Renders the teleport overlay with a given range. Uses {@link MinecraftClient#crosshairTarget} if it is a block and within range. Otherwise, raycasts from the player with the given range.
+ *
* @implNote {@link MinecraftClient#player} and {@link MinecraftClient#world} must not be null when calling this method.
*/
private static void render(WorldRenderContext wrc, int range) {
@@ -93,6 +94,7 @@ public class TeleportOverlay {
/**
* Renders the teleport overlay at the given {@link BlockHitResult}.
+ *
* @implNote {@link MinecraftClient#world} must not be null when calling this method.
*/
private static void render(WorldRenderContext wrc, BlockHitResult blockHitResult) {
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java
index b0f0445a..a5d02d93 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/HungryHiker.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.barn;
-import me.xmrvizzy.skyblocker.chat.ChatFilterResult;
-import me.xmrvizzy.skyblocker.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
import net.minecraft.client.MinecraftClient;
import net.minecraft.text.Text;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/TreasureHunter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/TreasureHunter.java
index ad5db522..ba42d2ba 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/TreasureHunter.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/barn/TreasureHunter.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.barn;
-import me.xmrvizzy.skyblocker.chat.ChatFilterResult;
-import me.xmrvizzy.skyblocker.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
import net.minecraft.client.MinecraftClient;
import net.minecraft.text.Text;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/CroesusHelper.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/CroesusHelper.java
index def1eb76..1e949cd1 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/CroesusHelper.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/CroesusHelper.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.gui.ColorHighlight;
-import me.xmrvizzy.skyblocker.gui.ContainerSolver;
+import me.xmrvizzy.skyblocker.utils.render.gui.ColorHighlight;
+import me.xmrvizzy.skyblocker.utils.render.gui.ContainerSolver;
import net.minecraft.item.ItemStack;
import java.util.ArrayList;
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 c3e12c3d..6e354ddc 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java
@@ -1,11 +1,10 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
import it.unimi.dsi.fastutil.objects.ObjectIntPair;
+import me.xmrvizzy.skyblocker.SkyblockerMod;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
-import me.xmrvizzy.skyblocker.utils.RenderUtils;
import me.xmrvizzy.skyblocker.utils.Utils;
-import me.xmrvizzy.skyblocker.utils.color.QuadColor;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents;
import net.minecraft.client.MinecraftClient;
@@ -27,15 +26,18 @@ import java.util.List;
*/
public class DungeonBlaze {
private static final Logger LOGGER = LoggerFactory.getLogger(DungeonBlaze.class.getName());
+ private static final float[] GREEN_COLOR_COMPONENTS = {0.0F, 1.0F, 0.0F};
private static final float[] WHITE_COLOR_COMPONENTS = {1.0f, 1.0f, 1.0f};
- private static final QuadColor outlineColorGreen = QuadColor.single(0.0F, 1.0f, 0.0f, 1f);
- private static final QuadColor outlineColorWhite = QuadColor.single(1.0f, 1.0f, 1.0f, 1.0f);
private static ArmorStandEntity highestBlaze = null;
private static ArmorStandEntity lowestBlaze = null;
private static ArmorStandEntity nextHighestBlaze = null;
private static ArmorStandEntity nextLowestBlaze = null;
- private static boolean renderHooked = false;
+
+ public static void init() {
+ SkyblockerMod.getInstance().scheduler.scheduleCyclic(DungeonBlaze::update, 4);
+ WorldRenderEvents.BEFORE_DEBUG_RENDER.register(DungeonBlaze::blazeRenderer);
+ }
/**
* Updates the state of Blaze entities and triggers the rendering process if necessary.
@@ -44,10 +46,6 @@ public class DungeonBlaze {
ClientWorld world = MinecraftClient.getInstance().world;
ClientPlayerEntity player = MinecraftClient.getInstance().player;
if (world == null || player == null || !Utils.isInDungeons()) return;
- if (!renderHooked) {
- WorldRenderEvents.BEFORE_DEBUG_RENDER.register(DungeonBlaze::blazeRenderer);
- renderHooked = true;
- }
List<ObjectIntPair<ArmorStandEntity>> blazes = getBlazesInWorld(world, player);
sortBlazes(blazes);
updateBlazeEntities(blazes);
@@ -130,11 +128,11 @@ public class DungeonBlaze {
*/
private static void renderBlazeOutline(ArmorStandEntity blaze, ArmorStandEntity nextBlaze, WorldRenderContext wrc) {
Box blazeBox = blaze.getBoundingBox().expand(0.3, 0.9, 0.3).offset(0, -1.1, 0);
- RenderUtils.drawBoxOutline(blazeBox, DungeonBlaze.outlineColorGreen, 5f);
+ RenderHelper.renderOutline(wrc, blazeBox, GREEN_COLOR_COMPONENTS, 5f);
if (nextBlaze != null && nextBlaze.isAlive() && nextBlaze != blaze) {
Box nextBlazeBox = nextBlaze.getBoundingBox().expand(0.3, 0.9, 0.3).offset(0, -1.1, 0);
- RenderUtils.drawBoxOutline(nextBlazeBox, DungeonBlaze.outlineColorWhite, 5f);
+ RenderHelper.renderOutline(wrc, nextBlazeBox, WHITE_COLOR_COMPONENTS, 5f);
Vec3d blazeCenter = blazeBox.getCenter();
Vec3d nextBlazeCenter = nextBlazeBox.getCenter();
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java
index 040c8aed..a70dd501 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java
@@ -1,7 +1,7 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.Scheduler;
+import me.xmrvizzy.skyblocker.utils.scheduler.Scheduler;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback;
import net.minecraft.client.MinecraftClient;
@@ -21,7 +21,7 @@ public class DungeonMap {
public static void render(MatrixStack matrices) {
MinecraftClient client = MinecraftClient.getInstance();
- if (client.player == null && client.world == null) return;
+ if (client.player == null || client.world == null) return;
ItemStack item = client.player.getInventory().main.get(8);
NbtCompound tag = item.getNbt();
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMapConfigScreen.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMapConfigScreen.java
index ef782c3b..f0ae1590 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMapConfigScreen.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMapConfigScreen.java
@@ -1,14 +1,14 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
-import java.awt.Color;
-
import me.shedaniel.autoconfig.AutoConfig;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderUtils;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.text.Text;
+import java.awt.*;
+
public class DungeonMapConfigScreen extends Screen {
private int hudX = SkyblockerConfig.get().locations.dungeons.mapX;
@@ -30,7 +30,7 @@ public class DungeonMapConfigScreen extends Screen {
public boolean mouseDragged(double mouseX, double mouseY, int button, double deltaX, double deltaY) {
float scaling = SkyblockerConfig.get().locations.dungeons.mapScaling;
int size = (int) (128 * scaling);
- if (RenderUtils.pointExistsInArea((int) mouseX, (int) mouseY, hudX, hudY, hudX + size, hudY + size) && button == 0) {
+ if (RenderHelper.pointIsInArea(mouseX, mouseY, hudX, hudY, hudX + size, hudY + size) && button == 0) {
hudX = (int) Math.max(Math.min(mouseX - (size >> 1), this.width - size), 0);
hudY = (int) Math.max(Math.min(mouseY - (size >> 1), this.height - size), 0);
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java
index 8ae7ce7b..e1194632 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Reparty.java
@@ -1,10 +1,10 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
import me.xmrvizzy.skyblocker.SkyblockerMod;
-import me.xmrvizzy.skyblocker.chat.ChatFilterResult;
-import me.xmrvizzy.skyblocker.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import me.xmrvizzy.skyblocker.utils.Utils;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback;
import net.minecraft.client.MinecraftClient;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/StarredMobGlow.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/StarredMobGlow.java
index b45242f9..64a28712 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/StarredMobGlow.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/StarredMobGlow.java
@@ -3,7 +3,7 @@ package me.xmrvizzy.skyblocker.skyblock.dungeon;
import java.util.List;
import me.xmrvizzy.skyblocker.utils.Utils;
-import me.xmrvizzy.skyblocker.utils.culling.OcclusionCulling;
+import me.xmrvizzy.skyblocker.utils.render.culling.OcclusionCulling;
import net.minecraft.entity.Entity;
import net.minecraft.entity.decoration.ArmorStandEntity;
import net.minecraft.entity.player.PlayerEntity;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdos.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdos.java
index da964f07..9f522942 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdos.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/ThreeWeirdos.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
-import me.xmrvizzy.skyblocker.chat.ChatFilterResult;
-import me.xmrvizzy.skyblocker.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.decoration.ArmorStandEntity;
import net.minecraft.text.Text;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TicTacToe.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TicTacToe.java
index f5d55d2c..a97b6752 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TicTacToe.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/TicTacToe.java
@@ -1,14 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
-import java.util.List;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderUtils;
import me.xmrvizzy.skyblocker.utils.Utils;
-import me.xmrvizzy.skyblocker.utils.color.QuadColor;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import me.xmrvizzy.skyblocker.utils.tictactoe.TicTacToeUtils;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents;
@@ -23,32 +17,36 @@ import net.minecraft.item.map.MapState;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Box;
import net.minecraft.util.math.Direction;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.util.List;
/**
* Thanks to Danker for a reference implementation!
*/
public class TicTacToe {
private static final Logger LOGGER = LoggerFactory.getLogger(TicTacToe.class);
- private static final QuadColor RED = QuadColor.single(1.0f, 0.0f, 0.0f, 1f);
+ private static final float[] RED_COLOR_COMPONENTS = {1.0F, 0.0F, 0.0F};
private static Box nextBestMoveToMake = null;
public static void init() {
WorldRenderEvents.BEFORE_DEBUG_RENDER.register(TicTacToe::solutionRenderer);
}
-
+
public static void tick() {
MinecraftClient client = MinecraftClient.getInstance();
ClientWorld world = client.world;
ClientPlayerEntity player = client.player;
-
+
nextBestMoveToMake = null;
-
- if (world == null || player == null || !Utils.isInDungeons()) return;
-
+
+ if (world == null || player == null || !Utils.isInDungeons()) return;
+
//Search within 21 blocks for item frames that contain maps
Box searchBox = new Box(player.getX() - 21, player.getY() - 21, player.getZ() - 21, player.getX() + 21, player.getY() + 21, player.getZ() + 21);
List<ItemFrameEntity> itemFramesThatHoldMaps = world.getEntitiesByClass(ItemFrameEntity.class, searchBox, ItemFrameEntity::containsMap);
-
+
try {
//Only attempt to solve if its the player's turn
if (itemFramesThatHoldMaps.size() != 9 && itemFramesThatHoldMaps.size() % 2 == 1) {
@@ -56,15 +54,15 @@ public class TicTacToe {
BlockPos leftmostRow = null;
int sign = 1;
char facing = 'X';
-
+
for (ItemFrameEntity itemFrame : itemFramesThatHoldMaps) {
MapState mapState = world.getMapState(FilledMapItem.getMapName(itemFrame.getMapId().getAsInt()));
-
+
if (mapState == null) continue;
-
+
int column = 0, row;
sign = 1;
-
+
//Find position of the item frame relative to where it is on the tic tac toe board
if (itemFrame.getHorizontalFacing() == Direction.SOUTH || itemFrame.getHorizontalFacing() == Direction.WEST) sign = -1;
BlockPos itemFramePos = BlockPos.ofFloored(itemFrame.getX(), itemFrame.getY(), itemFrame.getZ());
@@ -72,23 +70,23 @@ public class TicTacToe {
for (int i = 2; i >= 0; i--) {
int realI = i * sign;
BlockPos blockPos = itemFramePos;
-
+
if (itemFrame.getX() % 0.5 == 0) {
blockPos = itemFramePos.add(realI, 0, 0);
} else if (itemFrame.getZ() % 0.5 == 0) {
blockPos = itemFramePos.add(0, 0, realI);
facing = 'Z';
}
-
+
Block block = world.getBlockState(blockPos).getBlock();
if (block == Blocks.AIR || block == Blocks.STONE_BUTTON) {
leftmostRow = blockPos;
column = i;
-
+
break;
}
}
-
+
//Determine the row of the item frame
if (itemFrame.getY() == 72.5) {
row = 0;
@@ -99,24 +97,24 @@ public class TicTacToe {
} else {
continue;
}
-
-
+
+
//Get the color of the middle pixel of the map which determines whether its X or O
int middleColor = mapState.colors[8256] & 255;
-
+
if (middleColor == 114) {
board[row][column] = 'X';
} else if (middleColor == 33) {
board[row][column] = 'O';
}
-
+
int bestMove = TicTacToeUtils.getBestMove(board) - 1;
-
+
if (leftmostRow != null) {
double drawX = facing == 'X' ? leftmostRow.getX() - sign * (bestMove % 3) : leftmostRow.getX();
double drawY = 72 - (double) (bestMove / 3);
double drawZ = facing == 'Z' ? leftmostRow.getZ() - sign * (bestMove % 3) : leftmostRow.getZ();
-
+
nextBestMoveToMake = new Box(drawX, drawY, drawZ, drawX + 1, drawY + 1, drawZ + 1);
}
}
@@ -125,11 +123,11 @@ public class TicTacToe {
LOGGER.error("[Skyblocker Tic Tac Toe] Encountered an exception while determining a tic tac toe solution!", e);
}
}
-
- private static void solutionRenderer(WorldRenderContext context) {
+
+ private static void solutionRenderer(WorldRenderContext context) {
try {
if (SkyblockerConfig.get().locations.dungeons.solveTicTacToe && nextBestMoveToMake != null) {
- RenderUtils.drawBoxOutline(nextBestMoveToMake, RED, 5);
+ RenderHelper.renderOutline(context, nextBestMoveToMake, RED_COLOR_COMPONENTS, 5);
}
} catch (Exception e) {
LOGGER.error("[Skyblocker Tic Tac Toe] Encountered an exception while rendering the tic tac toe solution!", e);
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java
index 9c7452ac..8497041b 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/Trivia.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
-import me.xmrvizzy.skyblocker.chat.ChatFilterResult;
-import me.xmrvizzy.skyblocker.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.skyblock.FairySouls;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayerEntity;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java
index c2658fd3..edf18f85 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java
@@ -2,7 +2,7 @@ package me.xmrvizzy.skyblocker.skyblock.dungeon.secrets;
import com.google.gson.JsonObject;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext;
import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.Entity;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/ColorTerminal.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/ColorTerminal.java
index add30907..7aac04b5 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/ColorTerminal.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/ColorTerminal.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon.terminal;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.gui.ColorHighlight;
-import me.xmrvizzy.skyblocker.gui.ContainerSolver;
+import me.xmrvizzy.skyblocker.utils.render.gui.ColorHighlight;
+import me.xmrvizzy.skyblocker.utils.render.gui.ContainerSolver;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/OrderTerminal.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/OrderTerminal.java
index 3b4e1c50..01437919 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/OrderTerminal.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/OrderTerminal.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon.terminal;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.gui.ColorHighlight;
-import me.xmrvizzy.skyblocker.gui.ContainerSolver;
+import me.xmrvizzy.skyblocker.utils.render.gui.ColorHighlight;
+import me.xmrvizzy.skyblocker.utils.render.gui.ContainerSolver;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/StartsWithTerminal.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/StartsWithTerminal.java
index 18326254..988b570e 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/StartsWithTerminal.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/StartsWithTerminal.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon.terminal;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.gui.ColorHighlight;
-import me.xmrvizzy.skyblocker.gui.ContainerSolver;
+import me.xmrvizzy.skyblocker.utils.render.gui.ColorHighlight;
+import me.xmrvizzy.skyblocker.utils.render.gui.ContainerSolver;
import net.minecraft.item.ItemStack;
import java.util.ArrayList;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java
index 6ac8fa6c..3563741c 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHud.java
@@ -1,16 +1,9 @@
package me.xmrvizzy.skyblocker.skyblock.dwarven;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-
import it.unimi.dsi.fastutil.ints.IntIntPair;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.hud.HudCommsWidget;
-import me.xmrvizzy.skyblocker.utils.Scheduler;
+import me.xmrvizzy.skyblocker.utils.scheduler.Scheduler;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandManager;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback;
import net.fabricmc.fabric.api.client.rendering.v1.HudRenderCallback;
@@ -19,24 +12,31 @@ import net.minecraft.client.gui.DrawContext;
import net.minecraft.text.Text;
import net.minecraft.util.Formatting;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+
public class DwarvenHud {
public static final MinecraftClient client = MinecraftClient.getInstance();
public static List<Commission> commissionList = new ArrayList<>();
public static final List<Pattern> COMMISSIONS = Stream.of(
- "(?:Titanium|Mithril|Hard Stone) Miner",
- "(?:Ice Walker|Goblin|Goblin Raid|Automaton|Sludge|Team Treasurite Member|Yog|Boss Corleone|Thyst) Slayer",
- "(?:Lava Springs|Cliffside Veins|Rampart's Quarry|Upper Mines|Royal Mines) Mithril",
- "(?:Lava Springs|Cliffside Veins|Rampart's Quarry|Upper Mines|Royal Mines) Titanium",
- "Goblin Raid",
- "(?:Powder Ghast|Star Sentry) Puncher",
- "(?<!Lucky )Raffle",
- "Lucky Raffle",
- "2x Mithril Powder Collector",
- "(?:Ruby|Amber|Sapphire|Jade|Amethyst|Topaz) Gemstone Collector",
- "(?:Amber|Sapphire|Jade|Amethyst|Topaz) Crystal Hunter",
- "Chest Looter").map(s -> Pattern.compile("^.*(" + s + "): (\\d+\\.?\\d*%|DONE)"))
+ "(?:Titanium|Mithril|Hard Stone) Miner",
+ "(?:Ice Walker|Goblin|Goblin Raid|Automaton|Sludge|Team Treasurite Member|Yog|Boss Corleone|Thyst) Slayer",
+ "(?:Lava Springs|Cliffside Veins|Rampart's Quarry|Upper Mines|Royal Mines) Mithril",
+ "(?:Lava Springs|Cliffside Veins|Rampart's Quarry|Upper Mines|Royal Mines) Titanium",
+ "Goblin Raid",
+ "(?:Powder Ghast|Star Sentry) Puncher",
+ "(?<!Lucky )Raffle",
+ "Lucky Raffle",
+ "2x Mithril Powder Collector",
+ "(?:Ruby|Amber|Sapphire|Jade|Amethyst|Topaz) Gemstone Collector",
+ "(?:Amber|Sapphire|Jade|Amethyst|Topaz) Crystal Hunter",
+ "Chest Looter").map(s -> Pattern.compile("^.*(" + s + "): (\\d+\\.?\\d*%|DONE)"))
.collect(Collectors.toList());
public static void init() {
@@ -58,21 +58,21 @@ public class DwarvenHud {
}
public static IntIntPair getDimForConfig(List<Commission> commissions) {
- switch (SkyblockerConfig.get().locations.dwarvenMines.dwarvenHud.style) {
- case SIMPLE:
+ return switch (SkyblockerConfig.get().locations.dwarvenMines.dwarvenHud.style) {
+ case SIMPLE -> {
HudCommsWidget.INSTANCE_CFG.updateData(commissions, false);
- return IntIntPair.of(
- HudCommsWidget.INSTANCE_CFG.getWidth(),
- HudCommsWidget.INSTANCE_CFG.getHeight());
- case FANCY :
+ yield IntIntPair.of(
+ HudCommsWidget.INSTANCE_CFG.getWidth(),
+ HudCommsWidget.INSTANCE_CFG.getHeight());
+ }
+ case FANCY -> {
HudCommsWidget.INSTANCE_CFG.updateData(commissions, true);
- return IntIntPair.of(
- HudCommsWidget.INSTANCE_CFG.getWidth(),
- HudCommsWidget.INSTANCE_CFG.getHeight());
- case CLASSIC:
- default:
- return IntIntPair.of(200, 20 * commissions.size());
- }
+ yield IntIntPair.of(
+ HudCommsWidget.INSTANCE_CFG.getWidth(),
+ HudCommsWidget.INSTANCE_CFG.getHeight());
+ }
+ default -> IntIntPair.of(200, 20 * commissions.size());
+ };
}
public static void render(HudCommsWidget hcw, DrawContext context, int hudX, int hudY, List<Commission> commissions) {
@@ -122,7 +122,7 @@ public class DwarvenHud {
public static void update() {
commissionList = new ArrayList<>();
- if (client.player == null || !SkyblockerConfig.get().locations.dwarvenMines.dwarvenHud.enabled)
+ if (client.player == null || client.getNetworkHandler() == null || !SkyblockerConfig.get().locations.dwarvenMines.dwarvenHud.enabled)
return;
client.getNetworkHandler().getPlayerList().forEach(playerListEntry -> {
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java
index d3c0fa76..35a296fb 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/DwarvenHudConfigScreen.java
@@ -1,18 +1,18 @@
package me.xmrvizzy.skyblocker.skyblock.dwarven;
-import java.awt.Color;
-import java.util.List;
-
import it.unimi.dsi.fastutil.ints.IntIntPair;
import me.shedaniel.autoconfig.AutoConfig;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import me.xmrvizzy.skyblocker.skyblock.dwarven.DwarvenHud.Commission;
import me.xmrvizzy.skyblocker.skyblock.tabhud.widget.hud.HudCommsWidget;
-import me.xmrvizzy.skyblocker.utils.RenderUtils;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.text.Text;
+import java.awt.*;
+import java.util.List;
+
public class DwarvenHudConfigScreen extends Screen {
private static final List<Commission> CFG_COMMS = List.of(new DwarvenHud.Commission("Test Commission 1", "1%"), new DwarvenHud.Commission("Test Commission 2", "2%"));
@@ -35,9 +35,9 @@ public class DwarvenHudConfigScreen extends Screen {
@Override
public boolean mouseDragged(double mouseX, double mouseY, int button, double deltaX, double deltaY) {
IntIntPair dims = DwarvenHud.getDimForConfig(CFG_COMMS);
- if (RenderUtils.pointExistsInArea((int) mouseX, (int) mouseY, hudX, hudY, hudX + 200, hudY + 40) && button == 0) {
- hudX = (int) Math.max(Math.min(mouseX - dims.leftInt()/2, this.width - dims.leftInt()), 0);
- hudY = (int) Math.max(Math.min(mouseY - dims.rightInt()/2, this.height - dims.rightInt()), 0);
+ if (RenderHelper.pointIsInArea(mouseX, mouseY, hudX, hudY, hudX + 200, hudY + 40) && button == 0) {
+ hudX = (int) Math.max(Math.min(mouseX - (double) dims.leftInt() / 2, this.width - dims.leftInt()), 0);
+ hudY = (int) Math.max(Math.min(mouseY - (double) dims.rightInt() / 2, this.height - dims.rightInt()), 0);
}
return super.mouseDragged(mouseX, mouseY, button, deltaX, deltaY);
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java
index 4c2ac002..5e284452 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Fetchur.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dwarven;
-import me.xmrvizzy.skyblocker.chat.ChatFilterResult;
-import me.xmrvizzy.skyblocker.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
import net.minecraft.client.MinecraftClient;
import net.minecraft.text.Text;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java
index 0599b5b2..96ccdaf2 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dwarven/Puzzler.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.dwarven;
-import me.xmrvizzy.skyblocker.chat.ChatFilterResult;
-import me.xmrvizzy.skyblocker.chat.ChatPatternListener;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
import net.minecraft.block.Blocks;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.world.ClientWorld;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ChronomatronSolver.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ChronomatronSolver.java
index 40793169..d62383be 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ChronomatronSolver.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ChronomatronSolver.java
@@ -2,7 +2,7 @@ package me.xmrvizzy.skyblocker.skyblock.experiment;
import com.google.common.collect.ImmutableMap;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.gui.ColorHighlight;
+import me.xmrvizzy.skyblocker.utils.render.gui.ColorHighlight;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.ingame.GenericContainerScreen;
import net.minecraft.inventory.Inventory;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ExperimentSolver.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ExperimentSolver.java
index 5dad908e..d0e5522d 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ExperimentSolver.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/ExperimentSolver.java
@@ -1,7 +1,7 @@
package me.xmrvizzy.skyblocker.skyblock.experiment;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.gui.ContainerSolver;
+import me.xmrvizzy.skyblocker.utils.render.gui.ContainerSolver;
import net.fabricmc.fabric.api.client.screen.v1.ScreenEvents;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.ingame.GenericContainerScreen;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java
index 9f6e8b2a..f329a395 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java
@@ -1,7 +1,7 @@
package me.xmrvizzy.skyblocker.skyblock.experiment;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.gui.ColorHighlight;
+import me.xmrvizzy.skyblocker.utils.render.gui.ColorHighlight;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.ingame.GenericContainerScreen;
import net.minecraft.item.ItemStack;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/UltrasequencerSolver.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/UltrasequencerSolver.java
index 45d6c0c6..d4d80ee6 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/UltrasequencerSolver.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/UltrasequencerSolver.java
@@ -1,7 +1,7 @@
package me.xmrvizzy.skyblocker.skyblock.experiment;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.gui.ColorHighlight;
+import me.xmrvizzy.skyblocker.utils.render.gui.ColorHighlight;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.ingame.GenericContainerScreen;
import net.minecraft.inventory.Inventory;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilter.java
new file mode 100644
index 00000000..97e5e8dd
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AbilityFilter.java
@@ -0,0 +1,15 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+
+public class AbilityFilter extends SimpleChatFilter {
+ public AbilityFilter() {
+ super("^(?:This ability is on cooldown for " + NUMBER + "s\\.|No more charges, next one in " + NUMBER + "s!)$");
+ }
+
+ @Override
+ protected ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideAbility;
+ }
+}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilter.java
new file mode 100644
index 00000000..c8335699
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AdFilter.java
@@ -0,0 +1,39 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
+import net.minecraft.text.Text;
+
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+public class AdFilter extends ChatPatternListener {
+ private static final Pattern[] AD_FILTERS = new Pattern[] {
+ Pattern.compile("^(?:i(?:m|'m| am)? |(?:is )?any(?: ?one|1) )?(?:buy|sell|lowball|trade?)(?:ing)?(?:\\W|$)", Pattern.CASE_INSENSITIVE),
+ Pattern.compile("(.)\\1{7,}"),
+ Pattern.compile("\\W(?:on|in|check|at) my (?:ah|bin)(?:\\W|$)", Pattern.CASE_INSENSITIVE), };
+ private static final String EMBLEMS = "\u2E15\u273F\u2741\u2E19\u03B1\u270E\u2615\u2616\u2663\u213B\u2694\u27B6\u26A1\u2604\u269A\u2693\u2620\u269B\u2666\u2660\u2764\u2727\u238A\u1360\u262C\u269D\u29C9\uA214\u32D6\u2E0E\u26A0\uA541\u3020\u30C4\u2948\u2622\u2623\u273E\u269C\u0BD0\u0A6D\u2742\u16C3\u3023\u10F6\u0444\u266A\u266B\u04C3\u26C1\u26C3\u16DD\uA03E\u1C6A\u03A3\u09EB\u2603\u2654\u12DE";
+
+ public AdFilter() {
+ // Groups:
+ // 1. Player name
+ // 2. Message
+ // (?:§8\[[§feadbc0-9]+§8\] )?(?:[§76l]+[<INSERT EMBLEMS>] )?§[67abc](?:\[[§A-Za-z0-9+]+\] )?([A-Za-z0-9_]+)§[f7]: (.+)
+ super("(?:§8\\[[§feadbc0-9]+§8\\] )?(?:[§76l]+[" + EMBLEMS + "] )?§[67abc](?:\\[[§A-Za-z0-9+]+\\] )?([A-Za-z0-9_]+)§[f7]: (.+)");
+ }
+
+ @Override
+ public boolean onMatch(Text _message, Matcher matcher) {
+ String message = matcher.group(2);
+ for (Pattern adFilter : AD_FILTERS)
+ if (adFilter.matcher(message).find())
+ return true;
+ return false;
+ }
+
+ @Override
+ protected ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideAds;
+ }
+} \ No newline at end of file
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilter.java
new file mode 100644
index 00000000..15c1ce6a
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AoteFilter.java
@@ -0,0 +1,15 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+
+public class AoteFilter extends SimpleChatFilter {
+ public AoteFilter() {
+ super("^There are blocks in the way!$");
+ }
+
+ @Override
+ public ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideAOTE;
+ }
+}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilter.java
new file mode 100644
index 00000000..8c9ce9f6
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/AutopetFilter.java
@@ -0,0 +1,35 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
+import net.minecraft.client.MinecraftClient;
+import net.minecraft.text.Text;
+
+import java.util.Objects;
+import java.util.regex.Matcher;
+
+public class AutopetFilter extends ChatPatternListener {
+ public AutopetFilter() {
+ super("^§cAutopet §eequipped your §7.*§e! §a§lVIEW RULE$");
+ }
+
+ @Override
+ public boolean onMatch(Text _message, Matcher matcher) {
+ if (SkyblockerConfig.get().messages.hideAutopet == ChatFilterResult.ACTION_BAR) {
+ Objects.requireNonNull(MinecraftClient.getInstance().player).sendMessage(
+ Text.literal(
+ _message.getString().replace("§a§lVIEW RULE", "")
+ ), true);
+ }
+ return true;
+ }
+
+ @Override
+ public ChatFilterResult state() {
+ if (SkyblockerConfig.get().messages.hideAutopet == ChatFilterResult.ACTION_BAR)
+ return ChatFilterResult.FILTER;
+ else
+ return SkyblockerConfig.get().messages.hideAutopet;
+ }
+} \ No newline at end of file
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilter.java
new file mode 100644
index 00000000..4a714e6d
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ComboFilter.java
@@ -0,0 +1,16 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+
+public class ComboFilter extends SimpleChatFilter {
+ public ComboFilter() {
+ super("^(\\+\\d+ Kill Combo \\+\\d+(% ✯ Magic Find| coins per kill|% Combat Exp)" +
+ "|Your Kill Combo has expired! You reached a \\d+ Kill Combo!)$");
+ }
+
+ @Override
+ public ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideCombo;
+ }
+}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilter.java
new file mode 100644
index 00000000..652d47c7
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/HealFilter.java
@@ -0,0 +1,15 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+
+public class HealFilter extends SimpleChatFilter {
+ public HealFilter() {
+ super("^(?:You healed yourself for " + NUMBER + " health!|[a-zA-Z0-9_]{2,16} healed you for " + NUMBER + " health!)$");
+ }
+
+ @Override
+ public ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideHeal;
+ }
+}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilter.java
new file mode 100644
index 00000000..d7748313
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ImplosionFilter.java
@@ -0,0 +1,15 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+
+public class ImplosionFilter extends SimpleChatFilter {
+ public ImplosionFilter() {
+ super("^Your Implosion hit " + NUMBER + " enem(?:y|ies) for " + NUMBER + " damage\\.$");
+ }
+
+ @Override
+ public ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideImplosion;
+ }
+}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/MoltenWaveFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/MoltenWaveFilter.java
new file mode 100644
index 00000000..9f6138f0
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/MoltenWaveFilter.java
@@ -0,0 +1,15 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+
+public class MoltenWaveFilter extends SimpleChatFilter {
+ public MoltenWaveFilter() {
+ super("^Your Molten Wave hit " + NUMBER + " enem(?:y|ies) for " + NUMBER + " damage\\.$");
+ }
+
+ @Override
+ public ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideMoltenWave;
+ }
+}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ShowOffFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ShowOffFilter.java
new file mode 100644
index 00000000..6692e612
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/ShowOffFilter.java
@@ -0,0 +1,18 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+
+public class ShowOffFilter extends SimpleChatFilter {
+ private static final String EMBLEMS = "\u2E15\u273F\u2741\u2E19\u03B1\u270E\u2615\u2616\u2663\u213B\u2694\u27B6\u26A1\u2604\u269A\u2693\u2620\u269B\u2666\u2660\u2764\u2727\u238A\u1360\u262C\u269D\u29C9\uA214\u32D6\u2E0E\u26A0\uA541\u3020\u30C4\u2948\u2622\u2623\u273E\u269C\u0BD0\u0A6D\u2742\u16C3\u3023\u10F6\u0444\u266A\u266B\u04C3\u26C1\u26C3\u16DD\uA03E\u1C6A\u03A3\u09EB\u2603\u2654\u12DE";
+ private static final String[] SHOW_TYPES = { "is holding", "is wearing", "is friends with a", "has" };
+
+ public ShowOffFilter() {
+ super("(?:§8\\[[§feadbc0-9]+§8\\] )?(?:[§76l]+[" + EMBLEMS + "] )?§[67abc](?:\\[[§A-Za-z0-9+]+\\] )?([A-Za-z0-9_]+)[§f7]+ (?:" + String.join("|", SHOW_TYPES) + ") §8\\[(.+)§8\\]");
+ }
+
+ @Override
+ protected ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideShowOff;
+ }
+}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/SimpleChatFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/SimpleChatFilter.java
new file mode 100644
index 00000000..20017443
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/SimpleChatFilter.java
@@ -0,0 +1,17 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.utils.chat.ChatPatternListener;
+import net.minecraft.text.Text;
+
+import java.util.regex.Matcher;
+
+public abstract class SimpleChatFilter extends ChatPatternListener {
+ public SimpleChatFilter(String pattern) {
+ super(pattern);
+ }
+
+ @Override
+ protected final boolean onMatch(Text message, Matcher matcher) {
+ return true;
+ }
+}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilter.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilter.java
new file mode 100644
index 00000000..1961d78a
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/filters/TeleportPadFilter.java
@@ -0,0 +1,16 @@
+package me.xmrvizzy.skyblocker.skyblock.filters;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.utils.chat.ChatFilterResult;
+
+public class TeleportPadFilter extends SimpleChatFilter {
+ public TeleportPadFilter() {
+ super("^(Warped from the .* Teleport Pad to the .* Teleport Pad!" +
+ "|This Teleport Pad does not have a destination set!)$");
+ }
+
+ @Override
+ public ChatFilterResult state() {
+ return SkyblockerConfig.get().messages.hideTeleportPad;
+ }
+} \ No newline at end of file
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java
index d05e5cb8..a6412cf7 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java
@@ -1,6 +1,5 @@
package me.xmrvizzy.skyblocker.skyblock.item;
-import com.google.gson.Gson;
import me.xmrvizzy.skyblocker.skyblock.itemlist.ItemRegistry;
import me.xmrvizzy.skyblocker.utils.Utils;
import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper;
@@ -20,9 +19,8 @@ public class WikiLookup {
public static KeyBinding wikiLookup;
static final MinecraftClient client = MinecraftClient.getInstance();
static String id;
- public static Gson gson = new Gson();
- public static void init(){
+ public static void init() {
wikiLookup = KeyBindingHelper.registerKeyBinding(new KeyBinding(
"key.wikiLookup",
InputUtil.Type.KEYSYM,
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/EffigyWaypoints.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/EffigyWaypoints.java
index 7376c896..1bd31653 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/EffigyWaypoints.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/EffigyWaypoints.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.skyblock.rift;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
import me.xmrvizzy.skyblocker.utils.Utils;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayerEntity;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/HealingMelonIndicator.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/HealingMelonIndicator.java
index aa730c31..b547ebb5 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/HealingMelonIndicator.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/HealingMelonIndicator.java
@@ -1,10 +1,10 @@
package me.xmrvizzy.skyblocker.skyblock.rift;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
import me.xmrvizzy.skyblocker.utils.Utils;
-import me.xmrvizzy.skyblocker.utils.title.Title;
-import me.xmrvizzy.skyblocker.utils.title.TitleContainer;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
+import me.xmrvizzy.skyblocker.utils.render.title.Title;
+import me.xmrvizzy.skyblocker.utils.render.title.TitleContainer;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayerEntity;
import net.minecraft.util.Formatting;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/ManiaIndicator.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/ManiaIndicator.java
index 38f6b018..16ab250a 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/ManiaIndicator.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/ManiaIndicator.java
@@ -1,11 +1,11 @@
package me.xmrvizzy.skyblocker.skyblock.rift;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
import me.xmrvizzy.skyblocker.utils.SlayerUtils;
import me.xmrvizzy.skyblocker.utils.Utils;
-import me.xmrvizzy.skyblocker.utils.title.Title;
-import me.xmrvizzy.skyblocker.utils.title.TitleContainer;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
+import me.xmrvizzy.skyblocker.utils.render.title.Title;
+import me.xmrvizzy.skyblocker.utils.render.title.TitleContainer;
import net.minecraft.block.Blocks;
import net.minecraft.client.MinecraftClient;
import net.minecraft.entity.Entity;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/MirrorverseWaypoints.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/MirrorverseWaypoints.java
index 32551179..d59745d8 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/MirrorverseWaypoints.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/MirrorverseWaypoints.java
@@ -5,8 +5,8 @@ import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import me.xmrvizzy.skyblocker.SkyblockerMod;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
import me.xmrvizzy.skyblocker.utils.Utils;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext;
import net.minecraft.client.MinecraftClient;
import net.minecraft.util.DyeColor;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/StakeIndicator.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/StakeIndicator.java
index 90fc436d..1d969514 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/StakeIndicator.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/StakeIndicator.java
@@ -1,17 +1,16 @@
package me.xmrvizzy.skyblocker.skyblock.rift;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
import me.xmrvizzy.skyblocker.utils.SlayerUtils;
import me.xmrvizzy.skyblocker.utils.Utils;
-import me.xmrvizzy.skyblocker.utils.title.Title;
-import me.xmrvizzy.skyblocker.utils.title.TitleContainer;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
+import me.xmrvizzy.skyblocker.utils.render.title.Title;
+import me.xmrvizzy.skyblocker.utils.render.title.TitleContainer;
import net.minecraft.entity.Entity;
-import net.minecraft.text.Text;
import net.minecraft.util.Formatting;
public class StakeIndicator {
- private static final Title title = new Title("skyblocker.rift.stakeNow",Formatting.RED);
+ private static final Title title = new Title("skyblocker.rift.stakeNow", Formatting.RED);
protected static void updateStake() {
if (!SkyblockerConfig.get().slayer.vampireSlayer.enableSteakStakeIndicator || !Utils.isOnSkyblock() || !Utils.isInTheRift() || !Utils.getLocation().contains("Stillgore Château") || !SlayerUtils.isInSlayer()) {
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/TwinClawsIndicator.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/TwinClawsIndicator.java
index f36b97df..e141b6a8 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/TwinClawsIndicator.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/rift/TwinClawsIndicator.java
@@ -2,17 +2,16 @@ package me.xmrvizzy.skyblocker.skyblock.rift;
import me.xmrvizzy.skyblocker.SkyblockerMod;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.RenderHelper;
import me.xmrvizzy.skyblocker.utils.SlayerUtils;
import me.xmrvizzy.skyblocker.utils.Utils;
-import me.xmrvizzy.skyblocker.utils.title.Title;
-import me.xmrvizzy.skyblocker.utils.title.TitleContainer;
+import me.xmrvizzy.skyblocker.utils.render.RenderHelper;
+import me.xmrvizzy.skyblocker.utils.render.title.Title;
+import me.xmrvizzy.skyblocker.utils.render.title.TitleContainer;
import net.minecraft.entity.Entity;
-import net.minecraft.text.Text;
import net.minecraft.util.Formatting;
public class TwinClawsIndicator {
- private static final Title title = new Title("skyblocker.rift.iceNow",Formatting.AQUA);
+ private static final Title title = new Title("skyblocker.rift.iceNow", Formatting.AQUA);
private static boolean scheduled = false;
protected static void updateIce() {
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/shortcut/Shortcuts.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/shortcut/Shortcuts.java
index 36ff98c9..89329c6c 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/shortcut/Shortcuts.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/shortcut/Shortcuts.java
@@ -7,7 +7,7 @@ import com.mojang.brigadier.CommandDispatcher;
import com.mojang.brigadier.arguments.StringArgumentType;
import me.xmrvizzy.skyblocker.SkyblockerMod;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-import me.xmrvizzy.skyblocker.utils.Scheduler;
+import me.xmrvizzy.skyblocker.utils.scheduler.Scheduler;
import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback;
import net.fabricmc.fabric.api.client.command.v2.FabricClientCommandSource;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
@@ -103,6 +103,7 @@ public class Shortcuts {
commands.put("/vp", "/visit portalhub");
}
+ @SuppressWarnings("unused")
private static void registerMoreDefaultShortcuts() {
// Combat
commands.put("/spider", "/warp spider");