From 9458bd8d656beae0309d0995c591575b9b60607c Mon Sep 17 00:00:00 2001 From: Jordan Hanley Date: Sat, 22 Jan 2022 01:12:30 -0500 Subject: [PATCH] item identification: add jewellery Co-authored-by: Adam --- .../ItemIdentification.java | 75 ++++++++++++++++++- .../ItemIdentificationConfig.java | 22 ++++++ 2 files changed, 95 insertions(+), 2 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/itemidentification/ItemIdentification.java b/runelite-client/src/main/java/net/runelite/client/plugins/itemidentification/ItemIdentification.java index 044aeeca8a..70b018c286 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/itemidentification/ItemIdentification.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/itemidentification/ItemIdentification.java @@ -427,7 +427,76 @@ enum ItemIdentification ZUL_ANDRA_TELEPORT(Type.SCROLL, "Zul-andra", "ZUL", ItemID.ZULANDRA_TELEPORT), KEY_MASTER_TELEPORT(Type.SCROLL, "Key master", "KEY", ItemID.KEY_MASTER_TELEPORT), REVENANT_CAVE_TELEPORT(Type.SCROLL, "Rev cave", "REV", ItemID.REVENANT_CAVE_TELEPORT), - WATSON_TELEPORT(Type.SCROLL, "Watson", "WATS", ItemID.WATSON_TELEPORT); + WATSON_TELEPORT(Type.SCROLL, "Watson", "WATS", ItemID.WATSON_TELEPORT), + + // Jewellery + OPAL_JEWELLERY(Type.JEWELLERY, "Opal", "OP", ItemID.OPAL_RING, ItemID.OPAL_NECKLACE, ItemID.OPAL_BRACELET, ItemID.OPAL_AMULET_U, ItemID.OPAL_AMULET), + JADE_JEWELLERY(Type.JEWELLERY, "Jade", "J", ItemID.JADE_RING, ItemID.JADE_NECKLACE, ItemID.JADE_BRACELET, ItemID.JADE_AMULET_U, ItemID.JADE_AMULET), + TOPAZ_JEWELLERY(Type.JEWELLERY, "Topaz", "T", ItemID.TOPAZ_RING, ItemID.TOPAZ_NECKLACE, ItemID.TOPAZ_BRACELET, ItemID.TOPAZ_AMULET_U, ItemID.TOPAZ_AMULET), + GOLD_JEWELLERY(Type.JEWELLERY, "Gold", "GOL", ItemID.GOLD_RING, ItemID.GOLD_NECKLACE, ItemID.GOLD_BRACELET, ItemID.GOLD_AMULET_U, ItemID.GOLD_AMULET), + SAPPHIRE_JEWELLERY(Type.JEWELLERY, "Sapphir", "S", ItemID.SAPPHIRE_RING, ItemID.SAPPHIRE_NECKLACE, ItemID.SAPPHIRE_BRACELET, ItemID.SAPPHIRE_AMULET_U, ItemID.SAPPHIRE_AMULET), + EMERALD_JEWELLERY(Type.JEWELLERY, "Emerald", "E", ItemID.EMERALD_RING, ItemID.EMERALD_NECKLACE, ItemID.EMERALD_BRACELET, ItemID.EMERALD_AMULET_U, ItemID.EMERALD_AMULET), + RUBY_JEWELLERY(Type.JEWELLERY, "Ruby", "R", ItemID.RUBY_RING, ItemID.RUBY_NECKLACE, ItemID.RUBY_BRACELET, ItemID.RUBY_AMULET_U, ItemID.RUBY_AMULET), + DIAMOND_JEWELLERY(Type.JEWELLERY, "Diamon", "DI", ItemID.DIAMOND_RING, ItemID.DIAMOND_NECKLACE, ItemID.DIAMOND_BRACELET, ItemID.DIAMOND_AMULET_U, ItemID.DIAMOND_AMULET), + DRAGONSTONE_JEWELLERY(Type.JEWELLERY, "Dragon", "DR", ItemID.DRAGONSTONE_RING, ItemID.DRAGON_NECKLACE, ItemID.DRAGONSTONE_BRACELET, ItemID.DRAGONSTONE_AMULET_U, ItemID.DRAGONSTONE_AMULET), + ONYX_JEWELLERY(Type.JEWELLERY, "Onyx", "ON", ItemID.ONYX_RING, ItemID.ONYX_NECKLACE, ItemID.ONYX_BRACELET, ItemID.ONYX_AMULET_U, ItemID.ONYX_AMULET), + ZENYTE_JEWELLERY(Type.JEWELLERY, "Zenyte", "Z", ItemID.ZENYTE_RING, ItemID.ZENYTE_NECKLACE, ItemID.ZENYTE_BRACELET, ItemID.ZENYTE_AMULET_U, ItemID.ZENYTE_AMULET), + + // Enchanted Jewellery + RING_OF_PURSUIT(Type.JEWELLERY_ENCHANTED, "Pursuit", "PUR", ItemID.RING_OF_PURSUIT), + DODGY_NECKLACE(Type.JEWELLERY_ENCHANTED, "Dodgy", "DOD", ItemID.DODGY_NECKLACE), + EXPEDITIOUS_BRACELET(Type.JEWELLERY_ENCHANTED, "Exped", "EXP", ItemID.EXPEDITIOUS_BRACELET), + AMULET_OF_BOUNTY(Type.JEWELLERY_ENCHANTED, "Bounty", "BOU", ItemID.AMULET_OF_BOUNTY), + + RING_OF_RETURNING(Type.JEWELLERY_ENCHANTED, "Return", "RET", ItemID.RING_OF_RETURNING1, ItemID.RING_OF_RETURNING2, ItemID.RING_OF_RETURNING3, ItemID.RING_OF_RETURNING4, ItemID.RING_OF_RETURNING5), + NECKLACE_OF_PASSAGE(Type.JEWELLERY_ENCHANTED, "Passage", "PASS", ItemID.NECKLACE_OF_PASSAGE1, ItemID.NECKLACE_OF_PASSAGE2, ItemID.NECKLACE_OF_PASSAGE3, ItemID.NECKLACE_OF_PASSAGE4, ItemID.NECKLACE_OF_PASSAGE5), + FLAMTAER_BRACELET(Type.JEWELLERY_ENCHANTED, "Flamta", "FLA", ItemID.FLAMTAER_BRACELET), + AMULET_OF_CHEMISTRY(Type.JEWELLERY_ENCHANTED, "Chem", "CH", ItemID.AMULET_OF_CHEMISTRY), + + EFARITAYS_AID(Type.JEWELLERY_ENCHANTED, "Efarit", "EFA", ItemID.EFARITAYS_AID), + NECKLACE_OF_FAITH(Type.JEWELLERY_ENCHANTED, "Faith", "FAI", ItemID.NECKLACE_OF_FAITH), + BRACELET_OF_SLAUGHTER(Type.JEWELLERY_ENCHANTED, "Slaught", "SLA", ItemID.BRACELET_OF_SLAUGHTER), + BURNING_AMULET(Type.JEWELLERY_ENCHANTED, "Burning", "BUR", ItemID.BURNING_AMULET1, ItemID.BURNING_AMULET2, ItemID.BURNING_AMULET3, ItemID.BURNING_AMULET4, ItemID.BURNING_AMULET5), + + RING_OF_RECOIL(Type.JEWELLERY_ENCHANTED, "Recoil", "REC", ItemID.RING_OF_RECOIL), + GAMES_NECKLACE(Type.JEWELLERY_ENCHANTED, "Games", "GAME", ItemID.GAMES_NECKLACE1, ItemID.GAMES_NECKLACE2, ItemID.GAMES_NECKLACE3, ItemID.GAMES_NECKLACE4, ItemID.GAMES_NECKLACE5, ItemID.GAMES_NECKLACE6, ItemID.GAMES_NECKLACE7, ItemID.GAMES_NECKLACE8), + BRACELET_OF_CLAY(Type.JEWELLERY_ENCHANTED, "Clay", "CLA", ItemID.BRACELET_OF_CLAY), + AMULET_OF_MAGIC(Type.JEWELLERY_ENCHANTED, "Magic", "MAG", ItemID.AMULET_OF_MAGIC), + + RING_OF_DUELING(Type.JEWELLERY_ENCHANTED, "Duel", "DU", ItemID.RING_OF_DUELING1, ItemID.RING_OF_DUELING2, ItemID.RING_OF_DUELING3, ItemID.RING_OF_DUELING4, ItemID.RING_OF_DUELING5, ItemID.RING_OF_DUELING6, ItemID.RING_OF_DUELING7, ItemID.RING_OF_DUELING8), + BINDING_NECKLACE(Type.JEWELLERY_ENCHANTED, "Binding", "BIND", ItemID.BINDING_NECKLACE), + CASTLE_WARS_BRACELET(Type.JEWELLERY_ENCHANTED, "Castle", "CAS", ItemID.CASTLE_WARS_BRACELET1, ItemID.CASTLE_WARS_BRACELET2, ItemID.CASTLE_WARS_BRACELET3), + AMULET_OF_DEFENCE(Type.JEWELLERY_ENCHANTED, "Defence", "DEF", ItemID.AMULET_OF_DEFENCE), + AMULET_OF_NATURE(Type.JEWELLERY_ENCHANTED, "Nature", "NAT", ItemID.AMULET_OF_NATURE), + + RING_OF_FORGING(Type.JEWELLERY_ENCHANTED, "Forging", "FOR", ItemID.RING_OF_FORGING), + DIGSITE_PENDANT(Type.JEWELLERY_ENCHANTED, "Digsite", "DIG", ItemID.DIGSITE_PENDANT_1, ItemID.DIGSITE_PENDANT_2, ItemID.DIGSITE_PENDANT_3, ItemID.DIGSITE_PENDANT_4, ItemID.DIGSITE_PENDANT_5), + INOCULATION_BRACELET(Type.JEWELLERY_ENCHANTED, "Inocul", "INO", ItemID.INOCULATION_BRACELET), + AMULET_OF_STRENGTH(Type.JEWELLERY_ENCHANTED, "Strengt", "STR", ItemID.AMULET_OF_STRENGTH), + + RING_OF_LIFE(Type.JEWELLERY_ENCHANTED, "Life", "LI", ItemID.RING_OF_LIFE), + PHOENIX_NECKLACE(Type.JEWELLERY_ENCHANTED, "Phoenix", "PHO", ItemID.PHOENIX_NECKLACE), + ABYSSAL_BRACELET(Type.JEWELLERY_ENCHANTED, "Abyss", "ABY", ItemID.ABYSSAL_BRACELET1, ItemID.ABYSSAL_BRACELET2, ItemID.ABYSSAL_BRACELET3, ItemID.ABYSSAL_BRACELET4, ItemID.ABYSSAL_BRACELET5), + AMULET_OF_POWER(Type.JEWELLERY_ENCHANTED, "Power", "POW", ItemID.AMULET_OF_POWER), + + RING_OF_WEALTH(Type.JEWELLERY_ENCHANTED, "Wealth", "WE", ItemID.RING_OF_WEALTH, ItemID.RING_OF_WEALTH_1, ItemID.RING_OF_WEALTH_2, ItemID.RING_OF_WEALTH_3, ItemID.RING_OF_WEALTH_4, ItemID.RING_OF_WEALTH_5), + SKILLS_NECKLACE(Type.JEWELLERY_ENCHANTED, "Skill", "SK", ItemID.SKILLS_NECKLACE, ItemID.SKILLS_NECKLACE1, ItemID.SKILLS_NECKLACE2, ItemID.SKILLS_NECKLACE3, ItemID.SKILLS_NECKLACE4, ItemID.SKILLS_NECKLACE5, ItemID.SKILLS_NECKLACE6), + COMBAT_BRACELET(Type.JEWELLERY_ENCHANTED, "Combat", "COM", ItemID.COMBAT_BRACELET, ItemID.COMBAT_BRACELET1, ItemID.COMBAT_BRACELET2, ItemID.COMBAT_BRACELET3, ItemID.COMBAT_BRACELET4, ItemID.COMBAT_BRACELET5, ItemID.COMBAT_BRACELET6), + AMULET_OF_GLORY(Type.JEWELLERY_ENCHANTED, "Glory", "GLO", ItemID.AMULET_OF_GLORY, ItemID.AMULET_OF_GLORY1, ItemID.AMULET_OF_GLORY2, ItemID.AMULET_OF_GLORY3, ItemID.AMULET_OF_GLORY4, ItemID.AMULET_OF_GLORY5, ItemID.AMULET_OF_GLORY6, ItemID.AMULET_OF_ETERNAL_GLORY), + + RING_OF_STONE(Type.JEWELLERY_ENCHANTED, "Stone", "STO", ItemID.RING_OF_STONE), + BERSERKER_NECKLACE(Type.JEWELLERY_ENCHANTED, "Berserk", "BER", ItemID.BERSERKER_NECKLACE), + REGEN_BRACELET(Type.JEWELLERY_ENCHANTED, "Regen", "REG", ItemID.REGEN_BRACELET), + AMULET_OF_FURY(Type.JEWELLERY_ENCHANTED, "Fury", "FU", ItemID.AMULET_OF_FURY), + + RING_OF_SUFFERING(Type.JEWELLERY_ENCHANTED, "Suffer", "SUF", ItemID.RING_OF_SUFFERING), + NECKLACE_OF_ANGUISH(Type.JEWELLERY_ENCHANTED, "Anguish", "ANG", ItemID.NECKLACE_OF_ANGUISH), + TORMENTED_BRACELET(Type.JEWELLERY_ENCHANTED, "Torment", "TOR", ItemID.TORMENTED_BRACELET), + AMULET_OF_TORTURE(Type.JEWELLERY_ENCHANTED, "Torture", "TOR", ItemID.AMULET_OF_TORTURE), + + OCCULT_NECKLACE(Type.JEWELLERY_ENCHANTED, "Occult", "OCC", ItemID.OCCULT_NECKLACE), + DRAGONBONE_NECKLACE(Type.JEWELLERY_ENCHANTED, "Dragon", "DRA", ItemID.DRAGONBONE_NECKLACE), + SLAYER_RING(Type.JEWELLERY_ENCHANTED, "Slayer", "SLA", ItemID.SLAYER_RING_1, ItemID.SLAYER_RING_2, ItemID.SLAYER_RING_3, ItemID.SLAYER_RING_4, ItemID.SLAYER_RING_5, ItemID.SLAYER_RING_6, ItemID.SLAYER_RING_7, ItemID.SLAYER_RING_8, ItemID.SLAYER_RING_ETERNAL); final Type type; final String medName; @@ -488,7 +557,9 @@ enum ItemIdentification POTION(ItemIdentificationConfig::showPotions), IMPLING_JAR(ItemIdentificationConfig::showImplingJars), TABLET(ItemIdentificationConfig::showTablets), - SCROLL(ItemIdentificationConfig::showTeleportScrolls); + SCROLL(ItemIdentificationConfig::showTeleportScrolls), + JEWELLERY(ItemIdentificationConfig::showJewellery), + JEWELLERY_ENCHANTED(ItemIdentificationConfig::showEnchantedJewellery); final Predicate enabled; } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/itemidentification/ItemIdentificationConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/itemidentification/ItemIdentificationConfig.java index 0c2f2e5f02..c2b49becb7 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/itemidentification/ItemIdentificationConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/itemidentification/ItemIdentificationConfig.java @@ -303,4 +303,26 @@ public interface ItemIdentificationConfig extends Config { return false; } + + @ConfigItem( + keyName = "showJewellery", + name = "Jewellery (Unenchanted)", + description = "Show identification on unenchanted jewellery", + section = identificationSection + ) + default boolean showJewellery() + { + return false; + } + + @ConfigItem( + keyName = "showEnchantedJewellery", + name = "Jewellery (Enchanted)", + description = "Show identification on enchanted jewellery", + section = identificationSection + ) + default boolean showEnchantedJewellery() + { + return false; + } }