From 80370e6d8e2270a5a9c114db1606289d293c901b Mon Sep 17 00:00:00 2001 From: Broooklyn <54762282+Broooklyn@users.noreply.github.com> Date: Wed, 24 Mar 2021 13:03:59 -0400 Subject: [PATCH] fishing: Add Tempoross IDs and config to highlight bubbling spots Use star import for NpcIDs --- .../net/runelite/client/game/FishingSpot.java | 103 +----------------- .../client/plugins/fishing/FishingConfig.java | 12 ++ .../fishing/FishingSpotMinimapOverlay.java | 3 + .../plugins/fishing/FishingSpotOverlay.java | 5 + 4 files changed, 25 insertions(+), 98 deletions(-) diff --git a/runelite-client/src/main/java/net/runelite/client/game/FishingSpot.java b/runelite-client/src/main/java/net/runelite/client/game/FishingSpot.java index a3de9412a2..6ab929d173 100644 --- a/runelite-client/src/main/java/net/runelite/client/game/FishingSpot.java +++ b/runelite-client/src/main/java/net/runelite/client/game/FishingSpot.java @@ -28,103 +28,7 @@ import com.google.common.collect.ImmutableMap; import java.util.Map; import lombok.Getter; import net.runelite.api.ItemID; -import static net.runelite.api.NpcID.FISHING_SPOT; -import static net.runelite.api.NpcID.FISHING_SPOT_10513; -import static net.runelite.api.NpcID.FISHING_SPOT_10514; -import static net.runelite.api.NpcID.FISHING_SPOT_10515; -import static net.runelite.api.NpcID.FISHING_SPOT_1497; -import static net.runelite.api.NpcID.FISHING_SPOT_1498; -import static net.runelite.api.NpcID.FISHING_SPOT_1499; -import static net.runelite.api.NpcID.FISHING_SPOT_1510; -import static net.runelite.api.NpcID.FISHING_SPOT_1511; -import static net.runelite.api.NpcID.FISHING_SPOT_1514; -import static net.runelite.api.NpcID.FISHING_SPOT_1517; -import static net.runelite.api.NpcID.FISHING_SPOT_1518; -import static net.runelite.api.NpcID.FISHING_SPOT_1519; -import static net.runelite.api.NpcID.FISHING_SPOT_1520; -import static net.runelite.api.NpcID.FISHING_SPOT_1521; -import static net.runelite.api.NpcID.FISHING_SPOT_1522; -import static net.runelite.api.NpcID.FISHING_SPOT_1523; -import static net.runelite.api.NpcID.FISHING_SPOT_1524; -import static net.runelite.api.NpcID.FISHING_SPOT_1525; -import static net.runelite.api.NpcID.FISHING_SPOT_1528; -import static net.runelite.api.NpcID.FISHING_SPOT_1530; -import static net.runelite.api.NpcID.FISHING_SPOT_1535; -import static net.runelite.api.NpcID.FISHING_SPOT_1536; -import static net.runelite.api.NpcID.FISHING_SPOT_1542; -import static net.runelite.api.NpcID.FISHING_SPOT_1544; -import static net.runelite.api.NpcID.FISHING_SPOT_2653; -import static net.runelite.api.NpcID.FISHING_SPOT_2654; -import static net.runelite.api.NpcID.FISHING_SPOT_2655; -import static net.runelite.api.NpcID.FISHING_SPOT_3317; -import static net.runelite.api.NpcID.FISHING_SPOT_3419; -import static net.runelite.api.NpcID.FISHING_SPOT_3657; -import static net.runelite.api.NpcID.FISHING_SPOT_3913; -import static net.runelite.api.NpcID.FISHING_SPOT_3914; -import static net.runelite.api.NpcID.FISHING_SPOT_3915; -import static net.runelite.api.NpcID.FISHING_SPOT_4079; -import static net.runelite.api.NpcID.FISHING_SPOT_4080; -import static net.runelite.api.NpcID.FISHING_SPOT_4081; -import static net.runelite.api.NpcID.FISHING_SPOT_4082; -import static net.runelite.api.NpcID.FISHING_SPOT_4316; -import static net.runelite.api.NpcID.FISHING_SPOT_4476; -import static net.runelite.api.NpcID.FISHING_SPOT_4477; -import static net.runelite.api.NpcID.FISHING_SPOT_4710; -import static net.runelite.api.NpcID.FISHING_SPOT_4712; -import static net.runelite.api.NpcID.FISHING_SPOT_4713; -import static net.runelite.api.NpcID.FISHING_SPOT_4714; -import static net.runelite.api.NpcID.FISHING_SPOT_5233; -import static net.runelite.api.NpcID.FISHING_SPOT_5234; -import static net.runelite.api.NpcID.FISHING_SPOT_5820; -import static net.runelite.api.NpcID.FISHING_SPOT_5821; -import static net.runelite.api.NpcID.FISHING_SPOT_6488; -import static net.runelite.api.NpcID.FISHING_SPOT_7155; -import static net.runelite.api.NpcID.FISHING_SPOT_7199; -import static net.runelite.api.NpcID.FISHING_SPOT_7200; -import static net.runelite.api.NpcID.FISHING_SPOT_7323; -import static net.runelite.api.NpcID.FISHING_SPOT_7459; -import static net.runelite.api.NpcID.FISHING_SPOT_7460; -import static net.runelite.api.NpcID.FISHING_SPOT_7461; -import static net.runelite.api.NpcID.FISHING_SPOT_7462; -import static net.runelite.api.NpcID.FISHING_SPOT_7465; -import static net.runelite.api.NpcID.FISHING_SPOT_7466; -import static net.runelite.api.NpcID.FISHING_SPOT_7467; -import static net.runelite.api.NpcID.FISHING_SPOT_7469; -import static net.runelite.api.NpcID.FISHING_SPOT_7470; -import static net.runelite.api.NpcID.FISHING_SPOT_7730; -import static net.runelite.api.NpcID.FISHING_SPOT_7731; -import static net.runelite.api.NpcID.FISHING_SPOT_7732; -import static net.runelite.api.NpcID.FISHING_SPOT_7733; -import static net.runelite.api.NpcID.FISHING_SPOT_7946; -import static net.runelite.api.NpcID.FISHING_SPOT_7947; -import static net.runelite.api.NpcID.FISHING_SPOT_8523; -import static net.runelite.api.NpcID.FISHING_SPOT_8525; -import static net.runelite.api.NpcID.FISHING_SPOT_8526; -import static net.runelite.api.NpcID.FISHING_SPOT_8527; -import static net.runelite.api.NpcID.FISHING_SPOT_9171; -import static net.runelite.api.NpcID.FISHING_SPOT_9172; -import static net.runelite.api.NpcID.FISHING_SPOT_9173; -import static net.runelite.api.NpcID.FISHING_SPOT_9174; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1506; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1507; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1508; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1509; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1513; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1515; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1516; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1526; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_1527; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_3417; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_3418; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_6825; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_7463; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_7464; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_7468; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_7676; -import static net.runelite.api.NpcID.ROD_FISHING_SPOT_8524; -import static net.runelite.api.NpcID.FISHING_SPOT_4928; -import static net.runelite.api.NpcID.FISHING_SPOT_6784; +import static net.runelite.api.NpcID.*; @Getter public enum FishingSpot @@ -142,7 +46,7 @@ public enum FishingSpot FISHING_SPOT_3914, FISHING_SPOT_5820, FISHING_SPOT_7199, FISHING_SPOT_7460, FISHING_SPOT_7465, FISHING_SPOT_7470, FISHING_SPOT_7946, FISHING_SPOT_9173, FISHING_SPOT_9174, - FISHING_SPOT_10515 + FISHING_SPOT_10515, FISHING_SPOT_10635 ), SHARK("Shark, Bass", "Shark", ItemID.RAW_SHARK, FISHING_SPOT_1511, FISHING_SPOT_1520, FISHING_SPOT_3419, @@ -175,6 +79,9 @@ public enum FishingSpot MINNOW("Minnow", ItemID.MINNOW, FISHING_SPOT_7730, FISHING_SPOT_7731, FISHING_SPOT_7732, FISHING_SPOT_7733 ), + HARPOONFISH("Harpoonfish", ItemID.RAW_HARPOONFISH, + FISHING_SPOT_10565, FISHING_SPOT_10568, FISHING_SPOT_10569 + ), INFERNAL_EEL("Infernal Eel", ItemID.INFERNAL_EEL, ROD_FISHING_SPOT_7676 ), diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingConfig.java b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingConfig.java index 6e68c4270a..4aed364903 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingConfig.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingConfig.java @@ -114,6 +114,18 @@ public interface FishingConfig extends Config return Color.GREEN; } + @Alpha + @ConfigItem( + keyName = "harpoonfishOverlayColor", + name = "Harpoonfish Overlay", + description = "Color of overlays for bubbling Harpoonfish spots", + position = 6 + ) + default Color getHarpoonfishOverlayColor() + { + return Color.GREEN; + } + @ConfigItem( position = 7, keyName = "statTimeout", diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingSpotMinimapOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingSpotMinimapOverlay.java index 7b995a9945..e0a62ccfe7 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingSpotMinimapOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingSpotMinimapOverlay.java @@ -32,6 +32,7 @@ import lombok.AccessLevel; import lombok.Setter; import net.runelite.api.GraphicID; import net.runelite.api.NPC; +import net.runelite.api.NpcID; import net.runelite.client.game.FishingSpot; import net.runelite.client.ui.overlay.Overlay; import net.runelite.client.ui.overlay.OverlayLayer; @@ -79,6 +80,8 @@ class FishingSpotMinimapOverlay extends Overlay Color color = npc.getGraphic() == GraphicID.FLYING_FISH ? config.getMinnowsOverlayColor() + : npc.getId() == NpcID.FISHING_SPOT_10569 + ? config.getHarpoonfishOverlayColor() : config.getOverlayColor(); net.runelite.api.Point minimapLocation = npc.getMinimapLocation(); diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingSpotOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingSpotOverlay.java index 82c710a214..a71d9faf26 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingSpotOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingSpotOverlay.java @@ -37,6 +37,7 @@ import lombok.Setter; import net.runelite.api.Client; import net.runelite.api.GraphicID; import net.runelite.api.NPC; +import net.runelite.api.NpcID; import net.runelite.api.Perspective; import net.runelite.api.Point; import net.runelite.api.coords.LocalPoint; @@ -114,6 +115,10 @@ class FishingSpotOverlay extends Overlay { color = config.getAerialOverlayColor(); } + else if (spot == FishingSpot.HARPOONFISH && npc.getId() == NpcID.FISHING_SPOT_10569) + { + color = config.getHarpoonfishOverlayColor(); + } else { color = config.getOverlayColor();