From a75317cc2c853ce26c4aa491d5d6527b6c024f3e Mon Sep 17 00:00:00 2001 From: Leijurv Date: Wed, 13 Mar 2019 09:17:25 -0700 Subject: [PATCH] workaround some scuff --- .../java/baritone/api/process/IBaritoneProcess.java | 11 ++++++++++- src/main/java/baritone/process/BuilderProcess.java | 2 +- src/main/java/baritone/process/CustomGoalProcess.java | 2 +- src/main/java/baritone/process/ExploreProcess.java | 2 +- src/main/java/baritone/process/FollowProcess.java | 2 +- src/main/java/baritone/process/GetToBlockProcess.java | 4 ++-- src/main/java/baritone/process/MineProcess.java | 2 +- 7 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/api/java/baritone/api/process/IBaritoneProcess.java b/src/api/java/baritone/api/process/IBaritoneProcess.java index 0339179ca..726260d82 100644 --- a/src/api/java/baritone/api/process/IBaritoneProcess.java +++ b/src/api/java/baritone/api/process/IBaritoneProcess.java @@ -101,5 +101,14 @@ public interface IBaritoneProcess { * * @return A display name that's suitable for a HUD */ - String displayName(); + default String displayName() { + if (!isActive()) { + // i love it when impcat's scuffed HUD calls displayName for inactive processes for 1 tick too long + // causing NPEs when the displayname relies on fields that become null when inactive + return "INACTIVE"; + } + return displayName0(); + } + + String displayName0(); } diff --git a/src/main/java/baritone/process/BuilderProcess.java b/src/main/java/baritone/process/BuilderProcess.java index 09ca34607..9dd6fc922 100644 --- a/src/main/java/baritone/process/BuilderProcess.java +++ b/src/main/java/baritone/process/BuilderProcess.java @@ -543,7 +543,7 @@ public class BuilderProcess extends BaritoneProcessHelper implements IBuilderPro } @Override - public String displayName() { + public String displayName0() { return "Building " + name; } diff --git a/src/main/java/baritone/process/CustomGoalProcess.java b/src/main/java/baritone/process/CustomGoalProcess.java index fe1de0286..fe361ad6a 100644 --- a/src/main/java/baritone/process/CustomGoalProcess.java +++ b/src/main/java/baritone/process/CustomGoalProcess.java @@ -105,7 +105,7 @@ public class CustomGoalProcess extends BaritoneProcessHelper implements ICustomG } @Override - public String displayName() { + public String displayName0() { return "Custom Goal " + this.goal; } diff --git a/src/main/java/baritone/process/ExploreProcess.java b/src/main/java/baritone/process/ExploreProcess.java index 3343d8829..eb98cbde7 100644 --- a/src/main/java/baritone/process/ExploreProcess.java +++ b/src/main/java/baritone/process/ExploreProcess.java @@ -94,7 +94,7 @@ public class ExploreProcess extends BaritoneProcessHelper { } @Override - public String displayName() { + public String displayName0() { return "Exploring around " + explorationOrigin + ", currently going to " + closestUncachedChunk(explorationOrigin); } } diff --git a/src/main/java/baritone/process/FollowProcess.java b/src/main/java/baritone/process/FollowProcess.java index 04e80e03c..6004ac2fd 100644 --- a/src/main/java/baritone/process/FollowProcess.java +++ b/src/main/java/baritone/process/FollowProcess.java @@ -101,7 +101,7 @@ public final class FollowProcess extends BaritoneProcessHelper implements IFollo } @Override - public String displayName() { + public String displayName0() { return "Follow " + cache; } diff --git a/src/main/java/baritone/process/GetToBlockProcess.java b/src/main/java/baritone/process/GetToBlockProcess.java index 092e9ce4e..2dbefd505 100644 --- a/src/main/java/baritone/process/GetToBlockProcess.java +++ b/src/main/java/baritone/process/GetToBlockProcess.java @@ -160,11 +160,11 @@ public class GetToBlockProcess extends BaritoneProcessHelper implements IGetToBl } @Override - public String displayName() { + public String displayName0() { if (knownLocations.isEmpty()) { return "Exploring randomly to find " + gettingTo + ", no known locations"; } - return "Get To Block " + gettingTo + ", " + knownLocations.size() + " known locations"; + return "Get To " + gettingTo + ", " + knownLocations.size() + " known locations"; } private synchronized void rescan(List known, CalculationContext context) { diff --git a/src/main/java/baritone/process/MineProcess.java b/src/main/java/baritone/process/MineProcess.java index 322a966e2..af06556b1 100644 --- a/src/main/java/baritone/process/MineProcess.java +++ b/src/main/java/baritone/process/MineProcess.java @@ -117,7 +117,7 @@ public final class MineProcess extends BaritoneProcessHelper implements IMinePro } @Override - public String displayName() { + public String displayName0() { return "Mine " + mining; }