diff options
Diffstat (limited to 'src/main/java/rosegoldaddons/utils/ScoreboardUtils.java')
-rw-r--r-- | src/main/java/rosegoldaddons/utils/ScoreboardUtils.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/main/java/rosegoldaddons/utils/ScoreboardUtils.java b/src/main/java/rosegoldaddons/utils/ScoreboardUtils.java index 38312a7..a9d7d63 100644 --- a/src/main/java/rosegoldaddons/utils/ScoreboardUtils.java +++ b/src/main/java/rosegoldaddons/utils/ScoreboardUtils.java @@ -8,6 +8,8 @@ import net.minecraft.scoreboard.ScoreObjective; import net.minecraft.scoreboard.ScorePlayerTeam; import net.minecraft.scoreboard.Scoreboard; import net.minecraft.util.StringUtils; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; +import net.minecraftforge.fml.common.gameevent.TickEvent; import rosegoldaddons.Main; import java.util.ArrayList; @@ -20,6 +22,7 @@ import java.util.stream.Collectors; */ public class ScoreboardUtils { + public static boolean inSkyblock = false; public static String cleanSB(String scoreboard) { char[] nvString = StringUtils.stripControlCodes(scoreboard).toCharArray(); StringBuilder cleaned = new StringBuilder(); @@ -61,4 +64,23 @@ public class ScoreboardUtils { return lines; } + + public static String removeFormatting(String input) { + return input.replaceAll("ยง[0-9a-fk-or]", ""); + } + + private int ticks = 0; + @SubscribeEvent + public void onTick(TickEvent.ClientTickEvent event) { + if(ticks % 20 == 0) { + if(Main.mc.thePlayer != null && Main.mc.theWorld != null) { + ScoreObjective scoreboardObj = Main.mc.theWorld.getScoreboard().getObjectiveInDisplaySlot(1); + if(scoreboardObj != null) { + inSkyblock = removeFormatting(scoreboardObj.getDisplayName()).contains("SKYBLOCK"); + } + } + ticks = 0; + } + ticks++; + } } |