aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/mixins/HandledScreenMixin.java
diff options
context:
space:
mode:
authorAaron <51387595+AzureAaron@users.noreply.github.com>2024-06-16 16:08:01 -0400
committerAaron <51387595+AzureAaron@users.noreply.github.com>2024-06-18 16:54:00 -0400
commitcdfcdf9d5e9cbdad30c591d1b58d4259a1fa3a38 (patch)
tree2132e766de013b45b4cedcb33c0c32a73d832ed9 /src/main/java/de/hysky/skyblocker/mixins/HandledScreenMixin.java
parent163905a63d840a4dd17b29bb53c6e7be0bf55c03 (diff)
downloadSkyblocker-cdfcdf9d5e9cbdad30c591d1b58d4259a1fa3a38.tar.gz
Skyblocker-cdfcdf9d5e9cbdad30c591d1b58d4259a1fa3a38.tar.bz2
Skyblocker-cdfcdf9d5e9cbdad30c591d1b58d4259a1fa3a38.zip
Track Museum Item Donations
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/mixins/HandledScreenMixin.java')
-rw-r--r--src/main/java/de/hysky/skyblocker/mixins/HandledScreenMixin.java29
1 files changed, 20 insertions, 9 deletions
diff --git a/src/main/java/de/hysky/skyblocker/mixins/HandledScreenMixin.java b/src/main/java/de/hysky/skyblocker/mixins/HandledScreenMixin.java
index a7685ffc..7fdb5738 100644
--- a/src/main/java/de/hysky/skyblocker/mixins/HandledScreenMixin.java
+++ b/src/main/java/de/hysky/skyblocker/mixins/HandledScreenMixin.java
@@ -11,6 +11,7 @@ import de.hysky.skyblocker.skyblock.experiment.UltrasequencerSolver;
import de.hysky.skyblocker.skyblock.garden.VisitorHelper;
import de.hysky.skyblocker.skyblock.item.ItemProtection;
import de.hysky.skyblocker.skyblock.item.ItemRarityBackgrounds;
+import de.hysky.skyblocker.skyblock.item.MuseumItemCache;
import de.hysky.skyblocker.skyblock.item.WikiLookup;
import de.hysky.skyblocker.skyblock.item.slottext.SlotText;
import de.hysky.skyblocker.skyblock.item.slottext.SlotTextManager;
@@ -248,17 +249,27 @@ public abstract class HandledScreenMixin<T extends ScreenHandler> extends Screen
ci.cancel();
return;
}
- if (this.handler instanceof GenericContainerScreenHandler genericContainerScreenHandler && genericContainerScreenHandler.getRows() == 6) {
- VisitorHelper.onSlotClick(slot, slotId, title, genericContainerScreenHandler.getSlot(13).getStack());
-
- // Prevent selling to NPC shops
- ItemStack sellStack = this.handler.slots.get(49).getStack();
- if (sellStack.getName().getString().equals("Sell Item") || ItemUtils.getLoreLineIf(sellStack, text -> text.contains("buyback")) != null) {
- if (slotId != 49 && ItemProtection.isItemProtected(stack)) {
- ci.cancel();
- return;
+
+ switch (this.handler) {
+ case GenericContainerScreenHandler genericContainerScreenHandler when genericContainerScreenHandler.getRows() == 6 -> {
+ VisitorHelper.onSlotClick(slot, slotId, title, genericContainerScreenHandler.getSlot(13).getStack());
+
+ // Prevent selling to NPC shops
+ ItemStack sellStack = this.handler.slots.get(49).getStack();
+ if (sellStack.getName().getString().equals("Sell Item") || ItemUtils.getLoreLineIf(sellStack, text -> text.contains("buyback")) != null) {
+ if (slotId != 49 && ItemProtection.isItemProtected(stack)) {
+ ci.cancel();
+ return;
+ }
}
}
+
+ case GenericContainerScreenHandler genericContainerScreenHandler when title.equals(MuseumItemCache.DONATION_CONFIRMATION_SCREEN_TITLE) -> {
+ //Museum Item Cache donation tracking
+ MuseumItemCache.handleClick(slot, slotId, genericContainerScreenHandler.slots);
+ }
+
+ case null, default -> {}
}
if (currentSolver != null) {