From 6a0fd2a0d081d2d206e98f400c80cd641138058e Mon Sep 17 00:00:00 2001 From: Max Weber Date: Sat, 4 Apr 2020 05:00:04 -0600 Subject: [PATCH 01/15] http-api: remove unused fields from NPCInfo These fields are never used. If we need this information we can get it from the client's cache --- http-api/src/main/java/net/runelite/http/api/npc/NpcInfo.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/http-api/src/main/java/net/runelite/http/api/npc/NpcInfo.java b/http-api/src/main/java/net/runelite/http/api/npc/NpcInfo.java index 285169a32d..091f36e471 100644 --- a/http-api/src/main/java/net/runelite/http/api/npc/NpcInfo.java +++ b/http-api/src/main/java/net/runelite/http/api/npc/NpcInfo.java @@ -29,7 +29,5 @@ import lombok.Data; @Data public class NpcInfo { - private String name; - private int combat; private int hitpoints; } From 5b9591db6ec8a359e28f011dc87707f68b94351b Mon Sep 17 00:00:00 2001 From: Jordan Atwood Date: Tue, 7 Apr 2020 11:11:32 -0700 Subject: [PATCH 02/15] HotColdLocation: Center some location spots Center some hot-cold locations as reported and verified from the mega issue. Ref: runelite/runelite#9601 --- .../clues/hotcold/HotColdLocation.java | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdLocation.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdLocation.java index 83de07ab43..503bffd69a 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdLocation.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/hotcold/HotColdLocation.java @@ -61,33 +61,33 @@ public enum HotColdLocation ASGARNIA_RIMMINGTON(new WorldPoint(2976, 3239, 0), ASGARNIA, "In the centre of the Rimmington mine."), ASGARNIA_MUDSKIPPER(new WorldPoint(2987, 3110, 0), ASGARNIA, "Mudskipper Point, near the starfish in the south-west corner."), ASGARNIA_TROLL(new WorldPoint(2910, 3616, 0), ASGARNIA, "The Troll arena, where the player fights Dad during the Troll Stronghold quest. Bring climbing boots if travelling from Burthorpe."), - DESERT_GENIE(new WorldPoint(3364, 2910, 0), DESERT, "West of Nardah genie cave."), + DESERT_GENIE(new WorldPoint(3359, 2912, 0), DESERT, "West of Nardah genie cave."), DESERT_ALKHARID_MINE(new WorldPoint(3282, 3270, 0), DESERT, "West of Al Kharid mine."), DESERT_MENAPHOS_GATE(new WorldPoint(3223, 2820, 0), DESERT, "North of Menaphos gate."), DESERT_BEDABIN_CAMP(new WorldPoint(3164, 3050, 0), DESERT, "Bedabin Camp, dig around the north tent."), DESERT_UZER(new WorldPoint(3431, 3106, 0), DESERT, "West of Uzer."), DESERT_POLLNIVNEACH(new WorldPoint(3287, 2975, 0), DESERT, "West of Pollnivneach."), DESERT_MTA(new WorldPoint(3347, 3295, 0), DESERT, "Next to Mage Training Arena."), - DESERT_SHANTY(new WorldPoint(3294, 3106, 0), DESERT, "South-west of Shantay Pass."), + DESERT_SHANTY(new WorldPoint(3292, 3107, 0), DESERT, "South-west of Shantay Pass."), DRAYNOR_MANOR_MUSHROOMS(true, new WorldPoint(3096, 3379, 0), MISTHALIN, "Patch of mushrooms just northwest of Draynor Manor"), DRAYNOR_WHEAT_FIELD(true, new WorldPoint(3120, 3282, 0), MISTHALIN, "Inside the wheat field next to Draynor Village"), FELDIP_HILLS_JIGGIG(new WorldPoint(2409, 3053, 0), FELDIP_HILLS, "West of Jiggig, east of the fairy ring bkp."), FELDIP_HILLS_SW(new WorldPoint(2586, 2897, 0), FELDIP_HILLS, "West of the southeasternmost lake in Feldip Hills."), FELDIP_HILLS_GNOME_GLITER(new WorldPoint(2555, 2972, 0), FELDIP_HILLS, "East of the gnome glider (Lemantolly Undri)."), FELDIP_HILLS_RANTZ(new WorldPoint(2611, 2950, 0), FELDIP_HILLS, "South of Rantz, west of the empty glass bottles."), - FELDIP_HILLS_SOUTH(new WorldPoint(2487, 3005, 0), FELDIP_HILLS, "South of Jiggig."), + FELDIP_HILLS_SOUTH(new WorldPoint(2486, 3007, 0), FELDIP_HILLS, "South of Jiggig."), FELDIP_HILLS_RED_CHIN(new WorldPoint(2530, 2901, 0), FELDIP_HILLS, "Outside the red chinchompa hunting ground entrance, south of the Hunting expert's hut."), - FELDIP_HILLS_SE(new WorldPoint(2567, 2916, 0), FELDIP_HILLS, "South-east of the ∩-shaped lake, near the icon."), + FELDIP_HILLS_SE(new WorldPoint(2569, 2918, 0), FELDIP_HILLS, "South-east of the ∩-shaped lake, near the icon."), FELDIP_HILLS_CW_BALLOON(new WorldPoint(2452, 3108, 0), FELDIP_HILLS, "Directly west of the Castle Wars balloon."), FREMENNIK_PROVINCE_MTN_CAMP(new WorldPoint(2800, 3669, 0), FREMENNIK_PROVINCE, "At the Mountain Camp."), - FREMENNIK_PROVINCE_RELLEKKA_HUNTER(new WorldPoint(2724, 3783, 0), FREMENNIK_PROVINCE, "At the Rellekka Hunter area, near the icon."), + FREMENNIK_PROVINCE_RELLEKKA_HUNTER(new WorldPoint(2720, 3784, 0), FREMENNIK_PROVINCE, "At the Rellekka Hunter area, near the icon."), FREMENNIK_PROVINCE_KELGADRIM_ENTRANCE(new WorldPoint(2715, 3689, 0), FREMENNIK_PROVINCE, "West of the Keldagrim entrance mine."), FREMENNIK_PROVINCE_SW(new WorldPoint(2605, 3648, 0), FREMENNIK_PROVINCE, "Outside the fence in the south-western corner of Rellekka."), FREMENNIK_PROVINCE_LIGHTHOUSE(new WorldPoint(2585, 3601, 0), FREMENNIK_PROVINCE, "South-east of the Lighthouse."), FREMENNIK_PROVINCE_ETCETERIA_CASTLE(new WorldPoint(2617, 3862, 0), FREMENNIK_PROVINCE, "South-east of Etceteria's castle."), FREMENNIK_PROVINCE_MISC_COURTYARD(new WorldPoint(2527, 3868, 0), FREMENNIK_PROVINCE, "Outside Miscellania's courtyard."), FREMENNIK_PROVINCE_FREMMY_ISLES_MINE(new WorldPoint(2374, 3850, 0), FREMENNIK_PROVINCE, "Central Fremennik Isles mine."), - FREMENNIK_PROVINCE_WEST_ISLES_MINE(new WorldPoint(2313, 3854, 0), FREMENNIK_PROVINCE, "West Fremennik Isles mine."), + FREMENNIK_PROVINCE_WEST_ISLES_MINE(new WorldPoint(2313, 3850, 0), FREMENNIK_PROVINCE, "West Fremennik Isles mine."), FREMENNIK_PROVINCE_WEST_JATIZSO_ENTRANCE(new WorldPoint(2393, 3812, 0), FREMENNIK_PROVINCE, "West of the Jatizso mine entrance."), FREMENNIK_PROVINCE_PIRATES_COVE(new WorldPoint(2210, 3814, 0), FREMENNIK_PROVINCE, "Pirates' Cove"), FREMENNIK_PROVINCE_ASTRAL_ALTER(new WorldPoint(2149, 3865, 0), FREMENNIK_PROVINCE, "Astral altar"), @@ -103,7 +103,7 @@ public enum HotColdLocation KANDARIN_WITCHHAVEN(new WorldPoint(2707, 3306, 0), KANDARIN, "Outside Witchaven, west of Jeb, Holgart, and Caroline."), KANDARIN_NECRO_TOWER(new WorldPoint(2667, 3241, 0), KANDARIN, "Ground floor inside the Necromancer Tower. Easily accessed by using fairy ring code djp."), KANDARIN_FIGHT_ARENA(new WorldPoint(2587, 3135, 0), KANDARIN, "South of the Fight Arena, north-west of the Nightmare Zone."), - KANDARIN_TREE_GNOME_VILLAGE(new WorldPoint(2526, 3160, 0), KANDARIN, "Tree Gnome Village, near the general store icon."), + KANDARIN_TREE_GNOME_VILLAGE(new WorldPoint(2530, 3164, 0), KANDARIN, "Tree Gnome Village, near the general store icon."), KANDARIN_GRAVE_OF_SCORPIUS(new WorldPoint(2467, 3227, 0), KANDARIN, "Grave of Scorpius"), KANDARIN_KHAZARD_BATTLEFIELD(new WorldPoint(2522, 3252, 0), KANDARIN, "Khazard Battlefield, south of Tracker gnome 2."), KANDARIN_WEST_ARDY(new WorldPoint(2535, 3322, 0), KANDARIN, "West Ardougne, near the staircase outside the Civic Office."), @@ -111,7 +111,7 @@ public enum HotColdLocation KANDARIN_OUTPOST(new WorldPoint(2457, 3362, 0), KANDARIN, "South of the Tree Gnome Stronghold, north-east of the Outpost."), KANDARIN_BAXTORIAN_FALLS(new WorldPoint(2534, 3479, 0), KANDARIN, "South-east of Almera's house on Baxtorian Falls."), KANDARIN_BA_AGILITY_COURSE(new WorldPoint(2540, 3548, 0), KANDARIN, "Inside the Barbarian Agility Course. Completion of Alfred Grimhand's Barcrawl is required."), - KARAMJA_MUSA_POINT(new WorldPoint(2914, 3168, 0), KARAMJA, "Musa Point, banana plantation."), + KARAMJA_MUSA_POINT(new WorldPoint(2913, 3169, 0), KARAMJA, "Musa Point, banana plantation."), KARAMJA_BRIMHAVEN_FRUIT_TREE(new WorldPoint(2782, 3215, 0), KARAMJA, "Brimhaven, east of the fruit tree patch."), KARAMJA_WEST_BRIMHAVEN(new WorldPoint(2721, 3169, 0), KARAMJA, "West of Brimhaven."), KARAMJA_GLIDER(new WorldPoint(2966, 2975, 0), KARAMJA, "West of the gnome glider."), @@ -121,21 +121,21 @@ public enum HotColdLocation LUMBRIDGE_COW_FIELD(true, new WorldPoint(3174, 3336, 0), MISTHALIN, "Cow field north of Lumbridge"), MISTHALIN_VARROCK_STONE_CIRCLE(new WorldPoint(3225, 3356, 0), MISTHALIN, "South of the stone circle near Varrock's entrance."), MISTHALIN_LUMBRIDGE(new WorldPoint(3234, 3169, 0), MISTHALIN, "Just north-west of the Lumbridge Fishing tutor."), - MISTHALIN_LUMBRIDGE_2(new WorldPoint(3170, 3278, 0), MISTHALIN, "North of the pond between Lumbridge and Draynor Village."), + MISTHALIN_LUMBRIDGE_2(new WorldPoint(3169, 3279, 0), MISTHALIN, "North of the pond between Lumbridge and Draynor Village."), MISTHALIN_GERTUDES(new WorldPoint(3154, 3421, 0), MISTHALIN, "North-east of Gertrude's house west of Varrock."), MISTHALIN_DRAYNOR_BANK(new WorldPoint(3098, 3234, 0), MISTHALIN, "South of Draynor Village bank."), MISTHALIN_LUMBER_YARD(new WorldPoint(3303, 3483, 0), MISTHALIN, "South of Lumber Yard, east of Assistant Serf."), MORYTANIA_BURGH_DE_ROTT(new WorldPoint(3545, 3253, 0), MORYTANIA, "In the north-east area of Burgh de Rott, by the reverse-L-shaped ruins."), - MORYTANIA_PORT_PHASMATYS(new WorldPoint(3613, 3485, 0), MORYTANIA, "West of Port Phasmatys, south-east of fairy ring."), + MORYTANIA_PORT_PHASMATYS(new WorldPoint(3611, 3485, 0), MORYTANIA, "West of Port Phasmatys, south-east of fairy ring."), MORYTANIA_HOLLOWS(new WorldPoint(3499, 3421, 0), MORYTANIA, "Inside The Hollows, south of the bridge which was repaired in a quest."), - MORYTANIA_SWAMP(new WorldPoint(3422, 3374, 0), MORYTANIA, "Inside the Mort Myre Swamp, north-west of the Nature Grotto."), + MORYTANIA_SWAMP(new WorldPoint(3418, 3372, 0), MORYTANIA, "Inside the Mort Myre Swamp, north-west of the Nature Grotto."), MORYTANIA_HAUNTED_MINE(new WorldPoint(3444, 3255, 0), MORYTANIA, "At Haunted Mine quest start."), MORYTANIA_MAUSOLEUM(new WorldPoint(3499, 3539, 0), MORYTANIA, "South of the Mausoleum."), - MORYTANIA_MOS_LES_HARMLESS(new WorldPoint(3744, 3041, 0), MORYTANIA, "Northern area of Mos Le'Harmless, between the lakes."), + MORYTANIA_MOS_LES_HARMLESS(new WorldPoint(3740, 3041, 0), MORYTANIA, "Northern area of Mos Le'Harmless, between the lakes."), MORYTANIA_MOS_LES_HARMLESS_BAR(new WorldPoint(3670, 2974, 0), MORYTANIA, "Near Mos Le'Harmless southern bar."), MORYTANIA_DRAGONTOOTH_NORTH(new WorldPoint(3811, 3569, 0), MORYTANIA, "Northern part of Dragontooth Island."), MORYTANIA_DRAGONTOOTH_SOUTH(new WorldPoint(3803, 3532, 0), MORYTANIA, "Southern part of Dragontooth Island."), - MORYTANIA_SLEPE_TENTS(new WorldPoint(3766, 3384, 0), MORYTANIA, "North-east of Slepe, near the tents."), + MORYTANIA_SLEPE_TENTS(new WorldPoint(3769, 3383, 0), MORYTANIA, "North-east of Slepe, near the tents."), NORTHEAST_OF_AL_KHARID_MINE(true, new WorldPoint(3332, 3313, 0), MISTHALIN, "Northeast of Al Kharid Mine"), WESTERN_PROVINCE_EAGLES_PEAK(new WorldPoint(2297, 3529, 0), WESTERN_PROVINCE, "North-west of Eagles' Peak."), WESTERN_PROVINCE_PISCATORIS(new WorldPoint(2334, 3685, 0), WESTERN_PROVINCE, "Piscatoris Fishing Colony"), @@ -148,7 +148,7 @@ public enum HotColdLocation WESTERN_PROVINCE_ZULANDRA(new WorldPoint(2196, 3057, 0), WESTERN_PROVINCE, "The northern house at Zul-Andra."), WILDERNESS_5(new WorldPoint(3173, 3556, 0), WILDERNESS, "North of the Grand Exchange, level 5 Wilderness."), WILDERNESS_12(new WorldPoint(3036, 3612, 0), WILDERNESS, "South-east of the Dark Warriors' Fortress, level 12 Wilderness."), - WILDERNESS_20(new WorldPoint(3225, 3676, 0), WILDERNESS, "East of the Corporeal Beast's lair, level 20 Wilderness."), + WILDERNESS_20(new WorldPoint(3222, 3679, 0), WILDERNESS, "East of the Corporeal Beast's lair, level 20 Wilderness."), WILDERNESS_27(new WorldPoint(3174, 3736, 0), WILDERNESS, "Inside the Ruins north of the Graveyard of Shadows, level 27 Wilderness."), WILDERNESS_28(new WorldPoint(3377, 3737, 0), WILDERNESS, "East of Venenatis' nest, level 28 Wilderness."), WILDERNESS_32(new WorldPoint(3311, 3773, 0), WILDERNESS, "North of Venenatis' nest, level 32 Wilderness."), @@ -160,7 +160,7 @@ public enum HotColdLocation ZEAH_BLASTMINE_BANK(new WorldPoint(1507, 3856, 0), ZEAH, "Next to the bank in the Lovakengj blast mine."), ZEAH_BLASTMINE_NORTH(new WorldPoint(1488, 3881, 0), ZEAH, "Northern part of the Lovakengj blast mine."), ZEAH_LOVAKITE_FURNACE(new WorldPoint(1507, 3819, 0), ZEAH, "Next to the lovakite furnace in Lovakengj."), - ZEAH_LOVAKENGJ_MINE(new WorldPoint(1477, 3779, 0), ZEAH, "Next to mithril rock in the Lovakengj mine."), + ZEAH_LOVAKENGJ_MINE(new WorldPoint(1477, 3778, 0), ZEAH, "Next to mithril rock in the Lovakengj mine."), ZEAH_SULPHR_MINE(new WorldPoint(1428, 3869, 0), ZEAH, "Western entrance in the Lovakengj sulphur mine."), ZEAH_SHAYZIEN_BANK(new WorldPoint(1517, 3603, 0), ZEAH, "South-east of the bank in Shayzien."), ZEAH_OVERPASS(new WorldPoint(1467, 3714, 0), ZEAH, "Overpass between Lovakengj and Shayzien."), @@ -180,7 +180,7 @@ public enum HotColdLocation ZEAH_VANNAHS_FARM_STORE(new WorldPoint(1806, 3521, 0), ZEAH, "North of Vannah's Farm Store, between the chicken coop and willow trees."), ZEAH_FARMING_GUILD_W(new WorldPoint(1208, 3736, 0), ZEAH, "West of the Farming Guild."), ZEAH_DAIRY_COW(new WorldPoint(1324, 3722, 0), ZEAH, "North-east of the Kebos Lowlands, east of the dairy cow."), - ZEAH_CRIMSON_SWIFTS(new WorldPoint(1186, 3583, 0), ZEAH, "South-west of the Kebos Swamp, below the crimson swifts."); + ZEAH_CRIMSON_SWIFTS(new WorldPoint(1187, 3580, 0), ZEAH, "South-west of the Kebos Swamp, below the crimson swifts."); private final boolean beginnerClue; private final WorldPoint worldPoint; From 1fccba9fda84b1f22375c50bafb8af4c1b7fd0bc Mon Sep 17 00:00:00 2001 From: Tomas Slusny Date: Tue, 7 Apr 2020 21:49:11 +0200 Subject: [PATCH 03/15] Reset repositioned tooltip overlays Signed-off-by: Tomas Slusny --- .../java/net/runelite/client/RuneLite.java | 5 ++++ .../ui/overlay/tooltip/TooltipManager.java | 26 +++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/runelite-client/src/main/java/net/runelite/client/RuneLite.java b/runelite-client/src/main/java/net/runelite/client/RuneLite.java index 72b6889064..cf1b76b5ae 100644 --- a/runelite-client/src/main/java/net/runelite/client/RuneLite.java +++ b/runelite-client/src/main/java/net/runelite/client/RuneLite.java @@ -73,6 +73,7 @@ import net.runelite.client.ui.overlay.OverlayRenderer; import net.runelite.client.ui.overlay.WidgetOverlay; import net.runelite.client.ui.overlay.infobox.InfoBoxManager; import net.runelite.client.ui.overlay.infobox.InfoBoxOverlay; +import net.runelite.client.ui.overlay.tooltip.TooltipManager; import net.runelite.client.ui.overlay.tooltip.TooltipOverlay; import net.runelite.client.ui.overlay.worldmap.WorldMapOverlay; import net.runelite.client.ws.PartyService; @@ -127,6 +128,9 @@ public class RuneLite @Inject private OverlayManager overlayManager; + @Inject + private TooltipManager tooltipManager; + @Inject private Provider partyService; @@ -336,6 +340,7 @@ public class RuneLite eventBus.register(overlayManager); eventBus.register(drawManager); eventBus.register(infoBoxManager); + eventBus.register(tooltipManager); if (!isOutdated) { diff --git a/runelite-client/src/main/java/net/runelite/client/ui/overlay/tooltip/TooltipManager.java b/runelite-client/src/main/java/net/runelite/client/ui/overlay/tooltip/TooltipManager.java index 6472381ec3..9ed020b72b 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/overlay/tooltip/TooltipManager.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/overlay/tooltip/TooltipManager.java @@ -24,14 +24,27 @@ */ package net.runelite.client.ui.overlay.tooltip; +import com.google.common.base.Strings; import java.util.ArrayList; import java.util.List; +import javax.inject.Inject; import javax.inject.Singleton; import lombok.Getter; +import net.runelite.client.config.ConfigManager; +import net.runelite.client.eventbus.Subscribe; +import net.runelite.client.events.ConfigChanged; @Singleton public class TooltipManager { + private final ConfigManager configManager; + + @Inject + private TooltipManager(final ConfigManager configManager) + { + this.configManager = configManager; + } + @Getter private final List tooltips = new ArrayList<>(); @@ -49,4 +62,17 @@ public class TooltipManager { tooltips.clear(); } + + @Subscribe + public void onConfigChanged(final ConfigChanged event) + { + // Temporary fix for resetting repositioned tooltip overlay + // TODO: Remove this eventually + if (event.getGroup().equals("runelite") && + event.getKey().equals("TooltipOverlay_preferredLocation") && + !Strings.isNullOrEmpty(event.getNewValue())) + { + configManager.unsetConfiguration(event.getGroup(), event.getKey()); + } + } } From c31971d0d35e19187b05ce24ed20e5cc03125193 Mon Sep 17 00:00:00 2001 From: TheFlemoid <19089632+TheFlemoid@users.noreply.github.com> Date: Wed, 8 Apr 2020 02:04:11 -0400 Subject: [PATCH 04/15] WidgetOverlay: Use TOP_RIGHT anchor for LMS widgets --- .../java/net/runelite/client/ui/overlay/WidgetOverlay.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/ui/overlay/WidgetOverlay.java b/runelite-client/src/main/java/net/runelite/client/ui/overlay/WidgetOverlay.java index c56e24230a..ac9fc12518 100644 --- a/runelite-client/src/main/java/net/runelite/client/ui/overlay/WidgetOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/ui/overlay/WidgetOverlay.java @@ -57,8 +57,8 @@ public class WidgetOverlay extends Overlay .put(WidgetInfo.SKOTIZO_CONTAINER, OverlayPosition.TOP_LEFT) .put(WidgetInfo.KOUREND_FAVOUR_OVERLAY, OverlayPosition.TOP_CENTER) .put(WidgetInfo.PYRAMID_PLUNDER_DATA, OverlayPosition.TOP_CENTER) - .put(WidgetInfo.LMS_INFO, OverlayPosition.TOP_CENTER) - .put(WidgetInfo.LMS_KDA, OverlayPosition.TOP_CENTER) + .put(WidgetInfo.LMS_INFO, OverlayPosition.TOP_RIGHT) + .put(WidgetInfo.LMS_KDA, OverlayPosition.TOP_RIGHT) .put(WidgetInfo.GAUNTLET_TIMER_CONTAINER, OverlayPosition.TOP_LEFT) .build(); From 574ea03471e420e4e22592f8f2a65db6d8aa6af8 Mon Sep 17 00:00:00 2001 From: RuneLite Cache-Code Autoupdater Date: Wed, 8 Apr 2020 10:32:23 +0000 Subject: [PATCH 05/15] Update Item IDs to 2020-04-08-rev182 --- .../main/java/net/runelite/api/ItemID.java | 48 ++++++++++++------- .../java/net/runelite/api/NullItemID.java | 6 +++ 2 files changed, 37 insertions(+), 17 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/ItemID.java b/runelite-api/src/main/java/net/runelite/api/ItemID.java index 026976a94b..b045be89d1 100644 --- a/runelite-api/src/main/java/net/runelite/api/ItemID.java +++ b/runelite-api/src/main/java/net/runelite/api/ItemID.java @@ -676,7 +676,7 @@ public final class ItemID public static final int LEATHER_GLOVES = 1059; public static final int LEATHER_BOOTS = 1061; public static final int LEATHER_VAMBRACES = 1063; - public static final int GREEN_DHIDE_VAMB = 1065; + public static final int GREEN_DHIDE_VAMBRACES = 1065; public static final int IRON_PLATELEGS = 1067; public static final int STEEL_PLATELEGS = 1069; public static final int MITHRIL_PLATELEGS = 1071; @@ -1483,9 +1483,9 @@ public final class ItemID public static final int LANTADYME = 2481; public static final int LANTADYME_POTION_UNF = 2483; public static final int GRIMY_LANTADYME = 2485; - public static final int BLUE_DHIDE_VAMB = 2487; - public static final int RED_DHIDE_VAMB = 2489; - public static final int BLACK_DHIDE_VAMB = 2491; + public static final int BLUE_DHIDE_VAMBRACES = 2487; + public static final int RED_DHIDE_VAMBRACES = 2489; + public static final int BLACK_DHIDE_VAMBRACES = 2491; public static final int BLUE_DHIDE_CHAPS = 2493; public static final int RED_DHIDE_CHAPS = 2495; public static final int BLACK_DHIDE_CHAPS = 2497; @@ -6287,10 +6287,10 @@ public final class ItemID public static final int SPOTTIER_CAPE_10074 = 10074; public static final int GLOVES_OF_SILENCE = 10075; public static final int SPIKY_VAMBRACES = 10077; - public static final int GREEN_SPIKY_VAMBS = 10079; - public static final int BLUE_SPIKY_VAMBS = 10081; - public static final int RED_SPIKY_VAMBS = 10083; - public static final int BLACK_SPIKY_VAMBS = 10085; + public static final int GREEN_SPIKY_VAMBRACES = 10079; + public static final int BLUE_SPIKY_VAMBRACES = 10081; + public static final int RED_SPIKY_VAMBRACES = 10083; + public static final int BLACK_SPIKY_VAMBRACES = 10085; public static final int STRIPY_FEATHER = 10087; public static final int RED_FEATHER = 10088; public static final int BLUE_FEATHER = 10089; @@ -6492,15 +6492,15 @@ public final class ItemID public static final int STRENGTH_AMULET_T = 10364; public static final int AMULET_OF_MAGIC_T = 10366; public static final int ZAMORAK_BRACERS = 10368; - public static final int ZAMORAK_DHIDE = 10370; + public static final int ZAMORAK_DHIDE_BODY = 10370; public static final int ZAMORAK_CHAPS = 10372; public static final int ZAMORAK_COIF = 10374; public static final int GUTHIX_BRACERS = 10376; - public static final int GUTHIX_DHIDE = 10378; + public static final int GUTHIX_DHIDE_BODY = 10378; public static final int GUTHIX_CHAPS = 10380; public static final int GUTHIX_COIF = 10382; public static final int SARADOMIN_BRACERS = 10384; - public static final int SARADOMIN_DHIDE = 10386; + public static final int SARADOMIN_DHIDE_BODY = 10386; public static final int SARADOMIN_CHAPS = 10388; public static final int SARADOMIN_COIF = 10390; public static final int A_POWDERED_WIG = 10392; @@ -6802,8 +6802,8 @@ public final class ItemID public static final int SARADOMIN_ROBE_TOP_10784 = 10784; public static final int ZAMORAK_ROBE_TOP_10786 = 10786; public static final int GUTHIX_ROBE_TOP_10788 = 10788; - public static final int ZAMORAK_DHIDE_10790 = 10790; - public static final int SARADOMIN_DHIDE_10792 = 10792; + public static final int ZAMORAK_DHIDE_BODY_10790 = 10790; + public static final int SARADOMIN_DHIDE_BODY_10792 = 10792; public static final int GUTHIX_DRAGONHIDE = 10794; public static final int ROBIN_HOOD_HAT_10796 = 10796; public static final int RUNE_PLATEBODY_G_10798 = 10798; @@ -7878,15 +7878,15 @@ public final class ItemID public static final int BANDOS_FULL_HELM = 12486; public static final int BANDOS_KITESHIELD = 12488; public static final int ANCIENT_BRACERS = 12490; - public static final int ANCIENT_DHIDE = 12492; + public static final int ANCIENT_DHIDE_BODY = 12492; public static final int ANCIENT_CHAPS = 12494; public static final int ANCIENT_COIF = 12496; public static final int BANDOS_BRACERS = 12498; - public static final int BANDOS_DHIDE = 12500; + public static final int BANDOS_DHIDE_BODY = 12500; public static final int BANDOS_CHAPS = 12502; public static final int BANDOS_COIF = 12504; public static final int ARMADYL_BRACERS = 12506; - public static final int ARMADYL_DHIDE = 12508; + public static final int ARMADYL_DHIDE_BODY = 12508; public static final int ARMADYL_CHAPS = 12510; public static final int ARMADYL_COIF = 12512; public static final int EXPLORER_BACKPACK = 12514; @@ -10775,7 +10775,7 @@ public final class ItemID public static final int GIANT_BOOT = 23252; public static final int URIS_HAT = 23255; public static final int GILDED_COIF = 23258; - public static final int GILDED_DHIDE_VAMBS = 23261; + public static final int GILDED_DHIDE_VAMBRACES = 23261; public static final int GILDED_DHIDE_BODY = 23264; public static final int GILDED_DHIDE_CHAPS = 23267; public static final int ADAMANT_DRAGON_MASK = 23270; @@ -11413,5 +11413,19 @@ public final class ItemID public static final int RUNNER_HAT_BROKEN = 24531; public static final int RUNNER_HAT_L = 24533; public static final int MITHRIL_SEEDS_24534 = 24534; + public static final int MAGIC_EGG_BALL = 24535; + public static final int CARROT_SWORD = 24537; + public static final int _24CARAT_SWORD = 24539; + public static final int PAINTED_FAKE_MAGIC_EGG = 24541; + public static final int UNPAINTED_FAKE_MAGIC_EGG = 24542; + public static final int CONCH_SHELL = 24543; + public static final int BROKEN_EGG = 24544; + public static final int DUMMY_PORTAL = 24545; + public static final int CARROT = 24546; + public static final int BROKEN_GOAT_HORN = 24547; + public static final int CAKE_24549 = 24549; + public static final int BLADE_OF_SAELDOR_I = 24551; + public static final int BLADE_OF_SAELDOR_I_24553 = 24553; + public static final int PYROMANCER_SET = 24554; /* This file is automatically generated. Do not edit. */ } diff --git a/runelite-api/src/main/java/net/runelite/api/NullItemID.java b/runelite-api/src/main/java/net/runelite/api/NullItemID.java index ca9521d21a..d766b2c53e 100644 --- a/runelite-api/src/main/java/net/runelite/api/NullItemID.java +++ b/runelite-api/src/main/java/net/runelite/api/NullItemID.java @@ -12911,5 +12911,11 @@ public final class NullItemID public static final int NULL_24526 = 24526; public static final int NULL_24530 = 24530; public static final int NULL_24532 = 24532; + public static final int NULL_24536 = 24536; + public static final int NULL_24538 = 24538; + public static final int NULL_24540 = 24540; + public static final int NULL_24548 = 24548; + public static final int NULL_24550 = 24550; + public static final int NULL_24552 = 24552; /* This file is automatically generated. Do not edit. */ } From e7fa298e240cee57ca4ed2778d3ea6d01e4a3923 Mon Sep 17 00:00:00 2001 From: RuneLite Cache-Code Autoupdater Date: Wed, 8 Apr 2020 10:32:23 +0000 Subject: [PATCH 06/15] Update Item variations to 2020-04-08-rev182 --- .../src/main/resources/item_variations.json | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/runelite-client/src/main/resources/item_variations.json b/runelite-client/src/main/resources/item_variations.json index 581da0850c..2c96c1d0d9 100644 --- a/runelite-client/src/main/resources/item_variations.json +++ b/runelite-client/src/main/resources/item_variations.json @@ -2352,7 +2352,8 @@ ], "cake": [ 1891, - 1893 + 1893, + 24549 ], "chocolate cake": [ 1897, @@ -6929,11 +6930,11 @@ 10364, 10736 ], - "zamorak dhide": [ + "zamorak dhide body": [ 10370, 10790 ], - "saradomin dhide": [ + "saradomin dhide body": [ 10386, 10792 ], @@ -9584,7 +9585,9 @@ ], "blade of saeldor": [ 23995, - 23997 + 23997, + 24551, + 24553 ], "elven top": [ 24009, From df07c61da49bddc3990a5ce2ff00e3534a21884c Mon Sep 17 00:00:00 2001 From: RuneLite Cache-Code Autoupdater Date: Wed, 8 Apr 2020 10:32:24 +0000 Subject: [PATCH 07/15] Update Object IDs to 2020-04-08-rev182 --- .../java/net/runelite/api/NullObjectID.java | 13 +++++++++++ .../main/java/net/runelite/api/ObjectID.java | 23 ++++++++++++++++++- 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/runelite-api/src/main/java/net/runelite/api/NullObjectID.java b/runelite-api/src/main/java/net/runelite/api/NullObjectID.java index a8e0db8e3a..1eaf83e2d5 100644 --- a/runelite-api/src/main/java/net/runelite/api/NullObjectID.java +++ b/runelite-api/src/main/java/net/runelite/api/NullObjectID.java @@ -14123,6 +14123,10 @@ public final class NullObjectID public static final int NULL_30144 = 30144; public static final int NULL_30156 = 30156; public static final int NULL_30159 = 30159; + public static final int NULL_30165 = 30165; + public static final int NULL_30166 = 30166; + public static final int NULL_30167 = 30167; + public static final int NULL_30168 = 30168; public static final int NULL_30171 = 30171; public static final int NULL_30181 = 30181; public static final int NULL_30182 = 30182; @@ -14977,6 +14981,7 @@ public final class NullObjectID public static final int NULL_31895 = 31895; public static final int NULL_31896 = 31896; public static final int NULL_31897 = 31897; + public static final int NULL_31899 = 31899; public static final int NULL_31937 = 31937; public static final int NULL_31938 = 31938; public static final int NULL_31945 = 31945; @@ -16161,6 +16166,7 @@ public final class NullObjectID public static final int NULL_34678 = 34678; public static final int NULL_34679 = 34679; public static final int NULL_34680 = 34680; + public static final int NULL_34688 = 34688; public static final int NULL_34689 = 34689; public static final int NULL_34690 = 34690; public static final int NULL_34691 = 34691; @@ -16223,6 +16229,7 @@ public final class NullObjectID public static final int NULL_34823 = 34823; public static final int NULL_34824 = 34824; public static final int NULL_34825 = 34825; + public static final int NULL_34827 = 34827; public static final int NULL_34831 = 34831; public static final int NULL_34832 = 34832; public static final int NULL_34841 = 34841; @@ -18161,6 +18168,7 @@ public final class NullObjectID public static final int NULL_37722 = 37722; public static final int NULL_37723 = 37723; public static final int NULL_37724 = 37724; + public static final int NULL_37725 = 37725; public static final int NULL_37732 = 37732; public static final int NULL_37733 = 37733; public static final int NULL_37734 = 37734; @@ -18328,6 +18336,11 @@ public final class NullObjectID public static final int NULL_37933 = 37933; public static final int NULL_37934 = 37934; public static final int NULL_37935 = 37935; + public static final int NULL_37940 = 37940; + public static final int NULL_37945 = 37945; + public static final int NULL_37947 = 37947; public static final int NULL_37950 = 37950; + public static final int NULL_37956 = 37956; + public static final int NULL_37958 = 37958; /* This file is automatically generated. Do not edit. */ } diff --git a/runelite-api/src/main/java/net/runelite/api/ObjectID.java b/runelite-api/src/main/java/net/runelite/api/ObjectID.java index 7e2270e14b..af1d77c7a5 100644 --- a/runelite-api/src/main/java/net/runelite/api/ObjectID.java +++ b/runelite-api/src/main/java/net/runelite/api/ObjectID.java @@ -15803,6 +15803,8 @@ public final class ObjectID public static final int POOL_OF_NIGHTMARES = 29706; public static final int POOL_OF_NIGHTMARES_29707 = 29707; public static final int SCOREBOARD_29708 = 29708; + public static final int MAGIC_PORTAL_29711 = 29711; + public static final int PAINT_BUCKETS = 29712; public static final int NOTICEBOARD_29718 = 29718; public static final int BALLISTA_29719 = 29719; public static final int STAIRCASE_29720 = 29720; @@ -16023,6 +16025,11 @@ public final class ObjectID public static final int PAINTING_30155 = 30155; public static final int FURNACE_30157 = 30157; public static final int FURNACE_30158 = 30158; + public static final int BROKEN_EGG = 30160; + public static final int CONCH_SHELL = 30161; + public static final int THE_MAGIC_EGG = 30162; + public static final int CAKE = 30163; + public static final int CARROT = 30164; public static final int CRACK_30169 = 30169; public static final int ROOT_30170 = 30170; public static final int PORTAL_30172 = 30172; @@ -18579,7 +18586,6 @@ public final class ObjectID public static final int RUBBLE_34804 = 34804; public static final int RUBBLE_34805 = 34805; public static final int JADFEST_PORTAL = 34826; - public static final int HANDY_PORTAL = 34827; public static final int LARRANS_SMALL_CHEST_34828 = 34828; public static final int LARRANS_BIG_CHEST = 34829; public static final int LARRANS_BIG_CHEST_34830 = 34830; @@ -19539,6 +19545,9 @@ public final class ObjectID public static final int NIGHTMARE_TOPIARY = 37630; public static final int SUPPLIES_37631 = 37631; public static final int BANNER_37726 = 37726; + public static final int RABBIT = 37727; + public static final int RABBIT_37728 = 37728; + public static final int GRAVE_37729 = 37729; public static final int ENERGY_BARRIER_37730 = 37730; public static final int ENERGY_BARRIER_37731 = 37731; public static final int SPORE = 37738; @@ -19581,7 +19590,19 @@ public final class ObjectID public static final int CRATE_37936 = 37936; public static final int DOOR_37937 = 37937; public static final int DOOR_37938 = 37938; + public static final int BROKEN_GOAT_HORN = 37939; + public static final int GATE_37941 = 37941; + public static final int GATE_37942 = 37942; + public static final int GATE_37943 = 37943; + public static final int GATE_37944 = 37944; + public static final int TREE_37946 = 37946; + public static final int DEAD_TREE_37948 = 37948; public static final int SCOREBOARD_37949 = 37949; public static final int COFFIN_37951 = 37951; + public static final int JUNGLE_TREE_37952 = 37952; + public static final int YEW_37953 = 37953; + public static final int TREE_STUMP_37954 = 37954; + public static final int FURNACE_37955 = 37955; + public static final int HANDY_PORTAL = 37957; /* This file is automatically generated. Do not edit. */ } From 13b692f304a9e074485382e25a0f6b3f8cce820f Mon Sep 17 00:00:00 2001 From: RuneLite Cache-Code Autoupdater Date: Wed, 8 Apr 2020 10:32:24 +0000 Subject: [PATCH 08/15] Update Script arguments to 2020-04-08-rev182 --- runelite-api/src/main/java/net/runelite/api/ScriptID.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runelite-api/src/main/java/net/runelite/api/ScriptID.java b/runelite-api/src/main/java/net/runelite/api/ScriptID.java index 73f6fabb29..8d7898e3e7 100644 --- a/runelite-api/src/main/java/net/runelite/api/ScriptID.java +++ b/runelite-api/src/main/java/net/runelite/api/ScriptID.java @@ -225,7 +225,7 @@ public final class ScriptID /** * Builds the grand exchange item search widget */ - @ScriptArguments(integer = 2) + @ScriptArguments(integer = 3) public static final int GE_ITEM_SEARCH = 752; /** From 8570cb0622d6a958ac8fe2a7ab424416561415d9 Mon Sep 17 00:00:00 2001 From: RuneLite Cache-Code Autoupdater Date: Wed, 8 Apr 2020 10:32:24 +0000 Subject: [PATCH 09/15] Update NPC IDs to 2020-04-08-rev182 --- .../src/main/java/net/runelite/api/NpcID.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/runelite-api/src/main/java/net/runelite/api/NpcID.java b/runelite-api/src/main/java/net/runelite/api/NpcID.java index 1520245928..fc3dfa8882 100644 --- a/runelite-api/src/main/java/net/runelite/api/NpcID.java +++ b/runelite-api/src/main/java/net/runelite/api/NpcID.java @@ -5993,6 +5993,7 @@ public final class NpcID public static final int SISTER_SCAROPHIA = 6590; public static final int LAVA_DRAGON = 6593; public static final int ENT = 6594; + public static final int THE_DISAPPOINTING_GELT = 6595; public static final int ZOMBIE_6596 = 6596; public static final int ZOMBIE_6597 = 6597; public static final int ZOMBIE_6598 = 6598; @@ -8482,5 +8483,21 @@ public final class NpcID public static final int SISTER_SENGA = 9471; public static final int SISTER_SENGA_9472 = 9472; public static final int ENT_TRUNK = 9474; + public static final int DUKE_RABBACIO = 9475; + public static final int PAWS = 9476; + public static final int RABBIT_CHEF = 9477; + public static final int GUARD_9478 = 9478; + public static final int MAGIC_EGG = 9479; + public static final int RABBIT_9480 = 9480; + public static final int RABBIT_9481 = 9481; + public static final int RABBIT_9482 = 9482; + public static final int RID = 9483; + public static final int FARMER_MAGGOT = 9484; + public static final int FATHER_BUCKEREK = 9485; + public static final int RESTLESS_GOAT = 9486; + public static final int SHOP_KEEPER_9487 = 9487; + public static final int BARTENDER_9488 = 9488; + public static final int COW_CALF_9489 = 9489; + public static final int CHICKEN_9490 = 9490; /* This file is automatically generated. Do not edit. */ } From ed86daa46dd0ac14ccc5ccd188ba781307133308 Mon Sep 17 00:00:00 2001 From: Max Weber Date: Wed, 8 Apr 2020 04:43:43 -0600 Subject: [PATCH 10/15] runelite-client: update ItemID references --- .../plugins/cluescrolls/clues/EmoteClue.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/EmoteClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/EmoteClue.java index 807dbbeb20..da88eb517f 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/EmoteClue.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/EmoteClue.java @@ -87,14 +87,14 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu new EmoteClue("Bow outside the entrance to the Legends' Guild. Equip iron platelegs, an emerald amulet and an oak longbow.", "Legend's Guild", OUTSIDE_THE_LEGENDS_GUILD_GATES, new WorldPoint(2729, 3349, 0), BOW, item(IRON_PLATELEGS), item(OAK_LONGBOW), item(EMERALD_AMULET)), new EmoteClue("Bow on the ground floor of the Legend's guild. Equip Legend's cape, a dragon battleaxe and an amulet of glory.", "Legend's Guild", OUTSIDE_THE_LEGENDS_GUILD_DOOR, new WorldPoint(2728, 3377, 0), BOW, item(CAPE_OF_LEGENDS), item(DRAGON_BATTLEAXE), any("Any amulet of glory", item(AMULET_OF_GLORY), item(AMULET_OF_GLORY1), item(AMULET_OF_GLORY2), item(AMULET_OF_GLORY3), item(AMULET_OF_GLORY4), item(AMULET_OF_GLORY5), item(AMULET_OF_GLORY6))), new EmoteClue("Bow in the ticket office of the Duel Arena. Equip an iron chain body, leather chaps and coif.", "Duel Arena", MUBARIZS_ROOM_AT_THE_DUEL_ARENA, new WorldPoint(3314, 3241, 0), BOW, item(IRON_CHAINBODY), item(LEATHER_CHAPS), item(COIF)), - new EmoteClue("Bow at the top of the lighthouse. Beware of double agents! Equip a blue dragonhide body, blue dragonhide vambraces and no jewelry.", "Lighthouse", TOP_FLOOR_OF_THE_LIGHTHOUSE, new WorldPoint(2511, 3641, 2), BOW, item(BLUE_DHIDE_BODY), item(BLUE_DHIDE_VAMB), emptySlot("No jewelry", AMULET, RING)), + new EmoteClue("Bow at the top of the lighthouse. Beware of double agents! Equip a blue dragonhide body, blue dragonhide vambraces and no jewelry.", "Lighthouse", TOP_FLOOR_OF_THE_LIGHTHOUSE, new WorldPoint(2511, 3641, 2), BOW, item(BLUE_DHIDE_BODY), item(BLUE_DHIDE_VAMBRACES), emptySlot("No jewelry", AMULET, RING)), new EmoteClue("Blow a kiss between the tables in Shilo Village bank. Beware of double agents! Equip a blue mystic hat, bone spear and rune platebody.", "Shilo Village", SHILO_VILLAGE_BANK, new WorldPoint(2851, 2954, 0), BLOW_KISS, item(MYSTIC_HAT), item(BONE_SPEAR), item(RUNE_PLATEBODY)), new EmoteClue("Blow a kiss in the heart of the lava maze. Equip black dragonhide chaps, a spotted cape and a rolling pin.", "Lava maze", NEAR_A_LADDER_IN_THE_WILDERNESS_LAVA_MAZE, new WorldPoint(3069, 3861, 0), BLOW_KISS, item(BLACK_DHIDE_CHAPS), any("Spotted cape", item(SPOTTED_CAPE), item(SPOTTED_CAPE_10073)), item(ROLLING_PIN)), new EmoteClue("Blow a kiss outside K'ril Tsutsaroth's chamber. Beware of double agents! Equip a zamorak full helm and the shadow sword.", "K'ril's chamber", OUTSIDE_KRIL_TSUTSAROTHS_ROOM, new WorldPoint(2925, 5333, 0), BLOW_KISS, item(ZAMORAK_FULL_HELM), item(SHADOW_SWORD)), new EmoteClue("Cheer at the Druids' Circle. Equip a blue wizard hat, a bronze two-handed sword and HAM boots.", "Taverley stone circle", TAVERLEY_STONE_CIRCLE, new WorldPoint(2924, 3478, 0), CHEER, item(BLUE_WIZARD_HAT), item(BRONZE_2H_SWORD), item(HAM_BOOTS)), new EmoteClue("Cheer in the Edgeville general store. Dance before you talk to me. Equip a brown apron, leather boots and leather gloves.", "Edgeville", NORTH_OF_EVIL_DAVES_HOUSE_IN_EDGEVILLE, new WorldPoint(3080, 3509, 0), CHEER, DANCE, item(BROWN_APRON), item(LEATHER_BOOTS), item(LEATHER_GLOVES)), new EmoteClue("Cheer in the Ogre Pen in the Training Camp. Show you are angry before you talk to me. Equip a green dragonhide body and chaps and a steel square shield.", "King Lathas' camp", OGRE_CAGE_IN_KING_LATHAS_TRAINING_CAMP, new WorldPoint(2527, 3375, 0), CHEER, ANGRY, item(GREEN_DHIDE_BODY), item(GREEN_DHIDE_CHAPS), item(STEEL_SQ_SHIELD)), - new EmoteClue("Cheer in the Entrana church. Beware of double agents! Equip a full set of black dragonhide armour.", "Entrana church", ENTRANA_CHAPEL, new WorldPoint(2852, 3349, 0), CHEER, item(BLACK_DHIDE_VAMB), item(BLACK_DHIDE_CHAPS), item(BLACK_DHIDE_BODY)), + new EmoteClue("Cheer in the Entrana church. Beware of double agents! Equip a full set of black dragonhide armour.", "Entrana church", ENTRANA_CHAPEL, new WorldPoint(2852, 3349, 0), CHEER, item(BLACK_DHIDE_VAMBRACES), item(BLACK_DHIDE_CHAPS), item(BLACK_DHIDE_BODY)), new EmoteClue("Cheer for the monks at Port Sarim. Equip a coif, steel plateskirt and a sapphire necklace.", "Port Sarim", NEAR_THE_ENTRANA_FERRY_IN_PORT_SARIM, new WorldPoint(3047, 3237, 0), CHEER, item(COIF), item(STEEL_PLATESKIRT), item(SAPPHIRE_NECKLACE)), new EmoteClue("Clap in the main exam room in the Exam Centre. Equip a white apron, green gnome boots and leather gloves.", "Digsite", OUTSIDE_THE_DIGSITE_EXAM_CENTRE, new WorldPoint(3361, 3339, 0), CLAP, item(WHITE_APRON), item(GREEN_BOOTS), item(LEATHER_GLOVES)), new EmoteClue("Clap on the causeway to the Wizards' Tower. Equip an iron medium helmet, emerald ring and a white apron.", "Wizards' Tower", ON_THE_BRIDGE_TO_THE_MISTHALIN_WIZARDS_TOWER, new WorldPoint(3113, 3196, 0), CLAP, item(IRON_MED_HELM), item(EMERALD_RING), item(WHITE_APRON)), @@ -113,7 +113,7 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu new EmoteClue("Dance in the dark caves beneath Lumbridge Swamp. Blow a kiss before you talk to me. Equip an air staff, Bronze full helm and an amulet of power.", "Lumbridge swamp caves", LUMBRIDGE_SWAMP_CAVES, new WorldPoint(3168, 9571, 0), DANCE, BLOW_KISS, Varbits.FIRE_PIT_LUMBRIDGE_SWAMP, item(STAFF_OF_AIR), item(BRONZE_FULL_HELM), item(AMULET_OF_POWER)), new EmoteClue("Dance at the cat-doored pyramid in Sophanem. Beware of double agents! Equip a ring of life, an uncharged amulet of glory and an adamant two-handed sword.", "Pyramid Of Sophanem", OUTSIDE_THE_GREAT_PYRAMID_OF_SOPHANEM, new WorldPoint(3294, 2781, 0), DANCE, item(RING_OF_LIFE), item(AMULET_OF_GLORY), item(ADAMANT_2H_SWORD)), new EmoteClue("Dance in the centre of Canifis. Bow before you talk to me. Equip a green gnome robe top, mithril plate legs and an iron two-handed sword.", "Canifis", CENTRE_OF_CANIFIS, new WorldPoint(3492, 3488, 0), DANCE, BOW, item(GREEN_ROBE_TOP), item(MITHRIL_PLATELEGS), item(IRON_2H_SWORD)), - new EmoteClue("Dance in the King Black Dragon's lair. Beware of double agents! Equip a black dragonhide body, black dragonhide vambs and a black dragon mask.", "King black dragon's lair", KING_BLACK_DRAGONS_LAIR, new WorldPoint(2271, 4680, 0), DANCE, item(BLACK_DHIDE_BODY), item(BLACK_DHIDE_VAMB), item(BLACK_DRAGON_MASK)), + new EmoteClue("Dance in the King Black Dragon's lair. Beware of double agents! Equip a black dragonhide body, black dragonhide vambs and a black dragon mask.", "King black dragon's lair", KING_BLACK_DRAGONS_LAIR, new WorldPoint(2271, 4680, 0), DANCE, item(BLACK_DHIDE_BODY), item(BLACK_DHIDE_VAMBRACES), item(BLACK_DRAGON_MASK)), new EmoteClue("Dance at the entrance to the Grand Exchange. Equip a pink skirt, pink robe top and a body tiara.", "Grand Exchange", SOUTH_OF_THE_GRAND_EXCHANGE, new WorldPoint(3165, 3467, 0), DANCE, item(PINK_SKIRT), item(PINK_ROBE_TOP), item(BODY_TIARA)), new EmoteClue("Goblin Salute in the Goblin Village. Beware of double agents! Equip a bandos godsword, a bandos cloak and a bandos platebody.", "Goblin Village", OUTSIDE_MUDKNUCKLES_HUT, new WorldPoint(2956, 3505, 0), GOBLIN_SALUTE, item(BANDOS_PLATEBODY), item(BANDOS_CLOAK), any("Bandos godsword", item(BANDOS_GODSWORD), item(BANDOS_GODSWORD_OR))), new EmoteClue("Headbang in the mine north of Al Kharid. Equip a desert shirt, leather gloves and leather boots.", "Al Kharid mine", AL_KHARID_SCORPION_MINE, new WorldPoint(3299, 3289, 0), HEADBANG, item(DESERT_SHIRT), item(LEATHER_GLOVES), item(LEATHER_BOOTS)), @@ -137,7 +137,7 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu new EmoteClue("Panic on the Wilderness volcano bridge. Beware of double agents! Equip any headband and crozier.", "Wilderness volcano", VOLCANO_IN_THE_NORTHEASTERN_WILDERNESS, new WorldPoint(3368, 3935, 0), PANIC, any("Any headband", range(RED_HEADBAND, BROWN_HEADBAND), range(WHITE_HEADBAND, GREEN_HEADBAND)), any("Any crozier", item(ANCIENT_CROZIER), item(ARMADYL_CROZIER), item(BANDOS_CROZIER), range(SARADOMIN_CROZIER, ZAMORAK_CROZIER))), new EmoteClue("Panic by the pilot on White Wolf Mountain. Beware of double agents! Equip mithril platelegs, a ring of life and a rune axe.", "White Wolf Mountain", GNOME_GLIDER_ON_WHITE_WOLF_MOUNTAIN, new WorldPoint(2847, 3499, 0), PANIC, item(MITHRIL_PLATELEGS), item(RING_OF_LIFE), item(RUNE_AXE)), new EmoteClue("Panic by the big egg where no one dare goes and the ground is burnt. Beware of double agents! Equip a dragon med helm, a TokTz-Ket-Xil, a brine sabre, rune platebody and an uncharged amulet of glory.", "Lava dragon isle", SOUTHEAST_CORNER_OF_LAVA_DRAGON_ISLE, new WorldPoint(3227, 3831, 0), PANIC, item(DRAGON_MED_HELM), item(TOKTZKETXIL), item(BRINE_SABRE), item(RUNE_PLATEBODY), item(AMULET_OF_GLORY)), - new EmoteClue("Panic at the area flowers meet snow. Equip Blue D'hide vambs, a dragon spear and a rune plateskirt.", "Trollweiss mountain", HALFWAY_DOWN_TROLLWEISS_MOUNTAIN, new WorldPoint(2776, 3781, 0), PANIC, item(BLUE_DHIDE_VAMB), item(DRAGON_SPEAR), item(RUNE_PLATESKIRT), item(SLED_4084)), + new EmoteClue("Panic at the area flowers meet snow. Equip Blue D'hide vambs, a dragon spear and a rune plateskirt.", "Trollweiss mountain", HALFWAY_DOWN_TROLLWEISS_MOUNTAIN, new WorldPoint(2776, 3781, 0), PANIC, item(BLUE_DHIDE_VAMBRACES), item(DRAGON_SPEAR), item(RUNE_PLATESKIRT), item(SLED_4084)), new EmoteClue("Do a push up at the bank of the Warrior's guild. Beware of double agents! Equip a dragon battleaxe, a dragon defender and a slayer helm of any kind.", "Warriors' guild", WARRIORS_GUILD_BANK_29047, new WorldPoint(2843, 3543, 0), PUSH_UP, item(DRAGON_BATTLEAXE), any("Dragon defender", item(DRAGON_DEFENDER), item(DRAGON_DEFENDER_T)), any("Any slayer helmet", item(SLAYER_HELMET), item(BLACK_SLAYER_HELMET), item(GREEN_SLAYER_HELMET), item(PURPLE_SLAYER_HELMET), item(RED_SLAYER_HELMET), item(TURQUOISE_SLAYER_HELMET), item(SLAYER_HELMET_I), item(BLACK_SLAYER_HELMET_I), item(GREEN_SLAYER_HELMET_I), item(PURPLE_SLAYER_HELMET_I), item(RED_SLAYER_HELMET_I), item(TURQUOISE_SLAYER_HELMET_I), item(HYDRA_SLAYER_HELMET), item(HYDRA_SLAYER_HELMET_I))), new EmoteClue("Blow a raspberry in the bank of the Warriors' Guild. Beware of double agents! Equip a dragon battleaxe, a slayer helm of any kind and a dragon defender or avernic defender.", "Warriors' guild", WARRIORS_GUILD_BANK_29047, new WorldPoint(2843, 3543, 0), RASPBERRY, item(DRAGON_BATTLEAXE), any("Dragon defender or Avernic defender", item(DRAGON_DEFENDER), item(DRAGON_DEFENDER_T), item(AVERNIC_DEFENDER)), any("Any slayer helmet", item(SLAYER_HELMET), item(BLACK_SLAYER_HELMET), item(GREEN_SLAYER_HELMET), item(PURPLE_SLAYER_HELMET), item(RED_SLAYER_HELMET), item(TURQUOISE_SLAYER_HELMET), item(SLAYER_HELMET_I), item(BLACK_SLAYER_HELMET_I), item(GREEN_SLAYER_HELMET_I), item(PURPLE_SLAYER_HELMET_I), item(RED_SLAYER_HELMET_I), item(TURQUOISE_SLAYER_HELMET_I), item(HYDRA_SLAYER_HELMET), item(HYDRA_SLAYER_HELMET_I))), new EmoteClue("Blow a raspberry at the monkey cage in Ardougne Zoo. Equip a studded leather body, bronze platelegs and a normal staff with no orb.", "Ardougne Zoo", NEAR_THE_PARROTS_IN_ARDOUGNE_ZOO, new WorldPoint(2607, 3282, 0), RASPBERRY, item(STUDDED_BODY), item(BRONZE_PLATELEGS), item(STAFF)), @@ -148,7 +148,7 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu new EmoteClue("Salute in the centre of the mess hall. Beware of double agents! Equip a rune halberd rune platebody, and an amulet of strength.", "Hosidius mess hall", HOSIDIUS_MESS, new WorldPoint(1646, 3631, 0), SALUTE, item(RUNE_HALBERD), item(RUNE_PLATEBODY), item(AMULET_OF_STRENGTH)), new EmoteClue("Shrug in the mine near Rimmington. Equip a gold necklace, a gold ring and a bronze spear.", "Rimmington mine", RIMMINGTON_MINE, new WorldPoint(2976, 3238, 0), SHRUG, item(GOLD_NECKLACE), item(GOLD_RING), item(BRONZE_SPEAR)), new EmoteClue("Shrug in Catherby bank. Yawn before you talk to me. Equip a maple longbow, green d'hide chaps and an iron med helm.", "Catherby", OUTSIDE_CATHERBY_BANK, new WorldPoint(2808, 3440, 0), SHRUG, YAWN, item(MAPLE_LONGBOW), item(GREEN_DHIDE_CHAPS), item(IRON_MED_HELM)), - new EmoteClue("Shrug in the Zamorak temple found in the Eastern Wilderness. Beware of double agents! Equip rune platelegs, an iron platebody and blue dragonhide vambraces.", "Chaos temple", CHAOS_TEMPLE_IN_THE_SOUTHEASTERN_WILDERNESS, new WorldPoint(3239, 3611, 0), SHRUG, item(RUNE_PLATELEGS), item(IRON_PLATEBODY), item(BLUE_DHIDE_VAMB)), + new EmoteClue("Shrug in the Zamorak temple found in the Eastern Wilderness. Beware of double agents! Equip rune platelegs, an iron platebody and blue dragonhide vambraces.", "Chaos temple", CHAOS_TEMPLE_IN_THE_SOUTHEASTERN_WILDERNESS, new WorldPoint(3239, 3611, 0), SHRUG, item(RUNE_PLATELEGS), item(IRON_PLATEBODY), item(BLUE_DHIDE_VAMBRACES)), new EmoteClue("Shrug in the Shayzien command tent. Equip a blue mystic robe bottom, a rune kiteshield and any bob shirt.", "Shayzien command tent", SHAYZIEN_WAR_TENT, new WorldPoint(1555, 3537, 0), SHRUG, item(MYSTIC_ROBE_BOTTOM), item(RUNE_KITESHIELD), range("Any bob shirt", BOBS_RED_SHIRT, BOBS_PURPLE_SHIRT)), new EmoteClue("Slap your head in the centre of the Kourend catacombs. Beware of double agents! Equip the arclight and the amulet of the damned.", "Kourend catacombs", CENTRE_OF_THE_CATACOMBS_OF_KOUREND, new WorldPoint(1663, 10045, 0), SLAP_HEAD, item(ARCLIGHT), any("Amulet of the damned", item(AMULET_OF_THE_DAMNED), item(AMULET_OF_THE_DAMNED_FULL))), new EmoteClue("Spin at the crossroads north of Rimmington. Equip a green gnome hat, cream gnome top and leather chaps.", "Rimmington", ROAD_JUNCTION_NORTH_OF_RIMMINGTON, new WorldPoint(2981, 3276, 0), SPIN, item(GREEN_HAT), item(CREAM_ROBE_TOP), item(LEATHER_CHAPS)), @@ -168,9 +168,9 @@ public class EmoteClue extends ClueScroll implements TextClueScroll, LocationClu new EmoteClue("Yawn in the Varrock library. Equip a green gnome robe top, HAM robe bottom and an iron warhammer.", "Varrock Castle", VARROCK_PALACE_LIBRARY, new WorldPoint(3209, 3492, 0), YAWN, item(GREEN_ROBE_TOP), item(HAM_ROBE), item(IRON_WARHAMMER)), new EmoteClue("Yawn in Draynor Marketplace. Equip studded leather chaps, an iron kiteshield and a steel longsword.", "Draynor", DRAYNOR_VILLAGE_MARKET, new WorldPoint(3083, 3253, 0), YAWN, item(STUDDED_CHAPS), item(IRON_KITESHIELD), item(STEEL_LONGSWORD)), new EmoteClue("Yawn in the Castle Wars lobby. Shrug before you talk to me. Equip a ruby amulet, a mithril scimitar and a Wilderness cape.", "Castle Wars", CASTLE_WARS_BANK, new WorldPoint(2440, 3092, 0), YAWN, SHRUG, item(RUBY_AMULET), item(MITHRIL_SCIMITAR), range("Any team cape", TEAM1_CAPE, TEAM50_CAPE)), - new EmoteClue("Yawn in the rogues' general store. Beware of double agents! Equip an adamant square shield, blue dragon vambraces and a rune pickaxe.", "Rogues general store", NOTERAZZOS_SHOP_IN_THE_WILDERNESS, new WorldPoint(3026, 3701, 0), YAWN, item(ADAMANT_SQ_SHIELD), item(BLUE_DHIDE_VAMB), item(RUNE_PICKAXE)), - new EmoteClue("Yawn at the top of Trollheim. Equip a lava battlestaff, black dragonhide vambraces and a mind shield.", "Trollheim Mountain", ON_TOP_OF_TROLLHEIM_MOUNTAIN, new WorldPoint(2887, 3676, 0), YAWN, any("Lava battlestaff", item(LAVA_BATTLESTAFF), item(LAVA_BATTLESTAFF_21198)), item(BLACK_DHIDE_VAMB), item(MIND_SHIELD)), - new EmoteClue("Yawn in the centre of Arceuus library. Nod your head before you talk to me. Equip blue dragonhide vambraces, adamant boots and an adamant dagger.", "Arceuus library", ENTRANCE_OF_THE_ARCEUUS_LIBRARY, new WorldPoint(1632, 3807, 0), YAWN, YES, item(BLUE_DHIDE_VAMB), item(ADAMANT_BOOTS), item(ADAMANT_DAGGER)), + new EmoteClue("Yawn in the rogues' general store. Beware of double agents! Equip an adamant square shield, blue dragon vambraces and a rune pickaxe.", "Rogues general store", NOTERAZZOS_SHOP_IN_THE_WILDERNESS, new WorldPoint(3026, 3701, 0), YAWN, item(ADAMANT_SQ_SHIELD), item(BLUE_DHIDE_VAMBRACES), item(RUNE_PICKAXE)), + new EmoteClue("Yawn at the top of Trollheim. Equip a lava battlestaff, black dragonhide vambraces and a mind shield.", "Trollheim Mountain", ON_TOP_OF_TROLLHEIM_MOUNTAIN, new WorldPoint(2887, 3676, 0), YAWN, any("Lava battlestaff", item(LAVA_BATTLESTAFF), item(LAVA_BATTLESTAFF_21198)), item(BLACK_DHIDE_VAMBRACES), item(MIND_SHIELD)), + new EmoteClue("Yawn in the centre of Arceuus library. Nod your head before you talk to me. Equip blue dragonhide vambraces, adamant boots and an adamant dagger.", "Arceuus library", ENTRANCE_OF_THE_ARCEUUS_LIBRARY, new WorldPoint(1632, 3807, 0), YAWN, YES, item(BLUE_DHIDE_VAMBRACES), item(ADAMANT_BOOTS), item(ADAMANT_DAGGER)), new EmoteClue("Swing a bullroarer at the top of the watchtower. Beware of double agents! Equip a dragon plateskirt, climbing boots and a dragon chainbody.", "Yanille watchtower", TOP_FLOOR_OF_THE_YANILLE_WATCHTOWER, new WorldPoint(2932, 4712, 0), BULL_ROARER, any("Dragon plateskirt", item(DRAGON_PLATESKIRT), item(DRAGON_PLATESKIRT_G)), item(CLIMBING_BOOTS), any("Dragon chainbody", item(DRAGON_CHAINBODY_3140), item(DRAGON_CHAINBODY_G)), item(ItemID.BULL_ROARER)), new EmoteClue("Blow a raspberry at Gypsy Aris in her tent. Equip a gold ring and a gold necklace.", "Varrock", GYPSY_TENT_ENTRANCE, new WorldPoint(3203, 3424, 0), RASPBERRY, item(GOLD_RING), item(GOLD_NECKLACE)), new EmoteClue("Bow to Brugsen Bursen at the Grand Exchange.", "Grand Exchange", null, new WorldPoint(3164, 3477, 0), BOW), From 75b29026f99ab84c732c66d3652042e4e8010735 Mon Sep 17 00:00:00 2001 From: Tomas Slusny Date: Wed, 8 Apr 2020 15:17:38 +0200 Subject: [PATCH 11/15] Mock ConfigManager in ItemStatOverlayTest to inject TooltipManager Signed-off-by: Tomas Slusny --- .../client/plugins/itemstats/ItemStatOverlayTest.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/itemstats/ItemStatOverlayTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/itemstats/ItemStatOverlayTest.java index b3826df992..a3fb1b556a 100644 --- a/runelite-client/src/test/java/net/runelite/client/plugins/itemstats/ItemStatOverlayTest.java +++ b/runelite-client/src/test/java/net/runelite/client/plugins/itemstats/ItemStatOverlayTest.java @@ -34,6 +34,7 @@ import net.runelite.api.EquipmentInventorySlot; import net.runelite.api.InventoryID; import net.runelite.api.Item; import net.runelite.api.ItemContainer; +import net.runelite.client.config.ConfigManager; import net.runelite.client.game.ItemManager; import net.runelite.client.util.Text; import net.runelite.http.api.item.ItemEquipmentStats; @@ -102,6 +103,10 @@ public class ItemStatOverlayTest @Bind ItemStatConfig config; + @Mock + @Bind + ConfigManager configManager; + @Mock @Bind ItemManager itemManager; From edcfeb25fdf99d47d6fce8b9b7c4eaa30f85b687 Mon Sep 17 00:00:00 2001 From: Adam Date: Thu, 9 Apr 2020 13:40:47 -0400 Subject: [PATCH 12/15] screenshot plugin: fix screenshot friend deaths to not screenshot own death --- .../runelite/client/plugins/screenshot/ScreenshotPlugin.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/screenshot/ScreenshotPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/screenshot/ScreenshotPlugin.java index fd37108e7e..b508bbac3f 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/screenshot/ScreenshotPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/screenshot/ScreenshotPlugin.java @@ -249,7 +249,7 @@ public class ScreenshotPlugin extends Plugin { takeScreenshot("Death", "Deaths"); } - else if ((player.isClanMember() || player.isFriend()) && config.screenshotFriendDeath() && player.getCanvasTilePoly() != null) + else if (player != client.getLocalPlayer() && (player.isClanMember() || player.isFriend()) && config.screenshotFriendDeath() && player.getCanvasTilePoly() != null) { takeScreenshot("Death " + player.getName(), "Deaths"); } From a8d4bff423b8441f4f0b2fe910dbd003b7b6c21a Mon Sep 17 00:00:00 2001 From: Max Weber Date: Tue, 7 Apr 2020 02:43:17 -0600 Subject: [PATCH 13/15] camera: add option to invert camera mouse controls --- .../main/java/net/runelite/api/Client.java | 10 +++++++++ .../client/plugins/camera/CameraConfig.java | 22 +++++++++++++++++++ .../client/plugins/camera/CameraPlugin.java | 13 +++++++++-- 3 files changed, 43 insertions(+), 2 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Client.java b/runelite-api/src/main/java/net/runelite/api/Client.java index e43a067701..2fbd789c9f 100644 --- a/runelite-api/src/main/java/net/runelite/api/Client.java +++ b/runelite-api/src/main/java/net/runelite/api/Client.java @@ -1184,6 +1184,16 @@ public interface Client extends GameEngine */ void setCameraPitchRelaxerEnabled(boolean enabled); + /** + * Sets if the moving the camera horizontally should be backwards + */ + void setInvertYaw(boolean invertYaw); + + /** + * Sets if the moving the camera vertically should be backwards + */ + void setInvertPitch(boolean invertPitch); + /** * Gets the world map overview. * diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/camera/CameraConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/camera/CameraConfig.java index 32c2e3ba0d..4c406af095 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/camera/CameraConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/camera/CameraConfig.java @@ -158,4 +158,26 @@ public interface CameraConfig extends Config { return true; } + + @ConfigItem( + keyName = "invertYaw", + name = "Invert Yaw", + description = "Makes moving the camera horizontally with the mouse backwards", + position = 11 + ) + default boolean invertYaw() + { + return false; + } + + @ConfigItem( + keyName = "invertPitch", + name = "Invert Pitch", + description = "Makes moving the camera vertically with the mouse backwards", + position = 12 + ) + default boolean invertPitch() + { + return false; + } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/camera/CameraPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/camera/CameraPlugin.java index 0b2c0c600f..945f7434f5 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/camera/CameraPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/camera/CameraPlugin.java @@ -113,7 +113,7 @@ public class CameraPlugin extends Plugin implements KeyListener, MouseListener rightClick = false; middleClick = false; menuHasEntries = false; - client.setCameraPitchRelaxerEnabled(config.relaxCameraPitch()); + copyConfigs(); keyManager.registerKeyListener(this); mouseManager.registerMouseListener(this); overlayManager.add(cameraOverlay); @@ -124,11 +124,20 @@ public class CameraPlugin extends Plugin implements KeyListener, MouseListener { overlayManager.remove(cameraOverlay); client.setCameraPitchRelaxerEnabled(false); + client.setInvertYaw(false); + client.setInvertPitch(false); keyManager.unregisterKeyListener(this); mouseManager.unregisterMouseListener(this); controlDown = false; } + void copyConfigs() + { + client.setCameraPitchRelaxerEnabled(config.relaxCameraPitch()); + client.setInvertYaw(config.invertYaw()); + client.setInvertPitch(config.invertPitch()); + } + @Subscribe public void onMenuEntryAdded(MenuEntryAdded menuEntryAdded) { @@ -238,7 +247,7 @@ public class CameraPlugin extends Plugin implements KeyListener, MouseListener @Subscribe public void onConfigChanged(ConfigChanged ev) { - client.setCameraPitchRelaxerEnabled(config.relaxCameraPitch()); + copyConfigs(); } @Override From 45c229bc32a3881b870f82b9b63ae294d7322a2e Mon Sep 17 00:00:00 2001 From: Lucas Snel Date: Thu, 9 Apr 2020 23:59:54 +0200 Subject: [PATCH 14/15] combatlevel plugin: add option for showing precise combat level --- .../client/plugins/combatlevel/CombatLevelConfig.java | 10 ++++++++++ .../client/plugins/combatlevel/CombatLevelPlugin.java | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/combatlevel/CombatLevelConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/combatlevel/CombatLevelConfig.java index cc82bcea65..ce4e440eae 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/combatlevel/CombatLevelConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/combatlevel/CombatLevelConfig.java @@ -41,6 +41,16 @@ public interface CombatLevelConfig extends Config return true; } + @ConfigItem( + keyName = "showPreciseCombatLevel", + name = "Show precise combat level", + description = "Displays your combat level with accurate decimals." + ) + default boolean showPreciseCombatLevel() + { + return true; + } + @ConfigItem( keyName = "wildernessAttackLevelRange", name = "Show level range in wilderness", diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/combatlevel/CombatLevelPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/combatlevel/CombatLevelPlugin.java index aaac5dce7d..b2b4944521 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/combatlevel/CombatLevelPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/combatlevel/CombatLevelPlugin.java @@ -125,7 +125,7 @@ public class CombatLevelPlugin extends Plugin } Widget combatLevelWidget = client.getWidget(WidgetInfo.COMBAT_LEVEL); - if (combatLevelWidget == null) + if (combatLevelWidget == null || !config.showPreciseCombatLevel()) { return; } From ec3fbabbe247db7b067e7a7c8f07f33f5f7d7768 Mon Sep 17 00:00:00 2001 From: Max Weber Date: Wed, 8 Apr 2020 07:38:52 -0600 Subject: [PATCH 15/15] grounditems: don't crash when having a duplicate highlight value --- .../grounditems/GroundItemsPlugin.java | 38 +++++++++++-------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/grounditems/GroundItemsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/grounditems/GroundItemsPlugin.java index f6e758043c..157a16d98d 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/grounditems/GroundItemsPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/grounditems/GroundItemsPlugin.java @@ -28,7 +28,7 @@ package net.runelite.client.plugins.grounditems; import com.google.common.cache.CacheBuilder; import com.google.common.cache.LoadingCache; import com.google.common.collect.EvictingQueue; -import com.google.common.collect.ImmutableMap; +import com.google.common.collect.ImmutableList; import com.google.inject.Provides; import java.awt.Color; import java.awt.Rectangle; @@ -48,6 +48,7 @@ import javax.inject.Inject; import lombok.AccessLevel; import lombok.Getter; import lombok.Setter; +import lombok.Value; import net.runelite.api.Client; import net.runelite.api.Constants; import net.runelite.api.GameState; @@ -100,6 +101,13 @@ import net.runelite.client.util.Text; ) public class GroundItemsPlugin extends Plugin { + @Value + static class PriceHighlight + { + private final int price; + private final Color color; + } + // ItemID for coins private static final int COINS = ItemID.COINS_995; // Ground item menu options @@ -168,7 +176,7 @@ public class GroundItemsPlugin extends Plugin @Getter private final Map collectedGroundItems = new LinkedHashMap<>(); - private Map priceChecks = ImmutableMap.of(); + private List priceChecks = ImmutableList.of(); private LoadingCache highlightedItems; private LoadingCache hiddenItems; private final Queue droppedItemQueue = EvictingQueue.create(16); // recently dropped items @@ -434,30 +442,30 @@ public class GroundItemsPlugin extends Plugin .build(new WildcardMatchLoader(hiddenItemList)); // Cache colors - ImmutableMap.Builder priceCheckBuilder = ImmutableMap.builder(); + ImmutableList.Builder priceCheckBuilder = ImmutableList.builder(); if (config.getHighlightOverValue() > 0) { - priceCheckBuilder.put(config.getHighlightOverValue(), config.highlightedColor()); + priceCheckBuilder.add(new PriceHighlight(config.getHighlightOverValue(), config.highlightedColor())); } if (config.insaneValuePrice() > 0) { - priceCheckBuilder.put(config.insaneValuePrice(), config.insaneValueColor()); + priceCheckBuilder.add(new PriceHighlight(config.insaneValuePrice(), config.insaneValueColor())); } if (config.highValuePrice() > 0) { - priceCheckBuilder.put(config.highValuePrice(), config.highValueColor()); + priceCheckBuilder.add(new PriceHighlight(config.highValuePrice(), config.highValueColor())); } if (config.mediumValuePrice() > 0) { - priceCheckBuilder.put(config.mediumValuePrice(), config.mediumValueColor()); + priceCheckBuilder.add(new PriceHighlight(config.mediumValuePrice(), config.mediumValueColor())); } if (config.lowValuePrice() > 0) { - priceCheckBuilder.put(config.lowValuePrice(), config.lowValueColor()); + priceCheckBuilder.add(new PriceHighlight(config.lowValuePrice(), config.lowValueColor())); } priceChecks = priceCheckBuilder.build(); @@ -589,26 +597,26 @@ public class GroundItemsPlugin extends Plugin } ValueCalculationMode mode = config.valueCalculationMode(); - for (Map.Entry entry : priceChecks.entrySet()) + for (PriceHighlight highlight : priceChecks) { switch (mode) { case GE: - if (gePrice > entry.getKey()) + if (gePrice > highlight.getPrice()) { - return entry.getValue(); + return highlight.getColor(); } break; case HA: - if (haPrice > entry.getKey()) + if (haPrice > highlight.getPrice()) { - return entry.getValue(); + return highlight.getColor(); } break; default: // case HIGHEST - if (gePrice > entry.getKey() || haPrice > entry.getKey()) + if (gePrice > highlight.getPrice() || haPrice > highlight.getPrice()) { - return entry.getValue(); + return highlight.getColor(); } break; }