From f9d3647db1a6c8b715d50d39a5141b006f5f3840 Mon Sep 17 00:00:00 2001 From: Jordan Atwood Date: Sat, 9 May 2020 22:47:29 -0700 Subject: [PATCH] itemmanager: Canonicalize price lookup item IDs --- .../java/net/runelite/client/game/ItemManager.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/game/ItemManager.java b/runelite-client/src/main/java/net/runelite/client/game/ItemManager.java index 58415a17c2..cb9cf32afd 100644 --- a/runelite-client/src/main/java/net/runelite/client/game/ItemManager.java +++ b/runelite-client/src/main/java/net/runelite/client/game/ItemManager.java @@ -290,18 +290,20 @@ public class ItemManager */ public int getItemPrice(int itemID, boolean ignoreUntradeableMap) { - if (itemID == ItemID.COINS_995) + final int realId = canonicalize(itemID); + + if (realId == ItemID.COINS_995) { return 1; } - if (itemID == ItemID.PLATINUM_TOKEN) + if (realId == ItemID.PLATINUM_TOKEN) { return 1000; } if (!ignoreUntradeableMap) { - UntradeableItemMapping p = UntradeableItemMapping.map(ItemVariationMapping.map(itemID)); + UntradeableItemMapping p = UntradeableItemMapping.map(ItemVariationMapping.map(realId)); if (p != null) { return getItemPrice(p.getPriceID()) * p.getQuantity(); @@ -309,7 +311,7 @@ public class ItemManager } int price = 0; - for (int mappedID : ItemMapping.map(itemID)) + for (int mappedID : ItemMapping.map(realId)) { ItemPrice ip = itemPrices.get(mappedID); if (ip != null)