From 6d99d3abcb17f61f8f1b245e3da92398864786f5 Mon Sep 17 00:00:00 2001 From: aquivers <40808928+aquivers@users.noreply.github.com> Date: Tue, 31 Jul 2018 10:36:21 +0200 Subject: [PATCH] Add spade requirement reminder to fairy ring clues (#4585) Fixes #4449 --- .../plugins/cluescrolls/ClueScrollPlugin.java | 4 ++-- .../plugins/cluescrolls/clues/CoordinateClue.java | 4 ++-- .../plugins/cluescrolls/clues/FairyRingClue.java | 13 +++++++++++++ 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java index b6e5379212..4ac8fab050 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/ClueScrollPlugin.java @@ -374,13 +374,13 @@ public class ClueScrollPlugin extends Plugin } } - if (clue instanceof CoordinateClue) + if (clue instanceof CoordinateClue || clue instanceof FairyRingClue) { ItemContainer container = client.getItemContainer(InventoryID.INVENTORY); if (container != null) { - equippedItems = container.getItems(); + inventoryItems = container.getItems(); } } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CoordinateClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CoordinateClue.java index bc211e674c..5a84d40508 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CoordinateClue.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/CoordinateClue.java @@ -57,9 +57,9 @@ public class CoordinateClue extends ClueScroll implements TextClueScroll, Locati .left("Click the clue scroll along the edge of your world map to see where you should dig.") .build()); - if (plugin.getEquippedItems() != null) + if (plugin.getInventoryItems() != null) { - if (!HAS_SPADE.fulfilledBy(plugin.getEquippedItems())) + if (!HAS_SPADE.fulfilledBy(plugin.getInventoryItems())) { panelComponent.getChildren().add(LineComponent.builder().left("").build()); panelComponent.getChildren().add(LineComponent.builder().left("Requires Spade!").leftColor(Color.RED).build()); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/FairyRingClue.java b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/FairyRingClue.java index 2aae9d4e18..590f31ee68 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/FairyRingClue.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/cluescrolls/clues/FairyRingClue.java @@ -29,11 +29,14 @@ import java.awt.Color; import java.awt.Graphics2D; import java.util.Set; import lombok.Getter; +import net.runelite.api.ItemID; import net.runelite.api.coords.LocalPoint; import net.runelite.api.coords.WorldPoint; import static net.runelite.client.plugins.cluescrolls.ClueScrollOverlay.TITLED_CONTENT_COLOR; import net.runelite.client.plugins.cluescrolls.ClueScrollPlugin; import static net.runelite.client.plugins.cluescrolls.ClueScrollPlugin.SPADE_IMAGE; +import net.runelite.client.plugins.cluescrolls.clues.emote.ItemRequirement; +import net.runelite.client.plugins.cluescrolls.clues.emote.SingleItemRequirement; import net.runelite.client.ui.overlay.OverlayUtil; import net.runelite.client.ui.overlay.components.LineComponent; import net.runelite.client.ui.overlay.components.PanelComponent; @@ -57,6 +60,7 @@ public class FairyRingClue extends ClueScroll implements TextClueScroll, Locatio private String text; private WorldPoint location; + private static final ItemRequirement HAS_SPADE = new SingleItemRequirement(ItemID.SPADE); private FairyRingClue(String text, WorldPoint location) { @@ -77,6 +81,15 @@ public class FairyRingClue extends ClueScroll implements TextClueScroll, Locatio panelComponent.getChildren().add(LineComponent.builder() .left("Travel to the fairy ring to see where to dig.") .build()); + + if (plugin.getInventoryItems() != null) + { + if (!HAS_SPADE.fulfilledBy(plugin.getInventoryItems())) + { + panelComponent.getChildren().add(LineComponent.builder().left("").build()); + panelComponent.getChildren().add(LineComponent.builder().left("Requires Spade!").leftColor(Color.RED).build()); + } + } } @Override