diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java index 69f6c4e0d8..e6ab671b2c 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/agility/AgilityPlugin.java @@ -25,7 +25,6 @@ package net.runelite.client.plugins.agility; import com.google.common.eventbus.Subscribe; -import com.google.common.primitives.Ints; import com.google.inject.Provides; import java.util.Arrays; import java.util.Collection; @@ -142,8 +141,8 @@ public class AgilityPlugin extends Plugin lastAgilityXp = agilityXp; // Get course - Courses course = Courses.getCourse(skillGained); - if (course == null || !Ints.contains(client.getMapRegions(), course.getRegionId())) + Courses course = Courses.getCourse(client.getLocalPlayer().getWorldLocation().getRegionID()); + if (course == null || Math.abs(course.getLastObstacleXp() - skillGained) > 1) { return; } diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/agility/Courses.java b/runelite-client/src/main/java/net/runelite/client/plugins/agility/Courses.java index 40f8c72dbb..d5bf40f19b 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/agility/Courses.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/agility/Courses.java @@ -48,11 +48,12 @@ public enum Courses RELLEKA(780.0, 475, 10553), ARDOUGNE(793.0, 529, 10547); - private final static Map courseXps = new HashMap<>(); + private final static Map coursesByRegion = new HashMap<>(); @Getter private final double totalXp; + @Getter private final int lastObstacleXp; @Getter @@ -62,12 +63,12 @@ public enum Courses { for (Courses course : values()) { - courseXps.put(course.lastObstacleXp, course); + coursesByRegion.put(course.regionId, course); } } - public static Courses getCourse(int exp) + public static Courses getCourse(int regionId) { - return courseXps.get(exp); + return coursesByRegion.get(regionId); } }