aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java81
1 files changed, 0 insertions, 81 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java
deleted file mode 100644
index f329a395..00000000
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java
+++ /dev/null
@@ -1,81 +0,0 @@
-package me.xmrvizzy.skyblocker.skyblock.experiment;
-
-import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
-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;
-import net.minecraft.item.Items;
-
-import java.util.*;
-
-public class SuperpairsSolver extends ExperimentSolver {
- private int superpairsPrevClickedSlot;
- private ItemStack superpairsCurrentSlot;
- private final Set<Integer> superpairsDuplicatedSlots = new HashSet<>();
-
- public SuperpairsSolver() {
- super("^Superpairs \\(\\w+\\)$");
- }
-
- public void setSuperpairsPrevClickedSlot(int superpairsPrevClickedSlot) {
- this.superpairsPrevClickedSlot = superpairsPrevClickedSlot;
- }
-
- public void setSuperpairsCurrentSlot(ItemStack superpairsCurrentSlot) {
- this.superpairsCurrentSlot = superpairsCurrentSlot;
- }
-
- @Override
- protected boolean isEnabled(SkyblockerConfig.Experiments experimentsConfig) {
- return experimentsConfig.enableSuperpairsSolver;
- }
-
- @Override
- protected void start(GenericContainerScreen screen) {
- super.start(screen);
- setState(State.SHOW);
- }
-
- @Override
- protected void tick(Screen screen) {
- if (isEnabled() && screen instanceof GenericContainerScreen genericContainerScreen && genericContainerScreen.getTitle().getString().startsWith("Superpairs (")) {
- if (getState() == State.SHOW) {
- if (genericContainerScreen.getScreenHandler().getInventory().getStack(4).isOf(Items.CAULDRON)) {
- reset();
- } else if (getSlots().get(superpairsPrevClickedSlot) == null) {
- ItemStack itemStack = genericContainerScreen.getScreenHandler().getInventory().getStack(superpairsPrevClickedSlot);
- if (!(itemStack.isOf(Items.CYAN_STAINED_GLASS) || itemStack.isOf(Items.BLACK_STAINED_GLASS_PANE) || itemStack.isOf(Items.AIR))) {
- getSlots().entrySet().stream().filter((entry -> ItemStack.areEqual(entry.getValue(), itemStack))).findAny().ifPresent(entry -> superpairsDuplicatedSlots.add(entry.getKey()));
- getSlots().put(superpairsPrevClickedSlot, itemStack);
- superpairsCurrentSlot = itemStack;
- }
- }
- }
- } else {
- reset();
- }
- }
-
- @Override
- protected List<ColorHighlight> getColors(String[] groups, Map<Integer, ItemStack> displaySlots) {
- List<ColorHighlight> highlights = new ArrayList<>();
- if (getState() == State.SHOW) {
- for (Map.Entry<Integer, ItemStack> indexStack : displaySlots.entrySet()) {
- int index = indexStack.getKey();
- ItemStack displayStack = indexStack.getValue();
- ItemStack stack = getSlots().get(index);
- if (stack != null && !ItemStack.areEqual(stack, displayStack)) {
- if (ItemStack.areEqual(superpairsCurrentSlot, stack) && displayStack.getName().getString().equals("Click a second button!")) {
- highlights.add(ColorHighlight.green(index));
- } else if (superpairsDuplicatedSlots.contains(index)) {
- highlights.add(ColorHighlight.yellow(index));
- } else {
- highlights.add(ColorHighlight.red(index));
- }
- }
- }
- }
- return highlights;
- }
-}