aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy
diff options
context:
space:
mode:
authorExternalTime <84183548+ExternalTime@users.noreply.github.com>2021-10-10 21:41:58 +0200
committerExternalTime <84183548+ExternalTime@users.noreply.github.com>2021-10-10 21:41:58 +0200
commitd262e35832bec5ae33c19240204dd8490e4eef1e (patch)
tree32aaa7eea851c94771c01ecc0ec5a456228680b3 /src/main/java/me/xmrvizzy
parentd00f8821ffa1caf3a92851b52e669fe9dcbafc75 (diff)
downloadSkyblocker-d262e35832bec5ae33c19240204dd8490e4eef1e.tar.gz
Skyblocker-d262e35832bec5ae33c19240204dd8490e4eef1e.tar.bz2
Skyblocker-d262e35832bec5ae33c19240204dd8490e4eef1e.zip
Added solver for Starts With terminal
Diffstat (limited to 'src/main/java/me/xmrvizzy')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java1
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/container/ContainerSolverManager.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/StartsWithTerminal.java34
3 files changed, 37 insertions, 0 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
index 1427c4e4..dd5190e5 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
@@ -61,6 +61,7 @@ public class SkyblockerConfig implements ConfigData {
public static class Terminals {
public boolean solveColor = true;
public boolean solveOrder = true;
+ public boolean solveStartsWith = true;
}
public static class DwarvenMines {
diff --git a/src/main/java/me/xmrvizzy/skyblocker/container/ContainerSolverManager.java b/src/main/java/me/xmrvizzy/skyblocker/container/ContainerSolverManager.java
index 98f37b31..7dd34669 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/container/ContainerSolverManager.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/container/ContainerSolverManager.java
@@ -3,6 +3,7 @@ package me.xmrvizzy.skyblocker.container;
import com.mojang.blaze3d.systems.RenderSystem;
import me.xmrvizzy.skyblocker.skyblock.dungeon.terminal.ColorTerminal;
import me.xmrvizzy.skyblocker.skyblock.dungeon.terminal.OrderTerminal;
+import me.xmrvizzy.skyblocker.skyblock.dungeon.terminal.StartsWithTerminal;
import net.minecraft.client.gui.DrawableHelper;
import net.minecraft.client.gui.screen.ingame.GenericContainerScreen;
import net.minecraft.client.util.math.MatrixStack;
@@ -27,6 +28,7 @@ public class ContainerSolverManager extends DrawableHelper {
solvers = new ContainerSolver[]{
new ColorTerminal(),
new OrderTerminal(),
+ new StartsWithTerminal(),
};
}
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
new file mode 100644
index 00000000..7c56746f
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/terminal/StartsWithTerminal.java
@@ -0,0 +1,34 @@
+package me.xmrvizzy.skyblocker.skyblock.dungeon.terminal;
+
+import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
+import me.xmrvizzy.skyblocker.container.ColorHighlight;
+import me.xmrvizzy.skyblocker.container.ContainerSolver;
+import net.minecraft.item.ItemStack;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+public class StartsWithTerminal extends ContainerSolver {
+ public StartsWithTerminal() {
+ super("^What starts with: '([A-Z])'\\?$");
+ }
+
+ @Override
+ public boolean isEnabled() {
+ return SkyblockerConfig.get().locations.dungeons.terminals.solveStartsWith;
+ }
+
+ @Override
+ public List<ColorHighlight> getColors(String[] groups, Map<Integer, ItemStack> slots) {
+ trimEdges(slots, 6);
+ String prefix = groups[0];
+ List<ColorHighlight> highlights = new ArrayList<>();
+ for(Map.Entry<Integer, ItemStack> slot : slots.entrySet()) {
+ ItemStack stack = slot.getValue();
+ if(!stack.hasEnchantments() && stack.getName().getString().startsWith(prefix))
+ highlights.add(new ColorHighlight(slot.getKey(), GREEN_HIGHLIGHT));
+ }
+ return highlights;
+ }
+} \ No newline at end of file