From a076740a9f02e8d9a67e530585b65def94d6b9f4 Mon Sep 17 00:00:00 2001 From: Ron Young Date: Thu, 18 Oct 2018 10:19:59 -0500 Subject: [PATCH] Relate worn weight reducing items to their inventory version --- .../net/runelite/client/game/ItemManager.java | 66 ++++++++++++++++++- 1 file changed, 65 insertions(+), 1 deletion(-) 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 56c28d5bb4..5c3f10c002 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 @@ -48,6 +48,7 @@ import static net.runelite.api.Constants.CLIENT_DEFAULT_ZOOM; import net.runelite.api.GameState; import net.runelite.api.ItemComposition; import net.runelite.api.ItemID; +import static net.runelite.api.ItemID.*; import net.runelite.api.SpritePixels; import net.runelite.api.events.GameStateChanged; import net.runelite.client.callback.ClientThread; @@ -84,6 +85,69 @@ public class ItemManager private final LoadingCache itemCompositions; private final LoadingCache itemOutlines; + // Worn items with weight reducing property have a different worn and inventory ItemID + private static final ImmutableMap WORN_ITEMS = ImmutableMap.builder(). + put(BOOTS_OF_LIGHTNESS_89, BOOTS_OF_LIGHTNESS). + put(PENANCE_GLOVES_10554, PENANCE_GLOVES). + + put(GRACEFUL_HOOD_11851, GRACEFUL_HOOD). + put(GRACEFUL_CAPE_11853, GRACEFUL_CAPE). + put(GRACEFUL_TOP_11855, GRACEFUL_TOP). + put(GRACEFUL_LEGS_11857, GRACEFUL_LEGS). + put(GRACEFUL_GLOVES_11859, GRACEFUL_GLOVES). + put(GRACEFUL_BOOTS_11861, GRACEFUL_BOOTS). + put(GRACEFUL_HOOD_13580, GRACEFUL_HOOD_13579). + put(GRACEFUL_CAPE_13582, GRACEFUL_CAPE_13581). + put(GRACEFUL_TOP_13584, GRACEFUL_TOP_13583). + put(GRACEFUL_LEGS_13586, GRACEFUL_LEGS_13585). + put(GRACEFUL_GLOVES_13588, GRACEFUL_GLOVES_13587). + put(GRACEFUL_BOOTS_13590, GRACEFUL_BOOTS_13589). + put(GRACEFUL_HOOD_13592, GRACEFUL_HOOD_13591). + put(GRACEFUL_CAPE_13594, GRACEFUL_CAPE_13593). + put(GRACEFUL_TOP_13596, GRACEFUL_TOP_13595). + put(GRACEFUL_LEGS_13598, GRACEFUL_LEGS_13597). + put(GRACEFUL_GLOVES_13600, GRACEFUL_GLOVES_13599). + put(GRACEFUL_BOOTS_13602, GRACEFUL_BOOTS_13601). + put(GRACEFUL_HOOD_13604, GRACEFUL_HOOD_13603). + put(GRACEFUL_CAPE_13606, GRACEFUL_CAPE_13605). + put(GRACEFUL_TOP_13608, GRACEFUL_TOP_13607). + put(GRACEFUL_LEGS_13610, GRACEFUL_LEGS_13609). + put(GRACEFUL_GLOVES_13612, GRACEFUL_GLOVES_13611). + put(GRACEFUL_BOOTS_13614, GRACEFUL_BOOTS_13613). + put(GRACEFUL_HOOD_13616, GRACEFUL_HOOD_13615). + put(GRACEFUL_CAPE_13618, GRACEFUL_CAPE_13617). + put(GRACEFUL_TOP_13620, GRACEFUL_TOP_13619). + put(GRACEFUL_LEGS_13622, GRACEFUL_LEGS_13621). + put(GRACEFUL_GLOVES_13624, GRACEFUL_GLOVES_13623). + put(GRACEFUL_BOOTS_13626, GRACEFUL_BOOTS_13625). + put(GRACEFUL_HOOD_13628, GRACEFUL_HOOD_13627). + put(GRACEFUL_CAPE_13630, GRACEFUL_CAPE_13629). + put(GRACEFUL_TOP_13632, GRACEFUL_TOP_13631). + put(GRACEFUL_LEGS_13634, GRACEFUL_LEGS_13633). + put(GRACEFUL_GLOVES_13636, GRACEFUL_GLOVES_13635). + put(GRACEFUL_BOOTS_13638, GRACEFUL_BOOTS_13637). + put(GRACEFUL_HOOD_13668, GRACEFUL_HOOD_13667). + put(GRACEFUL_CAPE_13670, GRACEFUL_CAPE_13669). + put(GRACEFUL_TOP_13672, GRACEFUL_TOP_13671). + put(GRACEFUL_LEGS_13674, GRACEFUL_LEGS_13673). + put(GRACEFUL_GLOVES_13676, GRACEFUL_GLOVES_13675). + put(GRACEFUL_BOOTS_13678, GRACEFUL_BOOTS_13677). + put(GRACEFUL_HOOD_21063, GRACEFUL_HOOD_21061). + put(GRACEFUL_CAPE_21066, GRACEFUL_CAPE_21064). + put(GRACEFUL_TOP_21069, GRACEFUL_TOP_21067). + put(GRACEFUL_LEGS_21072, GRACEFUL_LEGS_21070). + put(GRACEFUL_GLOVES_21075, GRACEFUL_GLOVES_21073). + put(GRACEFUL_BOOTS_21078, GRACEFUL_BOOTS_21076). + + put(MAX_CAPE_13342, MAX_CAPE). + + put(SPOTTED_CAPE_10073, SPOTTED_CAPE). + put(SPOTTIER_CAPE_10074, SPOTTIER_CAPE). + + put(AGILITY_CAPET_13341, AGILITY_CAPET). + put(AGILITY_CAPE_13340, AGILITY_CAPE). + build(); + @Inject public ItemManager(Client client, ScheduledExecutorService executor, ClientThread clientThread) { @@ -243,7 +307,7 @@ public class ItemManager return itemComposition.getPlaceholderId(); } - return itemID; + return WORN_ITEMS.getOrDefault(itemID, itemID); } /**