From d38c9b068475083a94ff46bb601694321de9b1d0 Mon Sep 17 00:00:00 2001 From: unknown Date: Sun, 4 Nov 2018 18:28:23 +1030 Subject: [PATCH] Add potential reward to the barrows overlay - Add potential reward to the barrows side overlay - Fix checkboxes on the side for brothers slain All credits to https://github.com/runelite/runelite/pull/1858 --- .../main/java/net/runelite/api/Varbits.java | 2 ++ .../barrows/BarrowsBrotherSlainOverlay.java | 18 ++++++++++++++---- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/runelite-api/src/main/java/net/runelite/api/Varbits.java b/runelite-api/src/main/java/net/runelite/api/Varbits.java index bc850fb4a1..81f72e77b3 100644 --- a/runelite-api/src/main/java/net/runelite/api/Varbits.java +++ b/runelite-api/src/main/java/net/runelite/api/Varbits.java @@ -323,6 +323,8 @@ public enum Varbits BARROWS_KILLED_KARIL(460), BARROWS_KILLED_TORAG(461), BARROWS_KILLED_VERAC(462), + BARROWS_REWARD_POTENTIAL(463), + BARROWS_NPCS_SLAIN(464), /** * Spicy stew ingredients diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsBrotherSlainOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsBrotherSlainOverlay.java index 4e8eeec66a..08480ec37c 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsBrotherSlainOverlay.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/barrows/BarrowsBrotherSlainOverlay.java @@ -29,6 +29,7 @@ import java.awt.Dimension; import java.awt.Graphics2D; import javax.inject.Inject; import net.runelite.api.Client; +import net.runelite.api.Varbits; import net.runelite.api.widgets.Widget; import net.runelite.api.widgets.WidgetInfo; import net.runelite.client.ui.overlay.Overlay; @@ -54,31 +55,40 @@ public class BarrowsBrotherSlainOverlay extends Overlay public Dimension render(Graphics2D graphics) { // Do not display overlay if potential is null/hidden - Widget potential = client.getWidget(WidgetInfo.BARROWS_POTENTIAL); + final Widget potential = client.getWidget(WidgetInfo.BARROWS_POTENTIAL); if (potential == null || potential.isHidden()) { return null; } // Hide original overlay - Widget barrowsBrothers = client.getWidget(WidgetInfo.BARROWS_BROTHERS); + final Widget barrowsBrothers = client.getWidget(WidgetInfo.BARROWS_BROTHERS); if (barrowsBrothers != null) { barrowsBrothers.setHidden(true); + potential.setHidden(true); } panelComponent.getChildren().clear(); for (BarrowsBrothers brother : BarrowsBrothers.values()) { - String slain = client.getVar(brother.getKilledVarbit()) > 0 ? "✓" : ""; + final boolean brotherSlain = client.getVar(brother.getKilledVarbit()) > 0; + String slain = brotherSlain ? "\u2713" : "\u2717"; panelComponent.getChildren().add(LineComponent.builder() .left(brother.getName()) .right(slain) - .rightColor(slain.isEmpty() ? Color.WHITE : Color.GREEN) + .rightColor(brotherSlain ? Color.GREEN : Color.RED) .build()); } + float rewardPercent = client.getVar(Varbits.BARROWS_REWARD_POTENTIAL) / 10.0f; + panelComponent.getChildren().add(LineComponent.builder() + .left("Potential") + .right(rewardPercent != 0 ? rewardPercent + "%" : "0%") + .rightColor(rewardPercent >= 73.0f && rewardPercent <= 88.0f ? Color.GREEN : rewardPercent < 65.6f ? Color.WHITE : Color.YELLOW) + .build()); + return panelComponent.render(graphics); } }