diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java b/src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java index 5cfacdc..07c6995 100644 --- a/src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java +++ b/src/main/java/org/chrisoft/trashyaddon/modules/AutoTrade.java @@ -15,6 +15,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.item.Items; import net.minecraft.network.packet.s2c.play.ScreenHandlerSlotUpdateS2CPacket; import net.minecraft.network.packet.s2c.play.SetTradeOffersS2CPacket; +import net.minecraft.screen.MerchantScreenHandler; import net.minecraft.village.TradeOffer; import net.minecraft.village.TradeOfferList; import org.chrisoft.trashyaddon.mixin.MerchantScreenAccessor; @@ -124,7 +125,7 @@ public class AutoTrade extends Module { .name("Interaction Rate") .description("Number of ticks between interactions.") .min(0) - .max(10) + .max(20) .build() ); private final Setting<Boolean> autoClose = sgGeneral.add(new BoolSetting.Builder() @@ -134,7 +135,7 @@ public class AutoTrade extends Module { ); private final Setting<Boolean> logSummary = sgGeneral.add(new BoolSetting.Builder() .name("Log Summary") - .description("Give a summary of what has been traded once it finishes trading.") + .description("Give a summary of what has been traded once trading is complete.") .build() ); @@ -270,7 +271,10 @@ public class AutoTrade extends Module { endTrading(); return; } - if (waitState != WaitState.None && currentOffer < offers.size() && offers.get(currentOffer).isDisabled()) { + if (waitState != WaitState.None && currentOffer < offers.size() && (offers.get(currentOffer).isDisabled() || + screen.getScreenHandler().slots.get(0).getStack().getCount() < offers.get(currentOffer).getAdjustedFirstBuyItem().getCount())) { + // the WaitingForInventoryUpdate state is mostly useless because ScreenHandlerSlotUpdateS2CPacket + // isn't sent after the shift-click... finalizeCurrentTrade(); waitState = WaitState.None; ticksRemaining = interactionRate.get(); |