aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java
diff options
context:
space:
mode:
authorAaron <51387595+AzureAaron@users.noreply.github.com>2023-10-09 23:07:23 -0400
committerGitHub <noreply@github.com>2023-10-09 23:07:23 -0400
commita373db64a319c263b2b4c1d07084fa18bd12353b (patch)
tree0f918dd1c05c42616797e47e165e2385f0fca65b /src/main/java/me/xmrvizzy/skyblocker/skyblock/experiment/SuperpairsSolver.java
parent2315b90da8117f28f66348927afdb621ee4fc815 (diff)
parentf346617971b20f6be373411ce5433487cd8d82c2 (diff)
downloadSkyblocker-a373db64a319c263b2b4c1d07084fa18bd12353b.tar.gz
Skyblocker-a373db64a319c263b2b4c1d07084fa18bd12353b.tar.bz2
Skyblocker-a373db64a319c263b2b4c1d07084fa18bd12353b.zip
Merge pull request #348 from LifeIsAParadox/change-packageprefix
me.xrmvizzy -> de.hysky
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;
- }
-}