diff options
author | bowser0000 <bowser0000@gmail.com> | 2020-07-11 00:56:53 -0400 |
---|---|---|
committer | bowser0000 <bowser0000@gmail.com> | 2020-07-11 00:56:53 -0400 |
commit | c0017a23a6aefa6ac779551022b928bca451d46a (patch) | |
tree | 149e30a6be1b4f4d79c9d73c0a914a028a54b62f /me/Danker/ScoreboardHandler.java | |
parent | 126f20c221bd2626bb873faa14843e669ad5859f (diff) | |
download | SkyblockMod-c0017a23a6aefa6ac779551022b928bca451d46a.tar.gz SkyblockMod-c0017a23a6aefa6ac779551022b928bca451d46a.tar.bz2 SkyblockMod-c0017a23a6aefa6ac779551022b928bca451d46a.zip |
Add tracker and display for all slayer drops
Added token and 20% chance slayer drops. Also added display for the slayer tracker with /display.
This was more difficult than I thought. I first tried to use the PlayerEvent.ItemPickupEvent event, but it was server side only. Then I tried to use the ClientChatReceivedEvent event, but the boss slain message was sent to late. Ultimately, I decided on the PlaySoundEvent event, which waits for the noise for when a slayer boss dies.
Diffstat (limited to 'me/Danker/ScoreboardHandler.java')
-rw-r--r-- | me/Danker/ScoreboardHandler.java | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/me/Danker/ScoreboardHandler.java b/me/Danker/ScoreboardHandler.java deleted file mode 100644 index 4198a82..0000000 --- a/me/Danker/ScoreboardHandler.java +++ /dev/null @@ -1,60 +0,0 @@ -package me.Danker;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.stream.Collectors;
-
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Lists;
-
-import net.minecraft.client.Minecraft;
-import net.minecraft.scoreboard.Score;
-import net.minecraft.scoreboard.ScoreObjective;
-import net.minecraft.scoreboard.ScorePlayerTeam;
-import net.minecraft.scoreboard.Scoreboard;
-import net.minecraft.util.StringUtils;
-
-public class ScoreboardHandler {
-
- public static String cleanSB(String scoreboard) {
- char[] nvString = StringUtils.stripControlCodes(scoreboard).toCharArray();
- StringBuilder cleaned = new StringBuilder();
-
- for (char c : nvString) {
- if ((int) c > 20 && (int) c < 127) {
- cleaned.append(c);
- }
- }
-
- return cleaned.toString();
- }
-
- public static List<String> getSidebarLines() {
- List<String> lines = new ArrayList<>();
- Scoreboard scoreboard = Minecraft.getMinecraft().theWorld.getScoreboard();
- if (scoreboard == null) return lines;
-
- ScoreObjective objective = scoreboard.getObjectiveInDisplaySlot(1);
- if (objective == null) return lines;
-
- Collection<Score> scores = scoreboard.getSortedScores(objective);
- List<Score> list = Lists.newArrayList(scores.stream()
- .filter(input -> input != null && input.getPlayerName() != null && !input.getPlayerName()
- .startsWith("#"))
- .collect(Collectors.toList()));
-
- if (list.size() > 15) {
- scores = Lists.newArrayList(Iterables.skip(list, scores.size() - 15));
- } else {
- scores = list;
- }
-
- for (Score score : scores) {
- ScorePlayerTeam team = scoreboard.getPlayersTeam(score.getPlayerName());
- lines.add(ScorePlayerTeam.formatPlayerName(team, score.getPlayerName()));
- }
-
- return lines;
- }
-}
|