diff options
author | esteban4567890 <wt3dkilgg@mozmail.com> | 2024-02-09 13:36:41 +0100 |
---|---|---|
committer | esteban4567890 <wt3dkilgg@mozmail.com> | 2024-02-09 13:36:41 +0100 |
commit | b90bdd7851a166b75b32bca3bf4ea56d5537f665 (patch) | |
tree | c5e8b7fd4f02ba3081982131607958a0c8874c06 /src/main/java | |
parent | 8c65915417c4d994b5febd766aa9a7f508881407 (diff) | |
download | Skyblocker-b90bdd7851a166b75b32bca3bf4ea56d5537f665.tar.gz Skyblocker-b90bdd7851a166b75b32bca3bf4ea56d5537f665.tar.bz2 Skyblocker-b90bdd7851a166b75b32bca3bf4ea56d5537f665.zip |
Fixed NumberFormatException with 4 digit stack
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/garden/VisitorHelper.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/garden/VisitorHelper.java b/src/main/java/de/hysky/skyblocker/skyblock/garden/VisitorHelper.java index 2c7ede30..c4e1468d 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/garden/VisitorHelper.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/garden/VisitorHelper.java @@ -3,6 +3,11 @@ package de.hysky.skyblocker.skyblock.garden; import java.util.HashMap; import java.util.Map; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.text.NumberFormat; + import de.hysky.skyblocker.skyblock.itemlist.ItemRepository; import de.hysky.skyblocker.utils.NEURepoManager; import io.github.moulberry.repo.data.NEUItem; @@ -18,6 +23,8 @@ import net.minecraft.util.Formatting; //TODO: check inventory items, sum all repeated items into one public class VisitorHelper { + private static final Logger LOGGER = LoggerFactory.getLogger("Skyblocker Visitor Helper"); + private static final Map<String, Map<String, Integer>> itemMap = new HashMap<>(); private static final Map<String, NEUItem> itemCache = new HashMap<>(); private static final int TEXT_START_X = 3; @@ -92,7 +99,13 @@ public class VisitorHelper { var split = mutableText.getString().split(" x"); var itemName = split[0].trim(); if (!itemName.isEmpty()) { - var amount = split.length == 2 ? Integer.parseInt(split[1].trim()) : 1; + int amount = 1; + try { + amount = split.length == 2 ? NumberFormat.getInstance().parse(split[1].trim()).intValue() : 1; + } catch (Exception e) { + LOGGER.debug("Failed to parse amount for item: " + mutableText.getString()); + return; + } Map<String, Integer> nestedMap = itemMap.getOrDefault(title, new HashMap<>()); if (!nestedMap.containsKey(itemName)) { nestedMap.put(itemName, amount); |