From 91a2bb9068a142c91e935f687885e8b1643bc934 Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Sat, 31 Aug 2024 21:06:27 -0400 Subject: Fix item lookup --- .../skyblocker/skyblock/bazaar/BazaarHelper.java | 4 ---- .../hysky/skyblocker/skyblock/item/ItemPrice.java | 27 ++++++++++++++++++---- .../skyblock/searchoverlay/SearchOverManager.java | 2 +- 3 files changed, 23 insertions(+), 10 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/de/hysky/skyblocker/skyblock/bazaar/BazaarHelper.java b/src/main/java/de/hysky/skyblocker/skyblock/bazaar/BazaarHelper.java index 5e4c9fdc..7fcbfac5 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/bazaar/BazaarHelper.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/bazaar/BazaarHelper.java @@ -17,7 +17,6 @@ import org.jetbrains.annotations.Nullable; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; -import java.util.stream.Stream; public class BazaarHelper extends SimpleSlotTextAdder { private static final Pattern FILLED_PATTERN = Pattern.compile("Filled: \\S+ \\(?([\\d.]+)%\\)?!?"); @@ -29,9 +28,6 @@ public class BazaarHelper extends SimpleSlotTextAdder { super("(?:Co-op|Your) Bazaar Orders"); } - @Init - public static void init() {} - @Override public boolean isEnabled() { return SkyblockerConfigManager.get().helpers.bazaar.enableBazaarHelper; diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/ItemPrice.java b/src/main/java/de/hysky/skyblocker/skyblock/item/ItemPrice.java index 82a6d785..74acb0c3 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/ItemPrice.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/ItemPrice.java @@ -4,6 +4,7 @@ import de.hysky.skyblocker.skyblock.item.tooltip.ItemTooltip; import de.hysky.skyblocker.skyblock.item.tooltip.info.DataTooltipInfoType; import de.hysky.skyblocker.skyblock.item.tooltip.info.TooltipInfoType; import de.hysky.skyblocker.skyblock.itemlist.ItemRepository; +import de.hysky.skyblocker.skyblock.searchoverlay.SearchOverManager; import de.hysky.skyblocker.utils.Constants; import de.hysky.skyblocker.utils.scheduler.MessageScheduler; import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; @@ -31,13 +32,29 @@ public class ItemPrice { "key.categories.skyblocker" )); + public static void init() {} + public static void itemPriceLookup(ClientPlayerEntity player, @NotNull Slot slot) { - ItemStack stack = ItemRepository.getItemStack(slot.getStack().getNeuName()); - if (stack != null && !stack.isEmpty()) { - String itemName = Formatting.strip(stack.getName().getString()).replaceFirst("\\[Lvl \\d+ ➡ \\d+] ", ""); - if (TooltipInfoType.BAZAAR.getData() != null) { + ItemStack stack = slot.getStack(); + String skyblockApiId = stack.getSkyblockApiId(); + ItemStack neuStack = ItemRepository.getItemStack(stack.getNeuName()); + if (neuStack != null && !neuStack.isEmpty()) { + String itemName = Formatting.strip(neuStack.getName().getString()); + + // Handle Pets + if (stack.getSkyblockId().equals("PET")) { + itemName = itemName.replaceFirst("\\[Lvl \\d+ ➡ \\d+] ", ""); + } + + // Handle Enchanted Books + if (itemName.equals("Enchanted Book")) { + itemName = SearchOverManager.capitalizeFully(skyblockApiId.replace("ENCHANTMENT_", "").replaceAll("_\\d+", "")); + } + + // Search up the item in the bazaar or auction house + if (TooltipInfoType.BAZAAR.hasOrNullWarning(skyblockApiId)) { MessageScheduler.INSTANCE.sendMessageAfterCooldown("/bz " + itemName); - } else if (TooltipInfoType.LOWEST_BINS.getData() != null) { + } else if (TooltipInfoType.LOWEST_BINS.hasOrNullWarning(skyblockApiId)) { MessageScheduler.INSTANCE.sendMessageAfterCooldown("/ahsearch " + itemName); } } else { diff --git a/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java b/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java index 905fc062..f3c36d8e 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/searchoverlay/SearchOverManager.java @@ -183,7 +183,7 @@ public class SearchOverManager { * * @param str string to capitalize */ - private static String capitalizeFully(String str) { + public static String capitalizeFully(String str) { if (str == null || str.isEmpty()) { return str; } -- cgit