From 263695053d997e75ec4a10f0de3ea0cb8a0de80c Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Fri, 6 Sep 2024 23:02:34 -0400 Subject: 1.21 ... maybe (still testing) Special thanks to Xenapte for the 1.20.6 patch. --- .../org/chrisoft/trashyaddon/modules/AcceptablePrices.java | 2 +- .../java/org/chrisoft/trashyaddon/modules/AutoTrade.java | 14 ++++++++------ .../chrisoft/trashyaddon/modules/MatchedItemHighlight.java | 4 ++-- 3 files changed, 11 insertions(+), 9 deletions(-) (limited to 'src/main/java/org/chrisoft/trashyaddon/modules') diff --git a/src/main/java/org/chrisoft/trashyaddon/modules/AcceptablePrices.java b/src/main/java/org/chrisoft/trashyaddon/modules/AcceptablePrices.java index 4809640..624a47f 100644 --- a/src/main/java/org/chrisoft/trashyaddon/modules/AcceptablePrices.java +++ b/src/main/java/org/chrisoft/trashyaddon/modules/AcceptablePrices.java @@ -76,7 +76,7 @@ public class AcceptablePrices implements ICopyable, ISerializa for (int i = 0; i < l.size(); ++i) { NbtCompound a = l.getCompound(i); String item_id = a.getString("Item"); - Item item = Registries.ITEM.get(new Identifier(item_id)); + Item item = Registries.ITEM.get(Identifier.of(item_id)); int price = a.getInt("Price"); ret.put(item, price); } diff --git a/src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java b/src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java index dfb343d..a062b38 100644 --- a/src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java +++ b/src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java @@ -39,7 +39,7 @@ public class AutoTrade extends Module { Items.ROTTEN_FLESH, Items.GOLD_INGOT, Items.RABBIT_FOOT, - Items.SCUTE, + Items.TURTLE_SCUTE, Items.GLASS_BOTTLE, Items.NETHER_WART, Items.WHEAT, @@ -184,11 +184,11 @@ public class AutoTrade extends Module { private boolean isOfferEligible(TradeOffer o) { // I don't give a SHIT to trades that use the second slot // well actually I do, but I don't need THAT many enchanted books... - if (!o.getSecondBuyItem().getItem().equals(Items.AIR)) + if (o.getSecondBuyItem().isPresent() && !o.getSecondBuyItem().get().equals(Items.AIR)) return false; if (o.isDisabled()) return false; - ItemStack mbuy = o.getAdjustedFirstBuyItem(); + ItemStack mbuy = o.getDisplayedFirstBuyItem(); ItemStack msell = o.getSellItem(); List sells = sellingEnabled.get() ? this.sellsSetting.get() : List.of(); List buys = buyingEnabled.get() ? this.buysSetting.get() : List.of(); @@ -223,7 +223,7 @@ public class AutoTrade extends Module { ticksRemaining = -0xdead; TradeOffer o = offers.get(currentOffer); Item tradedItem = o.getSellItem().getItem().equals(Items.EMERALD) ? - o.getAdjustedFirstBuyItem().getItem() : o.getSellItem().getItem(); + o.getDisplayedFirstBuyItem().getItem() : o.getSellItem().getItem(); countBefore = screen.getScreenHandler().slots.stream() .map(slot -> slot.getStack()) .filter(s -> s.getItem().equals(tradedItem)) @@ -236,7 +236,7 @@ public class AutoTrade extends Module { private void finalizeCurrentTrade() { TradeOffer o = offers.get(currentOffer); Item tradedItem = o.getSellItem().getItem().equals(Items.EMERALD) ? - o.getAdjustedFirstBuyItem().getItem() : o.getSellItem().getItem(); + o.getDisplayedFirstBuyItem().getItem() : o.getSellItem().getItem(); countAfter = screen.getScreenHandler().slots.stream() .map(slot -> slot.getStack()) .filter(s -> s.getItem().equals(tradedItem)) @@ -265,6 +265,7 @@ public class AutoTrade extends Module { first = false; } info(f.toString()); + f.close(); } if (!itemsBought.isEmpty()) { Formatter f = new Formatter(); @@ -275,6 +276,7 @@ public class AutoTrade extends Module { first = false; } info(f.toString()); + f.close(); } } if (autoClose.get() && (!itemsBought.isEmpty() || !itemsSold.isEmpty())) @@ -293,7 +295,7 @@ public class AutoTrade extends Module { return; } if (waitState != WaitState.None && currentOffer < offers.size() && (offers.get(currentOffer).isDisabled() || - screen.getScreenHandler().slots.get(0).getStack().getCount() < offers.get(currentOffer).getAdjustedFirstBuyItem().getCount())) { + screen.getScreenHandler().slots.get(0).getStack().getCount() < offers.get(currentOffer).getDisplayedFirstBuyItem().getCount())) { // the WaitingForInventoryUpdate state is mostly useless because ScreenHandlerSlotUpdateS2CPacket // isn't sent after the shift-click... finalizeCurrentTrade(); diff --git a/src/main/java/org/chrisoft/trashyaddon/modules/MatchedItemHighlight.java b/src/main/java/org/chrisoft/trashyaddon/modules/MatchedItemHighlight.java index 41910c7..2d5be7e 100644 --- a/src/main/java/org/chrisoft/trashyaddon/modules/MatchedItemHighlight.java +++ b/src/main/java/org/chrisoft/trashyaddon/modules/MatchedItemHighlight.java @@ -48,8 +48,8 @@ public class MatchedItemHighlight extends Module { for (int j = firstInventorySlot; j < screenHandler.slots.size(); ++ j) { if (screenHandler.getSlot(j).getStack().isEmpty()) continue; - if (ItemStack.canCombine(screenHandler.getSlot(i).getStack(), screenHandler.getSlot(j).getStack()) || - ItemStack.canCombine(screenHandler.getSlot(j).getStack(), screenHandler.getSlot(i).getStack())) { + if (ItemStack.areItemsAndComponentsEqual(screenHandler.getSlot(i).getStack(), screenHandler.getSlot(j).getStack()) || + ItemStack.areItemsAndComponentsEqual(screenHandler.getSlot(j).getStack(), screenHandler.getSlot(i).getStack())) { Color c; if (!slotColors.get(i).equals(transparent)) c = new Color(slotColors.get(i)); -- cgit v1.2.3