status bars: Override hitpoints and prayer max values in LMS

While playing Last Man Standing, your hitpoints and prayer values behave
as though their maximum values were 99 instead of their actual max
values.
This commit is contained in:
Jordan Atwood
2022-05-26 15:21:55 -07:00
parent 88e39ab152
commit c7ea7a7e14

View File

@@ -34,6 +34,7 @@ import java.util.EnumMap;
import java.util.Map;
import javax.inject.Inject;
import net.runelite.api.Client;
import net.runelite.api.Experience;
import net.runelite.api.MenuEntry;
import net.runelite.api.Point;
import net.runelite.api.Prayer;
@@ -117,7 +118,7 @@ class StatusBarsOverlay extends Overlay
{
barRenderers.put(BarMode.DISABLED, null);
barRenderers.put(BarMode.HITPOINTS, new BarRenderer(
() -> client.getRealSkillLevel(Skill.HITPOINTS),
() -> inLms() ? Experience.MAX_REAL_LEVEL : client.getRealSkillLevel(Skill.HITPOINTS),
() -> client.getBoostedSkillLevel(Skill.HITPOINTS),
() -> getRestoreValue(Skill.HITPOINTS.getName()),
() ->
@@ -170,7 +171,7 @@ class StatusBarsOverlay extends Overlay
}
));
barRenderers.put(BarMode.PRAYER, new BarRenderer(
() -> client.getRealSkillLevel(Skill.PRAYER),
() -> inLms() ? Experience.MAX_REAL_LEVEL : client.getRealSkillLevel(Skill.PRAYER),
() -> client.getBoostedSkillLevel(Skill.PRAYER),
() -> getRestoreValue(Skill.PRAYER.getName()),
() ->
@@ -349,4 +350,9 @@ class StatusBarsOverlay extends Overlay
return ImageUtil.resizeCanvas(image, ICON_DIMENSIONS.width, ICON_DIMENSIONS.height);
}
private boolean inLms()
{
return client.getWidget(WidgetInfo.LMS_KDA) != null;
}
}