diff options
author | nmccullagh <narhanael64@gmail.com> | 2024-07-21 22:51:47 +0100 |
---|---|---|
committer | nmccullagh <narhanael64@gmail.com> | 2024-07-21 22:51:47 +0100 |
commit | 275c82b5957aec8890ccf4399e2ac50a58957758 (patch) | |
tree | 925afcf9bcf8532220dd65357abd07ae5360a1b2 /src/main/java | |
parent | 6541bb6aa43a7141ac259ee34a597891d6a45689 (diff) | |
download | Skyblocker-275c82b5957aec8890ccf4399e2ac50a58957758.tar.gz Skyblocker-275c82b5957aec8890ccf4399e2ac50a58957758.tar.bz2 Skyblocker-275c82b5957aec8890ccf4399e2ac50a58957758.zip |
don't mutate itemstack map
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/itemLoaders/ItemLoader.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/itemLoaders/ItemLoader.java b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/itemLoaders/ItemLoader.java index 11280af1..2024bf96 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/itemLoaders/ItemLoader.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/profileviewer/inventory/itemLoaders/ItemLoader.java @@ -54,7 +54,14 @@ public class ItemLoader { } Identifier itemId = identifierFromOldId(containerContent.getCompound(i).getInt("id"), containerContent.getCompound(i).getInt("Damage")); - ItemStack stack = itemId.toString().equals("minecraft:air") ? getItemStack(internalName) : new ItemStack(Registries.ITEM.get(itemId)); + ItemStack stack; + + if (itemId.toString().equals("minecraft:air")) { + ItemStack itemStack = getItemStack(internalName); + stack = itemStack != null ? itemStack.copy() : null; + } else { + stack = new ItemStack(Registries.ITEM.get(itemId)); + } if (stack == null || stack.isEmpty() || stack.getItem().equals(Ico.BARRIER.getItem())) { // Last ditch effort to find item in NEU REPO @@ -64,6 +71,7 @@ public class ItemLoader { .findFirst() .map(NEUItem::getSkyblockItemId) .map(ItemRepository::getItemStack) + .map(ItemStack::copy) .orElse(Ico.BARRIER.copy()); |