diff options
| author | bowser0000 <bowser0000@gmail.com> | 2022-08-09 20:32:25 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-08-09 20:32:25 -0400 |
| commit | 4d2a84d9fd2f522b2ade9954f8d40f6d80e2b12b (patch) | |
| tree | 7f762c94a742a07e5c3939e70d35cf7128071b32 /src/main/java/me/Danker/features/loot/LootTracker.java | |
| parent | 48253eddf00cf5d94ecc2eb6b63e7c490b3145be (diff) | |
| parent | f56302bee3939677fc3fd015a97b12b5100c45b1 (diff) | |
| download | SkyblockMod-4d2a84d9fd2f522b2ade9954f8d40f6d80e2b12b.tar.gz SkyblockMod-4d2a84d9fd2f522b2ade9954f8d40f6d80e2b12b.tar.bz2 SkyblockMod-4d2a84d9fd2f522b2ade9954f8d40f6d80e2b12b.zip | |
Merge branch 'development' into development
Diffstat (limited to 'src/main/java/me/Danker/features/loot/LootTracker.java')
| -rw-r--r-- | src/main/java/me/Danker/features/loot/LootTracker.java | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/src/main/java/me/Danker/features/loot/LootTracker.java b/src/main/java/me/Danker/features/loot/LootTracker.java index 7fa223d..13599a0 100644 --- a/src/main/java/me/Danker/features/loot/LootTracker.java +++ b/src/main/java/me/Danker/features/loot/LootTracker.java @@ -1,13 +1,11 @@ package me.Danker.features.loot; +import me.Danker.events.PacketReadEvent; import me.Danker.handlers.ConfigHandler; -import me.Danker.handlers.ScoreboardHandler; import me.Danker.utils.Utils; -import net.minecraftforge.client.event.sound.PlaySoundEvent; -import net.minecraftforge.fml.common.eventhandler.EventPriority; +import net.minecraft.network.play.server.S29PacketSoundEffect; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; -import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -16,20 +14,17 @@ public class LootTracker { public static long itemsChecked = 0; static Pattern dropPattern = Pattern.compile(".*? \\((?<amount>\\d+)x .*\\).*"); - @SubscribeEvent(priority = EventPriority.HIGHEST) - public void onSound(PlaySoundEvent event) { + @SubscribeEvent + public void onPacketRead(PacketReadEvent event) { if (!Utils.inSkyblock) return; - if (event.name.equals("note.pling")) { - // Don't check twice within 3 seconds - long checkItemsNow = System.currentTimeMillis() / 1000; - if (checkItemsNow - itemsChecked < 3) return; - List<String> scoreboard = ScoreboardHandler.getSidebarLines(); + if (event.packet instanceof S29PacketSoundEffect) { + S29PacketSoundEffect packet = (S29PacketSoundEffect) event.packet; - for (String line : scoreboard) { - String cleanedLine = ScoreboardHandler.cleanSB(line); - // If Hypixel lags and scoreboard doesn't update - if (cleanedLine.contains("Boss slain!") || cleanedLine.contains("Slay the boss!")) { + if (packet.getSoundName().equals("note.pling")) { + if (System.currentTimeMillis() / 1000 - itemsChecked < 3) return; + + if (Utils.isInScoreboard("Boss slain!") || Utils.isInScoreboard("Slay the boss!")) { int itemTeeth = Utils.getItems("Wolf Tooth"); int itemWebs = Utils.getItems("Tarantula Web"); int itemRev = Utils.getItems("Revenant Flesh"); |
