From 96c3f07c4b3ccbe48753424392b75f0dd5688424 Mon Sep 17 00:00:00 2001 From: Levi Schuck Date: Mon, 23 Jul 2018 18:33:58 -0500 Subject: [PATCH] Fix level 126 next goal to be max XP (200,000,000) instead of -1 xp --- runelite-api/src/main/java/net/runelite/api/Experience.java | 1 + .../net/runelite/client/plugins/xptracker/XpInfoBox.java | 5 ++++- .../runelite/client/plugins/xptracker/XpSnapshotSingle.java | 2 ++ .../runelite/client/plugins/xptracker/XpStateSingle.java | 6 +++++- 4 files changed, 12 insertions(+), 2 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Experience.java b/runelite-api/src/main/java/net/runelite/api/Experience.java index 736df2574d..5f17b627e0 100644 --- a/runelite-api/src/main/java/net/runelite/api/Experience.java +++ b/runelite-api/src/main/java/net/runelite/api/Experience.java @@ -40,6 +40,7 @@ public class Experience * The maximum virtual skill level for any skill (200M experience). */ public static final int MAX_VIRT_LEVEL = 126; + public static final int MAX_SKILL_XP = 200_000_000; /** * The total experience required for each skill level. diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpInfoBox.java b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpInfoBox.java index d41abdb55b..e44ee342be 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpInfoBox.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpInfoBox.java @@ -41,6 +41,7 @@ import lombok.AccessLevel; import lombok.Getter; import lombok.extern.slf4j.Slf4j; import net.runelite.api.Client; +import net.runelite.api.Experience; import net.runelite.api.Skill; import net.runelite.client.game.SkillIconManager; import net.runelite.client.ui.ColorScheme; @@ -200,7 +201,9 @@ class XpInfoBox extends JPanel progressBar.setValue(xpSnapshotSingle.getSkillProgressToGoal()); progressBar.setCenterLabel(xpSnapshotSingle.getSkillProgressToGoal() + "%"); progressBar.setLeftLabel("Lvl. " + xpSnapshotSingle.getStartLevel()); - progressBar.setRightLabel("Lvl. " + xpSnapshotSingle.getEndLevel()); + progressBar.setRightLabel(xpSnapshotSingle.getEndGoalXp() == Experience.MAX_SKILL_XP + ? "200M" + : "Lvl. " + xpSnapshotSingle.getEndLevel()); progressBar.setToolTipText(String.format( HTML_TOOL_TIP_TEMPLATE, diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpSnapshotSingle.java b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpSnapshotSingle.java index 0745078a98..2e0a1f3a02 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpSnapshotSingle.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpSnapshotSingle.java @@ -33,6 +33,8 @@ class XpSnapshotSingle { private int startLevel; private int endLevel; + private int startGoalXp; + private int endGoalXp; private int xpGainedInSession; private int xpRemainingToGoal; private int xpPerHour; diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpStateSingle.java b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpStateSingle.java index 82a8849b0c..22de3b5471 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpStateSingle.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpStateSingle.java @@ -220,7 +220,9 @@ class XpStateSingle if (goalEndXp <= 0 || currentXp > goalEndXp) { int currentLevel = Experience.getLevelForXp(currentXp); - endLevelExp = currentLevel + 1 <= Experience.MAX_VIRT_LEVEL ? Experience.getXpForLevel(currentLevel + 1) : -1; + endLevelExp = currentLevel + 1 <= Experience.MAX_VIRT_LEVEL + ? Experience.getXpForLevel(currentLevel + 1) + : Experience.MAX_SKILL_XP; } else { @@ -248,6 +250,8 @@ class XpStateSingle .actionsRemainingToGoal(getActionsRemaining()) .actionsPerHour(getActionsHr()) .timeTillGoal(getTimeTillLevel()) + .startGoalXp(startLevelExp) + .endGoalXp(endLevelExp) .build(); } }