From 848579b82d0d8edcde3e8e391a86a926a85b5a82 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Mon, 17 May 2021 15:47:13 -0400 Subject: Update bag of cash detection --- src/main/java/me/Danker/features/loot/LootTracker.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/java/me/Danker/features/loot/LootTracker.java') diff --git a/src/main/java/me/Danker/features/loot/LootTracker.java b/src/main/java/me/Danker/features/loot/LootTracker.java index 7919366..d26c104 100644 --- a/src/main/java/me/Danker/features/loot/LootTracker.java +++ b/src/main/java/me/Danker/features/loot/LootTracker.java @@ -1017,7 +1017,7 @@ public class LootTracker { ghostlyBootsSession++; ConfigHandler.writeIntConfig("ghosts", "ghostlyBoots", ghostlyBoots); } - if (message.contains("Bag of Cash")) { + if (message.contains("The ghost's death materialized ")) { bagOfCashs++; bagOfCashSession++; ConfigHandler.writeIntConfig("ghosts", "bagOfCash", bagOfCashs); -- cgit From 9e5039be5c1f874a6622301daca2b6780dec02ca Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Thu, 17 Jun 2021 00:07:21 -0400 Subject: Add enderman slayer tracker Also add support for counting 20% drops in chat and tier 5 rev dropping viscera --- .../java/me/Danker/features/loot/LootTracker.java | 215 ++++++++++++++++++--- 1 file changed, 190 insertions(+), 25 deletions(-) (limited to 'src/main/java/me/Danker/features/loot/LootTracker.java') diff --git a/src/main/java/me/Danker/features/loot/LootTracker.java b/src/main/java/me/Danker/features/loot/LootTracker.java index d26c104..58f5a54 100644 --- a/src/main/java/me/Danker/features/loot/LootTracker.java +++ b/src/main/java/me/Danker/features/loot/LootTracker.java @@ -47,6 +47,7 @@ public class LootTracker { // Zombie public static int zombieRevs; public static int zombieRevFlesh; + public static int zombieRevViscera; public static int zombieFoulFlesh; public static int zombieFoulFleshDrops; public static int zombiePestilences; @@ -60,6 +61,29 @@ public class LootTracker { public static int zombieWardenHearts; public static double zombieTime; public static int zombieBosses; + // Enderman + public static int endermanVoidglooms; + public static int endermanNullSpheres; + public static int endermanTAP; + public static int endermanTAPDrops; + public static int endermanEndersnakes; + public static int endermanSummoningEyes; + public static int endermanManaBooks; + public static int endermanTuners; + public static int endermanAtoms; + public static int endermanEspressoMachines; + public static int endermanSmartyBooks; + public static int endermanEndRunes; + public static int endermanChalices; + public static int endermanDice; + public static int endermanArtifacts; + public static int endermanSkins; + public static int endermanMergers; + public static int endermanCores; + public static int endermanEnchantRunes; + public static int endermanEnderBooks; + public static double endermanTime; + public static int endermanBosses; // Fishing public static int seaCreatures; @@ -184,9 +208,7 @@ public class LootTracker { public static int voltas = 0; public static int plasmas = 0; public static int ghostlyBoots = 0; - // public static double ghostsTimeSpent = -1; - - + // public static double ghostsTimeSpent = -1; // Single sessions (No config saves) // Wolf @@ -218,6 +240,7 @@ public class LootTracker { // Zombie public static int zombieRevsSession = 0; public static int zombieRevFleshSession = 0; + public static int zombieRevVisceraSession = 0; public static int zombieFoulFleshSession = 0; public static int zombieFoulFleshDropsSession = 0; public static int zombiePestilencesSession = 0; @@ -231,6 +254,29 @@ public class LootTracker { public static int zombieWardenHeartsSession = 0; public static double zombieTimeSession = -1; public static int zombieBossesSession = -1; + // Enderman + public static int endermanVoidgloomsSession = 0; + public static int endermanNullSpheresSession = 0; + public static int endermanTAPSession = 0; + public static int endermanTAPDropsSession = 0; + public static int endermanEndersnakesSession = 0; + public static int endermanSummoningEyesSession = 0; + public static int endermanManaBooksSession = 0; + public static int endermanTunersSession = 0; + public static int endermanAtomsSession = 0; + public static int endermanEspressoMachinesSession = 0; + public static int endermanSmartyBooksSession = 0; + public static int endermanEndRunesSession = 0; + public static int endermanChalicesSession = 0; + public static int endermanDiceSession = 0; + public static int endermanArtifactsSession = 0; + public static int endermanSkinsSession = 0; + public static int endermanMergersSession = 0; + public static int endermanCoresSession = 0; + public static int endermanEnchantRunesSession = 0; + public static int endermanEnderBooksSession = 0; + public static double endermanTimeSession = -1; + public static int endermanBossesSession = -1; // Fishing public static int seaCreaturesSession = 0; @@ -355,8 +401,7 @@ public class LootTracker { public static int voltaSession = 0; public static int plasmaSession = 0; public static int ghostlyBootsSession = 0; - // public static double ghostsSecondsSinceStarts = 0; - + // public static double ghostsSecondsSinceStarts = 0; static double checkItemsNow = 0; static double itemsChecked = 0; @@ -365,7 +410,6 @@ public class LootTracker { public void onChat(ClientChatReceivedEvent event) { String message = StringUtils.stripControlCodes(event.message.getUnformattedText()); - if (!Utils.inSkyblock) return; if (event.type == 2) return; if (message.contains(":")) return; @@ -373,8 +417,7 @@ public class LootTracker { boolean wolfRNG = false; boolean spiderRNG = false; boolean zombieRNG = false; - - + boolean endermanRNG = false; // Slayer tracker // T6 books @@ -409,9 +452,13 @@ public class LootTracker { } ConfigHandler.writeIntConfig("wolf", "svens", wolfSvens); ConfigHandler.writeIntConfig("wolf", "bossRNG", wolfBosses); - } else if (message.contains("RARE DROP! (Hamster Wheel)")) { + } else if (message.contains("RARE DROP! (") && message.contains("Hamster Wheel)")) { + int amount = getAmountfromMessage(message); + wolfWheels += amount; + wolfWheelsSession += amount; wolfWheelsDrops++; wolfWheelsDropsSession++; + ConfigHandler.writeIntConfig("wolf", "wheel", wolfWheels); ConfigHandler.writeIntConfig("wolf", "wheelDrops", wolfWheelsDrops); } else if (message.contains("VERY RARE DROP! (") && message.contains(" Spirit Rune I)")) { // Removing the unicode here *should* fix rune drops not counting wolfSpirits++; @@ -452,9 +499,13 @@ public class LootTracker { } ConfigHandler.writeIntConfig("spider", "tarantulas", spiderTarantulas); ConfigHandler.writeIntConfig("spider", "bossRNG", spiderBosses); - } else if (message.contains("RARE DROP! (Toxic Arrow Poison)")) { + } else if (message.contains("RARE DROP! (") && message.contains("Toxic Arrow Poison)")) { + int amount = getAmountfromMessage(message); + spiderTAP += amount; + spiderTAPSession += amount; spiderTAPDrops++; spiderTAPDropsSession++; + ConfigHandler.writeIntConfig("spider", "tap", spiderTAP); ConfigHandler.writeIntConfig("spider", "tapDrops", spiderTAPDrops); } else if (message.contains("VERY RARE DROP! (") && message.contains(" Bite Rune I)")) { spiderBites++; @@ -493,9 +544,18 @@ public class LootTracker { } ConfigHandler.writeIntConfig("zombie", "revs", zombieRevs); ConfigHandler.writeIntConfig("zombie", "bossRNG", zombieBosses); - } else if (message.contains("RARE DROP! (Foul Flesh)")) { + } else if (message.contains("RARE DROP! (") && message.contains("Revenant Viscera)")) { + int amount = getAmountfromMessage(message); + zombieRevViscera += amount; + zombieRevVisceraSession += amount; + ConfigHandler.writeIntConfig("zombie", "revViscera", zombieRevViscera); + } else if (message.contains("RARE DROP! (") && message.contains("Foul Flesh)")) { + int amount = getAmountfromMessage(message); + zombieFoulFlesh += amount; + zombieFoulFleshSession += amount; zombieFoulFleshDrops++; zombieFoulFleshDropsSession++; + ConfigHandler.writeIntConfig("zombie", "foulFlesh", zombieFoulFlesh); ConfigHandler.writeIntConfig("zombie", "foulFleshDrops", zombieFoulFleshDrops); } else if (message.contains("VERY RARE DROP! (Revenant Catalyst)")) { zombieRevCatas++; @@ -533,12 +593,109 @@ public class LootTracker { zombieShardsSession++; ConfigHandler.writeIntConfig("zombie", "shard", zombieShards); if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "SHARD OF THE SHREDDED!", 5); - } else if (message.contains("INSANE DROP! (Warden Heart)")) { + } else if (message.contains("INSANE DROP! (Warden Heart)") || message.contains("CRAZY RARE DROP! (Warden Heart)")) { zombieRNG = true; zombieWardenHearts++; zombieWardenHeartsSession++; ConfigHandler.writeIntConfig("zombie", "heart", zombieWardenHearts); if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "WARDEN HEART!", 5); + } else if (message.contains(" Enderman Slayer LVL ")) { + endermanVoidglooms++; + endermanVoidgloomsSession++; + if (endermanBosses != -1) { + endermanBosses++; + } + if (endermanBossesSession != -1) { + endermanBossesSession++; + } + ConfigHandler.writeIntConfig("enderman", "voidglooms", endermanVoidglooms); + ConfigHandler.writeIntConfig("enderman", "bossRNG", endermanBosses); + } else if (message.contains("RARE DROP! (") && message.contains("Twilight Arrow Poison)")) { + int amount = getAmountfromMessage(message); + endermanTAP += amount; + endermanTAPSession += amount; + endermanTAPDrops++; + endermanTAPDropsSession++; + ConfigHandler.writeIntConfig("enderman", "tap", endermanTAP); + ConfigHandler.writeIntConfig("enderman", "tapDrops", endermanTAPDrops); + } else if (message.contains("VERY RARE DROP! (") && message.contains(" Endersnake Rune I)")) { + endermanEndersnakes++; + endermanEndersnakesSession++; + ConfigHandler.writeIntConfig("enderman", "endersnakes", endermanEndersnakes); + } else if (message.contains("VERY RARE DROP! (Summoning Eye)")) { + endermanSummoningEyes++; + endermanSummoningEyesSession++; + ConfigHandler.writeIntConfig("enderman", "summoningEyes", endermanSummoningEyes); + } else if (message.contains("VERY RARE DROP! (Mana Steal I)")) { + endermanManaBooks++; + endermanManaBooksSession++; + ConfigHandler.writeIntConfig("enderman", "manaBooks", endermanManaBooks); + } else if (message.contains("VERY RARE DROP! (Transmission Tuner)")) { + endermanTuners++; + endermanTunersSession++; + ConfigHandler.writeIntConfig("enderman", "tuners", endermanTuners); + } else if (message.contains("VERY RARE DROP! (Null Atom)")) { + endermanAtoms++; + endermanAtomsSession++; + ConfigHandler.writeIntConfig("enderman", "atoms", endermanAtoms); + } else if (message.contains("CRAZY RARE DROP! (Pocket Espresso Machine)")) { + endermanRNG = true; + endermanEspressoMachines++; + endermanEspressoMachinesSession++; + ConfigHandler.writeIntConfig("enderman", "espressoMachines", endermanEspressoMachines); + if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.AQUA + "POCKET ESPRESSO MACHINE!", 3); + } else if (message.contains("VERY RARE DROP! (Smarty Pants I)")) { + endermanSmartyBooks++; + endermanSmartyBooksSession++; + ConfigHandler.writeIntConfig("enderman", "smartyBooks", endermanSmartyBooks); + } else if (message.contains("VERY RARE DROP! (") && message.contains(" End Rune I)")) { + endermanEndRunes++; + endermanEndRunesSession++; + ConfigHandler.writeIntConfig("enderman", "endRunes", endermanEndRunes); + } else if (message.contains("CRAZY RARE DROP! (Handy Blood Chalice)")) { + endermanRNG = true; + endermanChalices++; + endermanChalicesSession++; + ConfigHandler.writeIntConfig("enderman", "chalices", endermanChalices); + if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "HANDY BLOOD CHALICE!", 3); + } else if (message.contains("VERY RARE DROP! (Sinful Dice)")) { + endermanDice++; + endermanDiceSession++; + ConfigHandler.writeIntConfig("enderman", "dice", endermanDice); + } else if (message.contains("CRAZY RARE DROP! (Exceedingly Rare Ender Artifact Upgrader)")) { + endermanRNG = true; + endermanArtifacts++; + endermanArtifactsSession++; + ConfigHandler.writeIntConfig("enderman", "artifacts", endermanArtifacts); + if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "ENDER ARTIFACT UPGRADER!", 3); + } else if (message.contains("CRAZY RARE DROP! (Void Conqueror Enderman Skin)")) { + endermanRNG = true; + endermanSkins++; + endermanSkinsSession++; + ConfigHandler.writeIntConfig("enderman", "skins", endermanSkins); + if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "ENDERMAN SKIN!", 3); + } else if (message.contains("VERY RARE DROP! (Etherwarp Merger)")) { + endermanMergers++; + endermanMergersSession++; + ConfigHandler.writeIntConfig("enderman", "mergers", endermanMergers); + } else if (message.contains("CRAZY RARE DROP! (Judgement Core)")) { + endermanRNG = true; + endermanCores++; + endermanCoresSession++; + ConfigHandler.writeIntConfig("enderman", "cores", endermanCores); + if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "JUDGEMENT CORE!", 5); + } else if (message.contains("CRAZY RARE DROP! (") && message.contains(" Enchant Rune I)")) { + endermanRNG = true; + endermanEnchantRunes++; + endermanEnchantRunesSession++; + ConfigHandler.writeIntConfig("enderman", "enchantRunes", endermanEnchantRunes); + if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GRAY + "ENCHANT RUNE!", 3); + } else if (message.contains("INSANE DROP! (Ender Slayer VII)") || message.contains("CRAZY RARE DROP! (Ender Slayer VII)")) { + endermanRNG = true; + endermanEnderBooks++; + endermanEnderBooksSession++; + ConfigHandler.writeIntConfig("enderman", "enderBooks", endermanEnderBooks); + if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "ENDER SLAYER VII!", 3); } if (wolfRNG) { @@ -565,6 +722,14 @@ public class LootTracker { ConfigHandler.writeDoubleConfig("zombie", "timeRNG", zombieTime); ConfigHandler.writeIntConfig("zombie", "bossRNG", 0); } + if (endermanRNG) { + endermanTime = System.currentTimeMillis() / 1000; + endermanBosses = 0; + endermanTimeSession = System.currentTimeMillis() / 1000; + endermanBossesSession = 0; + ConfigHandler.writeDoubleConfig("enderman", "timeRNG", endermanTime); + ConfigHandler.writeIntConfig("enderman", "bossRNG", 0); + } // Fishing tracker if (message.contains("GOOD CATCH!")) { @@ -1095,34 +1260,26 @@ public class LootTracker { // If Hypixel lags and scoreboard doesn't update if (cleanedLine.contains("Boss slain!") || cleanedLine.contains("Slay the boss!")) { int itemTeeth = Utils.getItems("Wolf Tooth"); - int itemWheels = Utils.getItems("Hamster Wheel"); int itemWebs = Utils.getItems("Tarantula Web"); - int itemTAP = Utils.getItems("Toxic Arrow Poison"); int itemRev = Utils.getItems("Revenant Flesh"); - int itemFoul = Utils.getItems("Foul Flesh"); + int itemNullSphere = Utils.getItems("Null Sphere"); // If no items, are detected, allow check again. Should fix items not being found - if (itemTeeth + itemWheels + itemWebs + itemTAP + itemRev + itemFoul > 0) { + if (itemTeeth + itemWebs + itemRev + itemNullSphere > 0) { itemsChecked = System.currentTimeMillis() / 1000; wolfTeeth += itemTeeth; - wolfWheels += itemWheels; spiderWebs += itemWebs; - spiderTAP += itemTAP; zombieRevFlesh += itemRev; - zombieFoulFlesh += itemFoul; + endermanNullSpheres += itemNullSphere; wolfTeethSession += itemTeeth; - wolfWheelsSession += itemWheels; spiderWebsSession += itemWebs; - spiderTAPSession += itemTAP; zombieRevFleshSession += itemRev; - zombieFoulFleshSession += itemFoul; + endermanNullSpheresSession += itemNullSphere; ConfigHandler.writeIntConfig("wolf", "teeth", wolfTeeth); - ConfigHandler.writeIntConfig("wolf", "wheel", wolfWheels); ConfigHandler.writeIntConfig("spider", "web", spiderWebs); - ConfigHandler.writeIntConfig("spider", "tap", spiderTAP); ConfigHandler.writeIntConfig("zombie", "revFlesh", zombieRevFlesh); - ConfigHandler.writeIntConfig("zombie", "foulFlesh", zombieFoulFlesh); + ConfigHandler.writeIntConfig("enderman", "nullSpheres", endermanNullSpheres); } } } @@ -1159,5 +1316,13 @@ public class LootTracker { ConfigHandler.writeIntConfig("fishing", "empSC", empSCs); ConfigHandler.writeIntConfig("fishing", "yetiSC", yetiSCs); } + + public int getAmountfromMessage(String message) { + if (message.charAt(message.indexOf("(") + 1) == 'x') { + return Integer.parseInt(message.substring(message.indexOf("(") + 1, message.indexOf("x"))); + } else { + return 1; + } + } } -- cgit From a40b6338955f469f4a476b0d9b0ff61952289bcb Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Fri, 6 Aug 2021 14:33:34 -0400 Subject: Fix slayer 20% drops only counting as 1 Also add missing lines in /dsmfarmlength --- src/main/java/me/Danker/features/loot/LootTracker.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/main/java/me/Danker/features/loot/LootTracker.java') diff --git a/src/main/java/me/Danker/features/loot/LootTracker.java b/src/main/java/me/Danker/features/loot/LootTracker.java index 58f5a54..8a2739a 100644 --- a/src/main/java/me/Danker/features/loot/LootTracker.java +++ b/src/main/java/me/Danker/features/loot/LootTracker.java @@ -1318,7 +1318,7 @@ public class LootTracker { } public int getAmountfromMessage(String message) { - if (message.charAt(message.indexOf("(") + 1) == 'x') { + if (message.charAt(message.indexOf("(") + 2) == 'x') { return Integer.parseInt(message.substring(message.indexOf("(") + 1, message.indexOf("x"))); } else { return 1; -- cgit From ea8413504f2a6663608367ad6ab5fbcad7e6c029 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sat, 28 Aug 2021 02:56:06 -0400 Subject: A lot of internal changes Rename RenderOverlay -> RenderOverlayEvent Split loot trackers into own classes Add packet read and write events Move render functions form Utils to RenderUtils Fix warnings in installer frame Move spirit boots fix to own class --- .../java/me/Danker/features/loot/LootTracker.java | 1295 +------------------- 1 file changed, 16 insertions(+), 1279 deletions(-) (limited to 'src/main/java/me/Danker/features/loot/LootTracker.java') diff --git a/src/main/java/me/Danker/features/loot/LootTracker.java b/src/main/java/me/Danker/features/loot/LootTracker.java index 8a2739a..5371ddc 100644 --- a/src/main/java/me/Danker/features/loot/LootTracker.java +++ b/src/main/java/me/Danker/features/loot/LootTracker.java @@ -1,15 +1,8 @@ package me.Danker.features.loot; -import me.Danker.commands.ToggleCommand; -import me.Danker.events.ChestSlotClickedEvent; import me.Danker.handlers.ConfigHandler; import me.Danker.handlers.ScoreboardHandler; import me.Danker.utils.Utils; -import net.minecraft.client.Minecraft; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.StringUtils; -import net.minecraftforge.client.event.ClientChatReceivedEvent; import net.minecraftforge.client.event.sound.PlaySoundEvent; import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; @@ -18,1239 +11,14 @@ import java.util.List; public class LootTracker { - // Wolf - public static int wolfSvens; - public static int wolfTeeth; - public static int wolfWheels; - public static int wolfWheelsDrops; - public static int wolfSpirits; - public static int wolfBooks; - public static int wolfEggs; - public static int wolfCoutures; - public static int wolfBaits; - public static int wolfFluxes; - public static double wolfTime; - public static int wolfBosses; - // Spider - public static int spiderTarantulas; - public static int spiderWebs; - public static int spiderTAP; - public static int spiderTAPDrops; - public static int spiderBites; - public static int spiderCatalysts; - public static int spiderBooks; - public static int spiderSwatters; - public static int spiderTalismans; - public static int spiderMosquitos; - public static double spiderTime; - public static int spiderBosses; - // Zombie - public static int zombieRevs; - public static int zombieRevFlesh; - public static int zombieRevViscera; - public static int zombieFoulFlesh; - public static int zombieFoulFleshDrops; - public static int zombiePestilences; - public static int zombieUndeadCatas; - public static int zombieBooks; - public static int zombieBeheadeds; - public static int zombieRevCatas; - public static int zombieSnakes; - public static int zombieScythes; - public static int zombieShards; - public static int zombieWardenHearts; - public static double zombieTime; - public static int zombieBosses; - // Enderman - public static int endermanVoidglooms; - public static int endermanNullSpheres; - public static int endermanTAP; - public static int endermanTAPDrops; - public static int endermanEndersnakes; - public static int endermanSummoningEyes; - public static int endermanManaBooks; - public static int endermanTuners; - public static int endermanAtoms; - public static int endermanEspressoMachines; - public static int endermanSmartyBooks; - public static int endermanEndRunes; - public static int endermanChalices; - public static int endermanDice; - public static int endermanArtifacts; - public static int endermanSkins; - public static int endermanMergers; - public static int endermanCores; - public static int endermanEnchantRunes; - public static int endermanEnderBooks; - public static double endermanTime; - public static int endermanBosses; - - // Fishing - public static int seaCreatures; - public static int goodCatches; - public static int greatCatches; - public static int squids; - public static int seaWalkers; - public static int nightSquids; - public static int seaGuardians; - public static int seaWitches; - public static int seaArchers; - public static int monsterOfTheDeeps; - public static int catfishes; - public static int carrotKings; - public static int seaLeeches; - public static int guardianDefenders; - public static int deepSeaProtectors; - public static int hydras; - public static int seaEmperors; - public static double empTime; - public static int empSCs; - public static int fishingMilestone; - // Fishing Winter - public static int frozenSteves; - public static int frostyTheSnowmans; - public static int grinches; - public static int yetis; - public static double yetiTime; - public static int yetiSCs; - // Fishing Festival - public static int nurseSharks; - public static int blueSharks; - public static int tigerSharks; - public static int greatWhiteSharks; - // Spooky Fishing - public static int scarecrows; - public static int nightmares; - public static int werewolfs; - public static int phantomFishers; - public static int grimReapers; - - // Mythological - public static double mythCoins; - public static int griffinFeathers; - public static int crownOfGreeds; - public static int washedUpSouvenirs; - public static int minosHunters; - public static int siameseLynxes; - public static int minotaurs; - public static int gaiaConstructs; - public static int minosChampions; - public static int minosInquisitors; - - // Catacombs Dungeons - public static int recombobulators; - public static int fumingPotatoBooks; - // F1 - public static int bonzoStaffs; - public static double f1CoinsSpent; - public static double f1TimeSpent; - // F2 - public static int scarfStudies; - public static int adaptiveSwords; - public static double f2CoinsSpent; - public static double f2TimeSpent; - // F3 - public static int adaptiveHelms; - public static int adaptiveChests; - public static int adaptiveLegs; - public static int adaptiveBoots; - public static double f3CoinsSpent; - public static double f3TimeSpent; - // F4 - public static int spiritWings; - public static int spiritBones; - public static int spiritBoots; - public static int spiritSwords; - public static int spiritBows; - public static int epicSpiritPets; - public static int legSpiritPets; - public static double f4CoinsSpent; - public static double f4TimeSpent; - // F5 - public static int warpedStones; - public static int shadowAssHelms; - public static int shadowAssChests; - public static int shadowAssLegs; - public static int shadowAssBoots; - public static int lastBreaths; - public static int lividDaggers; - public static int shadowFurys; - public static double f5CoinsSpent; - public static double f5TimeSpent; - // F6 - public static int ancientRoses; - public static int precursorEyes; - public static int giantsSwords; - public static int necroLordHelms; - public static int necroLordChests; - public static int necroLordLegs; - public static int necroLordBoots; - public static int necroSwords; - public static double f6CoinsSpent; - public static double f6TimeSpent; - // F7 - public static int witherBloods; - public static int witherCloaks; - public static int implosions; - public static int witherShields; - public static int shadowWarps; - public static int necronsHandles; - public static int autoRecombs; - public static int witherHelms; - public static int witherChests; - public static int witherLegs; - public static int witherBoots; - public static double f7CoinsSpent; - public static double f7TimeSpent; - // Ghosts - public static int sorrows = 0; - public static int bagOfCashs = 0; - public static int voltas = 0; - public static int plasmas = 0; - public static int ghostlyBoots = 0; - // public static double ghostsTimeSpent = -1; - - // Single sessions (No config saves) - // Wolf - public static int wolfSvensSession = 0; - public static int wolfTeethSession = 0; - public static int wolfWheelsSession = 0; - public static int wolfWheelsDropsSession = 0; - public static int wolfSpiritsSession = 0; - public static int wolfBooksSession = 0; - public static int wolfEggsSession = 0; - public static int wolfCouturesSession = 0; - public static int wolfBaitsSession = 0; - public static int wolfFluxesSession = 0; - public static double wolfTimeSession = -1; - public static int wolfBossesSession = -1; - // Spider - public static int spiderTarantulasSession = 0; - public static int spiderWebsSession = 0; - public static int spiderTAPSession = 0; - public static int spiderTAPDropsSession = 0; - public static int spiderBitesSession = 0; - public static int spiderCatalystsSession = 0; - public static int spiderBooksSession = 0; - public static int spiderSwattersSession = 0; - public static int spiderTalismansSession = 0; - public static int spiderMosquitosSession = 0; - public static double spiderTimeSession = -1; - public static int spiderBossesSession = -1; - // Zombie - public static int zombieRevsSession = 0; - public static int zombieRevFleshSession = 0; - public static int zombieRevVisceraSession = 0; - public static int zombieFoulFleshSession = 0; - public static int zombieFoulFleshDropsSession = 0; - public static int zombiePestilencesSession = 0; - public static int zombieUndeadCatasSession = 0; - public static int zombieBooksSession = 0; - public static int zombieBeheadedsSession = 0; - public static int zombieRevCatasSession = 0; - public static int zombieSnakesSession = 0; - public static int zombieScythesSession = 0; - public static int zombieShardsSession = 0; - public static int zombieWardenHeartsSession = 0; - public static double zombieTimeSession = -1; - public static int zombieBossesSession = -1; - // Enderman - public static int endermanVoidgloomsSession = 0; - public static int endermanNullSpheresSession = 0; - public static int endermanTAPSession = 0; - public static int endermanTAPDropsSession = 0; - public static int endermanEndersnakesSession = 0; - public static int endermanSummoningEyesSession = 0; - public static int endermanManaBooksSession = 0; - public static int endermanTunersSession = 0; - public static int endermanAtomsSession = 0; - public static int endermanEspressoMachinesSession = 0; - public static int endermanSmartyBooksSession = 0; - public static int endermanEndRunesSession = 0; - public static int endermanChalicesSession = 0; - public static int endermanDiceSession = 0; - public static int endermanArtifactsSession = 0; - public static int endermanSkinsSession = 0; - public static int endermanMergersSession = 0; - public static int endermanCoresSession = 0; - public static int endermanEnchantRunesSession = 0; - public static int endermanEnderBooksSession = 0; - public static double endermanTimeSession = -1; - public static int endermanBossesSession = -1; - - // Fishing - public static int seaCreaturesSession = 0; - public static int goodCatchesSession = 0; - public static int greatCatchesSession = 0; - public static int squidsSession = 0; - public static int seaWalkersSession = 0; - public static int nightSquidsSession = 0; - public static int seaGuardiansSession = 0; - public static int seaWitchesSession = 0; - public static int seaArchersSession = 0; - public static int monsterOfTheDeepsSession = 0; - public static int catfishesSession = 0; - public static int carrotKingsSession = 0; - public static int seaLeechesSession = 0; - public static int guardianDefendersSession = 0; - public static int deepSeaProtectorsSession = 0; - public static int hydrasSession = 0; - public static int seaEmperorsSession = 0; - public static double empTimeSession = -1; - public static int empSCsSession = -1; - public static int fishingMilestoneSession = 0; - // Fishing Winter - public static int frozenStevesSession = 0; - public static int frostyTheSnowmansSession = 0; - public static int grinchesSession = 0; - public static int yetisSession = 0; - public static double yetiTimeSession = -1; - public static int yetiSCsSession = -1; - // Fishing Festival - public static int nurseSharksSession = 0; - public static int blueSharksSession = 0; - public static int tigerSharksSession = 0; - public static int greatWhiteSharksSession = 0; - // Spooky Fishing - public static int scarecrowsSession = 0; - public static int nightmaresSession = 0; - public static int werewolfsSession = 0; - public static int phantomFishersSession = 0; - public static int grimReapersSession = 0; - - // Mythological - public static double mythCoinsSession = 0; - public static int griffinFeathersSession = 0; - public static int crownOfGreedsSession = 0; - public static int washedUpSouvenirsSession = 0; - public static int minosHuntersSession = 0; - public static int siameseLynxesSession = 0; - public static int minotaursSession = 0; - public static int gaiaConstructsSession = 0; - public static int minosChampionsSession = 0; - public static int minosInquisitorsSession = 0; - - // Catacombs Dungeons - public static int recombobulatorsSession = 0; - public static int fumingPotatoBooksSession = 0; - // F1 - public static int bonzoStaffsSession = 0; - public static double f1CoinsSpentSession = 0; - public static double f1TimeSpentSession = 0; - // F2 - public static int scarfStudiesSession = 0; - public static int adaptiveSwordsSession = 0; - public static double f2CoinsSpentSession = 0; - public static double f2TimeSpentSession = 0; - // F3 - public static int adaptiveHelmsSession = 0; - public static int adaptiveChestsSession = 0; - public static int adaptiveLegsSession = 0; - public static int adaptiveBootsSession = 0; - public static double f3CoinsSpentSession = 0; - public static double f3TimeSpentSession = 0; - // F4 - public static int spiritWingsSession = 0; - public static int spiritBonesSession = 0; - public static int spiritBootsSession = 0; - public static int spiritSwordsSession = 0; - public static int spiritBowsSession = 0; - public static int epicSpiritPetsSession = 0; - public static int legSpiritPetsSession = 0; - public static double f4CoinsSpentSession = 0; - public static double f4TimeSpentSession = 0; - // F5 - public static int warpedStonesSession = 0; - public static int shadowAssHelmsSession = 0; - public static int shadowAssChestsSession = 0; - public static int shadowAssLegsSession = 0; - public static int shadowAssBootsSession = 0; - public static int lastBreathsSession = 0; - public static int lividDaggersSession = 0; - public static int shadowFurysSession = 0; - public static double f5CoinsSpentSession = 0; - public static double f5TimeSpentSession = 0; - // F6 - public static int ancientRosesSession = 0; - public static int precursorEyesSession = 0; - public static int giantsSwordsSession = 0; - public static int necroLordHelmsSession = 0; - public static int necroLordChestsSession = 0; - public static int necroLordLegsSession = 0; - public static int necroLordBootsSession = 0; - public static int necroSwordsSession = 0; - public static double f6CoinsSpentSession = 0; - public static double f6TimeSpentSession = 0; - // F7 - public static int witherBloodsSession = 0; - public static int witherCloaksSession = 0; - public static int implosionsSession = 0; - public static int witherShieldsSession = 0; - public static int shadowWarpsSession = 0; - public static int necronsHandlesSession = 0; - public static int autoRecombsSession = 0; - public static int witherHelmsSession = 0; - public static int witherChestsSession = 0; - public static int witherLegsSession = 0; - public static int witherBootsSession = 0; - public static double f7CoinsSpentSession = 0; - public static double f7TimeSpentSession = 0; - // Ghosts - public static int sorrowSession = 0; - public static int bagOfCashSession = 0; - public static int voltaSession = 0; - public static int plasmaSession = 0; - public static int ghostlyBootsSession = 0; - // public static double ghostsSecondsSinceStarts = 0; - - static double checkItemsNow = 0; - static double itemsChecked = 0; - - @SubscribeEvent(priority = EventPriority.HIGHEST) - public void onChat(ClientChatReceivedEvent event) { - String message = StringUtils.stripControlCodes(event.message.getUnformattedText()); - - if (!Utils.inSkyblock) return; - if (event.type == 2) return; - if (message.contains(":")) return; - - boolean wolfRNG = false; - boolean spiderRNG = false; - boolean zombieRNG = false; - boolean endermanRNG = false; - - // Slayer tracker - // T6 books - if (message.contains("VERY RARE DROP! (Enchanted Book)") || message.contains("CRAZY RARE DROP! (Enchanted Book)")) { - // Loop through scoreboard to see what boss you're doing - List scoreboard = ScoreboardHandler.getSidebarLines(); - for (String s : scoreboard) { - String sCleaned = ScoreboardHandler.cleanSB(s); - if (sCleaned.contains("Sven Packmaster")) { - wolfBooks++; - ConfigHandler.writeIntConfig("wolf", "book", wolfBooks); - } else if (sCleaned.contains("Tarantula Broodfather")) { - spiderBooks++; - ConfigHandler.writeIntConfig("spider", "book", spiderBooks); - } else if (sCleaned.contains("Revenant Horror")) { - zombieBooks++; - ConfigHandler.writeIntConfig("zombie", "book", zombieBooks); - } - - } - } - - // Wolf - if (message.contains(" Wolf Slayer LVL ")) { - wolfSvens++; - wolfSvensSession++; - if (wolfBosses != -1) { - wolfBosses++; - } - if (wolfBossesSession != -1) { - wolfBossesSession++; - } - ConfigHandler.writeIntConfig("wolf", "svens", wolfSvens); - ConfigHandler.writeIntConfig("wolf", "bossRNG", wolfBosses); - } else if (message.contains("RARE DROP! (") && message.contains("Hamster Wheel)")) { - int amount = getAmountfromMessage(message); - wolfWheels += amount; - wolfWheelsSession += amount; - wolfWheelsDrops++; - wolfWheelsDropsSession++; - ConfigHandler.writeIntConfig("wolf", "wheel", wolfWheels); - ConfigHandler.writeIntConfig("wolf", "wheelDrops", wolfWheelsDrops); - } else if (message.contains("VERY RARE DROP! (") && message.contains(" Spirit Rune I)")) { // Removing the unicode here *should* fix rune drops not counting - wolfSpirits++; - wolfSpiritsSession++; - ConfigHandler.writeIntConfig("wolf", "spirit", wolfSpirits); - } else if (message.contains("CRAZY RARE DROP! (Red Claw Egg)")) { - wolfRNG = true; - wolfEggs++; - wolfEggsSession++; - ConfigHandler.writeIntConfig("wolf", "egg", wolfEggs); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_RED + "RED CLAW EGG!", 3); - } else if (message.contains("CRAZY RARE DROP! (") && message.contains(" Couture Rune I)")) { - wolfRNG = true; - wolfCoutures++; - wolfCouturesSession++; - ConfigHandler.writeIntConfig("wolf", "couture", wolfCoutures); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "COUTURE RUNE!", 3); - } else if (message.contains("CRAZY RARE DROP! (Grizzly Bait)") || message.contains("CRAZY RARE DROP! (Rename Me)")) { // How did Skyblock devs even manage to make this item Rename Me - wolfRNG = true; - wolfBaits++; - wolfBaitsSession++; - ConfigHandler.writeIntConfig("wolf", "bait", wolfBaits); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.AQUA + "GRIZZLY BAIT!", 3); - } else if (message.contains("CRAZY RARE DROP! (Overflux Capacitor)")) { - wolfRNG = true; - wolfFluxes++; - wolfFluxesSession++; - ConfigHandler.writeIntConfig("wolf", "flux", wolfFluxes); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "OVERFLUX CAPACITOR!", 5); - } else if (message.contains(" Spider Slayer LVL ")) { // Spider - spiderTarantulas++; - spiderTarantulasSession++; - if (spiderBosses != -1) { - spiderBosses++; - } - if (spiderBossesSession != -1) { - spiderBossesSession++; - } - ConfigHandler.writeIntConfig("spider", "tarantulas", spiderTarantulas); - ConfigHandler.writeIntConfig("spider", "bossRNG", spiderBosses); - } else if (message.contains("RARE DROP! (") && message.contains("Toxic Arrow Poison)")) { - int amount = getAmountfromMessage(message); - spiderTAP += amount; - spiderTAPSession += amount; - spiderTAPDrops++; - spiderTAPDropsSession++; - ConfigHandler.writeIntConfig("spider", "tap", spiderTAP); - ConfigHandler.writeIntConfig("spider", "tapDrops", spiderTAPDrops); - } else if (message.contains("VERY RARE DROP! (") && message.contains(" Bite Rune I)")) { - spiderBites++; - spiderBitesSession++; - ConfigHandler.writeIntConfig("spider", "bite", spiderBites); - } else if (message.contains("VERY RARE DROP! (Spider Catalyst)")) { - spiderCatalysts++; - spiderCatalystsSession++; - ConfigHandler.writeIntConfig("spider", "catalyst", spiderCatalysts); - } else if (message.contains("CRAZY RARE DROP! (Fly Swatter)")) { - spiderRNG = true; - spiderSwatters++; - spiderSwattersSession++; - ConfigHandler.writeIntConfig("spider", "swatter", spiderSwatters); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.LIGHT_PURPLE + "FLY SWATTER!", 3); - } else if (message.contains("CRAZY RARE DROP! (Tarantula Talisman")) { - spiderRNG = true; - spiderTalismans++; - spiderTalismansSession++; - ConfigHandler.writeIntConfig("spider", "talisman", spiderTalismans); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "TARANTULA TALISMAN!", 3); - } else if (message.contains("CRAZY RARE DROP! (Digested Mosquito)")) { - spiderRNG = true; - spiderMosquitos++; - spiderMosquitosSession++; - ConfigHandler.writeIntConfig("spider", "mosquito", spiderMosquitos); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "DIGESTED MOSQUITO!", 5); - } else if (message.contains(" Zombie Slayer LVL ")) { // Zombie - zombieRevs++; - zombieRevsSession++; - if (zombieBosses != -1) { - zombieBosses++; - } - if (zombieBossesSession != 1) { - zombieBossesSession++; - } - ConfigHandler.writeIntConfig("zombie", "revs", zombieRevs); - ConfigHandler.writeIntConfig("zombie", "bossRNG", zombieBosses); - } else if (message.contains("RARE DROP! (") && message.contains("Revenant Viscera)")) { - int amount = getAmountfromMessage(message); - zombieRevViscera += amount; - zombieRevVisceraSession += amount; - ConfigHandler.writeIntConfig("zombie", "revViscera", zombieRevViscera); - } else if (message.contains("RARE DROP! (") && message.contains("Foul Flesh)")) { - int amount = getAmountfromMessage(message); - zombieFoulFlesh += amount; - zombieFoulFleshSession += amount; - zombieFoulFleshDrops++; - zombieFoulFleshDropsSession++; - ConfigHandler.writeIntConfig("zombie", "foulFlesh", zombieFoulFlesh); - ConfigHandler.writeIntConfig("zombie", "foulFleshDrops", zombieFoulFleshDrops); - } else if (message.contains("VERY RARE DROP! (Revenant Catalyst)")) { - zombieRevCatas++; - zombieRevCatasSession++; - ConfigHandler.writeIntConfig("zombie", "revCatalyst", zombieRevCatas); - } else if (message.contains("VERY RARE DROP! (") && message.contains(" Pestilence Rune I)")) { - zombiePestilences++; - zombiePestilencesSession++; - ConfigHandler.writeIntConfig("zombie", "pestilence", zombiePestilences); - } else if (message.contains("VERY RARE DROP! (Undead Catalyst)")) { - zombieUndeadCatas++; - zombieUndeadCatasSession++; - ConfigHandler.writeIntConfig("zombie", "undeadCatalyst", zombieUndeadCatas); - } else if (message.contains("CRAZY RARE DROP! (Beheaded Horror)")) { - zombieRNG = true; - zombieBeheadeds++; - zombieBeheadedsSession++; - ConfigHandler.writeIntConfig("zombie", "beheaded", zombieBeheadeds); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "BEHEADED HORROR!", 3); - } else if (message.contains("CRAZY RARE DROP! (") && message.contains(" Snake Rune I)")) { - zombieRNG = true; - zombieSnakes++; - zombieSnakesSession++; - ConfigHandler.writeIntConfig("zombie", "snake", zombieSnakes); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_GREEN + "SNAKE RUNE!", 3); - } else if (message.contains("CRAZY RARE DROP! (Scythe Blade)")) { - zombieRNG = true; - zombieScythes++; - zombieScythesSession++; - ConfigHandler.writeIntConfig("zombie", "scythe", zombieScythes); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "SCYTHE BLADE!", 5); - } else if (message.contains("CRAZY RARE DROP! (Shard of the Shredded)")) { - zombieRNG = true; - zombieShards++; - zombieShardsSession++; - ConfigHandler.writeIntConfig("zombie", "shard", zombieShards); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "SHARD OF THE SHREDDED!", 5); - } else if (message.contains("INSANE DROP! (Warden Heart)") || message.contains("CRAZY RARE DROP! (Warden Heart)")) { - zombieRNG = true; - zombieWardenHearts++; - zombieWardenHeartsSession++; - ConfigHandler.writeIntConfig("zombie", "heart", zombieWardenHearts); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "WARDEN HEART!", 5); - } else if (message.contains(" Enderman Slayer LVL ")) { - endermanVoidglooms++; - endermanVoidgloomsSession++; - if (endermanBosses != -1) { - endermanBosses++; - } - if (endermanBossesSession != -1) { - endermanBossesSession++; - } - ConfigHandler.writeIntConfig("enderman", "voidglooms", endermanVoidglooms); - ConfigHandler.writeIntConfig("enderman", "bossRNG", endermanBosses); - } else if (message.contains("RARE DROP! (") && message.contains("Twilight Arrow Poison)")) { - int amount = getAmountfromMessage(message); - endermanTAP += amount; - endermanTAPSession += amount; - endermanTAPDrops++; - endermanTAPDropsSession++; - ConfigHandler.writeIntConfig("enderman", "tap", endermanTAP); - ConfigHandler.writeIntConfig("enderman", "tapDrops", endermanTAPDrops); - } else if (message.contains("VERY RARE DROP! (") && message.contains(" Endersnake Rune I)")) { - endermanEndersnakes++; - endermanEndersnakesSession++; - ConfigHandler.writeIntConfig("enderman", "endersnakes", endermanEndersnakes); - } else if (message.contains("VERY RARE DROP! (Summoning Eye)")) { - endermanSummoningEyes++; - endermanSummoningEyesSession++; - ConfigHandler.writeIntConfig("enderman", "summoningEyes", endermanSummoningEyes); - } else if (message.contains("VERY RARE DROP! (Mana Steal I)")) { - endermanManaBooks++; - endermanManaBooksSession++; - ConfigHandler.writeIntConfig("enderman", "manaBooks", endermanManaBooks); - } else if (message.contains("VERY RARE DROP! (Transmission Tuner)")) { - endermanTuners++; - endermanTunersSession++; - ConfigHandler.writeIntConfig("enderman", "tuners", endermanTuners); - } else if (message.contains("VERY RARE DROP! (Null Atom)")) { - endermanAtoms++; - endermanAtomsSession++; - ConfigHandler.writeIntConfig("enderman", "atoms", endermanAtoms); - } else if (message.contains("CRAZY RARE DROP! (Pocket Espresso Machine)")) { - endermanRNG = true; - endermanEspressoMachines++; - endermanEspressoMachinesSession++; - ConfigHandler.writeIntConfig("enderman", "espressoMachines", endermanEspressoMachines); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.AQUA + "POCKET ESPRESSO MACHINE!", 3); - } else if (message.contains("VERY RARE DROP! (Smarty Pants I)")) { - endermanSmartyBooks++; - endermanSmartyBooksSession++; - ConfigHandler.writeIntConfig("enderman", "smartyBooks", endermanSmartyBooks); - } else if (message.contains("VERY RARE DROP! (") && message.contains(" End Rune I)")) { - endermanEndRunes++; - endermanEndRunesSession++; - ConfigHandler.writeIntConfig("enderman", "endRunes", endermanEndRunes); - } else if (message.contains("CRAZY RARE DROP! (Handy Blood Chalice)")) { - endermanRNG = true; - endermanChalices++; - endermanChalicesSession++; - ConfigHandler.writeIntConfig("enderman", "chalices", endermanChalices); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "HANDY BLOOD CHALICE!", 3); - } else if (message.contains("VERY RARE DROP! (Sinful Dice)")) { - endermanDice++; - endermanDiceSession++; - ConfigHandler.writeIntConfig("enderman", "dice", endermanDice); - } else if (message.contains("CRAZY RARE DROP! (Exceedingly Rare Ender Artifact Upgrader)")) { - endermanRNG = true; - endermanArtifacts++; - endermanArtifactsSession++; - ConfigHandler.writeIntConfig("enderman", "artifacts", endermanArtifacts); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "ENDER ARTIFACT UPGRADER!", 3); - } else if (message.contains("CRAZY RARE DROP! (Void Conqueror Enderman Skin)")) { - endermanRNG = true; - endermanSkins++; - endermanSkinsSession++; - ConfigHandler.writeIntConfig("enderman", "skins", endermanSkins); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "ENDERMAN SKIN!", 3); - } else if (message.contains("VERY RARE DROP! (Etherwarp Merger)")) { - endermanMergers++; - endermanMergersSession++; - ConfigHandler.writeIntConfig("enderman", "mergers", endermanMergers); - } else if (message.contains("CRAZY RARE DROP! (Judgement Core)")) { - endermanRNG = true; - endermanCores++; - endermanCoresSession++; - ConfigHandler.writeIntConfig("enderman", "cores", endermanCores); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "JUDGEMENT CORE!", 5); - } else if (message.contains("CRAZY RARE DROP! (") && message.contains(" Enchant Rune I)")) { - endermanRNG = true; - endermanEnchantRunes++; - endermanEnchantRunesSession++; - ConfigHandler.writeIntConfig("enderman", "enchantRunes", endermanEnchantRunes); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GRAY + "ENCHANT RUNE!", 3); - } else if (message.contains("INSANE DROP! (Ender Slayer VII)") || message.contains("CRAZY RARE DROP! (Ender Slayer VII)")) { - endermanRNG = true; - endermanEnderBooks++; - endermanEnderBooksSession++; - ConfigHandler.writeIntConfig("enderman", "enderBooks", endermanEnderBooks); - if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "ENDER SLAYER VII!", 3); - } - - if (wolfRNG) { - wolfTime = System.currentTimeMillis() / 1000; - wolfBosses = 0; - wolfTimeSession = System.currentTimeMillis() / 1000; - wolfBossesSession = 0; - ConfigHandler.writeDoubleConfig("wolf", "timeRNG", wolfTime); - ConfigHandler.writeIntConfig("wolf", "bossRNG", 0); - } - if (spiderRNG) { - spiderTime = System.currentTimeMillis() / 1000; - spiderBosses = 0; - spiderTimeSession = System.currentTimeMillis() / 1000; - spiderBossesSession = 0; - ConfigHandler.writeDoubleConfig("spider", "timeRNG", spiderTime); - ConfigHandler.writeIntConfig("spider", "bossRNG", 0); - } - if (zombieRNG) { - zombieTime = System.currentTimeMillis() / 1000; - zombieBosses = 0; - zombieTimeSession = System.currentTimeMillis() / 1000; - zombieBossesSession = 0; - ConfigHandler.writeDoubleConfig("zombie", "timeRNG", zombieTime); - ConfigHandler.writeIntConfig("zombie", "bossRNG", 0); - } - if (endermanRNG) { - endermanTime = System.currentTimeMillis() / 1000; - endermanBosses = 0; - endermanTimeSession = System.currentTimeMillis() / 1000; - endermanBossesSession = 0; - ConfigHandler.writeDoubleConfig("enderman", "timeRNG", endermanTime); - ConfigHandler.writeIntConfig("enderman", "bossRNG", 0); - } - - // Fishing tracker - if (message.contains("GOOD CATCH!")) { - goodCatches++; - goodCatchesSession++; - ConfigHandler.writeIntConfig("fishing", "goodCatch", goodCatches); - } else if (message.contains("GREAT CATCH!")) { - greatCatches++; - greatCatchesSession++; - ConfigHandler.writeIntConfig("fishing", "greatCatch", greatCatches); - } else if (message.contains("A Squid appeared")) { - squids++; - squidsSession++; - ConfigHandler.writeIntConfig("fishing", "squid", squids); - increaseSeaCreatures(); - } else if (message.contains("You caught a Sea Walker")) { - seaWalkers++; - seaWalkersSession++; - ConfigHandler.writeIntConfig("fishing", "seaWalker", seaWalkers); - increaseSeaCreatures(); - } else if (message.contains("Pitch darkness reveals a Night Squid")) { - nightSquids++; - nightSquidsSession++; - ConfigHandler.writeIntConfig("fishing", "nightSquid", nightSquids); - increaseSeaCreatures(); - } else if (message.contains("You stumbled upon a Sea Guardian")) { - seaGuardians++; - seaGuardiansSession++; - ConfigHandler.writeIntConfig("fishing", "seaGuardian", seaGuardians); - increaseSeaCreatures(); - } else if (message.contains("It looks like you've disrupted the Sea Witch's brewing session. Watch out, she's furious")) { - seaWitches++; - seaWitchesSession++; - ConfigHandler.writeIntConfig("fishing", "seaWitch", seaWitches); - increaseSeaCreatures(); - } else if (message.contains("You reeled in a Sea Archer")) { - seaArchers++; - seaArchersSession++; - ConfigHandler.writeIntConfig("fishing", "seaArcher", seaArchers); - increaseSeaCreatures(); - } else if (message.contains("The Monster of the Deep has emerged")) { - monsterOfTheDeeps++; - monsterOfTheDeepsSession++; - ConfigHandler.writeIntConfig("fishing", "monsterOfDeep", monsterOfTheDeeps); - increaseSeaCreatures(); - } else if (message.contains("Huh? A Catfish")) { - catfishes++; - catfishesSession++; - ConfigHandler.writeIntConfig("fishing", "catfish", catfishes); - increaseSeaCreatures(); - } else if (message.contains("Is this even a fish? It's the Carrot King")) { - carrotKings++; - carrotKingsSession++; - ConfigHandler.writeIntConfig("fishing", "carrotKing", carrotKings); - increaseSeaCreatures(); - } else if (message.contains("Gross! A Sea Leech")) { - seaLeeches++; - seaLeechesSession++; - ConfigHandler.writeIntConfig("fishing", "seaLeech", seaLeeches); - increaseSeaCreatures(); - } else if (message.contains("You've discovered a Guardian Defender of the sea")) { - guardianDefenders++; - guardianDefendersSession++; - ConfigHandler.writeIntConfig("fishing", "guardianDefender", guardianDefenders); - increaseSeaCreatures(); - } else if (message.contains("You have awoken the Deep Sea Protector, prepare for a battle")) { - deepSeaProtectors++; - deepSeaProtectorsSession++; - ConfigHandler.writeIntConfig("fishing", "deepSeaProtector", deepSeaProtectors); - increaseSeaCreatures(); - } else if (message.contains("The Water Hydra has come to test your strength")) { - hydras++; - hydrasSession++; - ConfigHandler.writeIntConfig("fishing", "hydra", hydras); - increaseSeaCreatures(); - } else if (message.contains("The Sea Emperor arises from the depths")) { - increaseSeaCreatures(); - - seaEmperors++; - empTime = System.currentTimeMillis() / 1000; - empSCs = 0; - seaEmperorsSession++; - empTimeSession = System.currentTimeMillis() / 1000; - empSCsSession = 0; - ConfigHandler.writeIntConfig("fishing", "seaEmperor", seaEmperors); - ConfigHandler.writeDoubleConfig("fishing", "empTime", empTime); - ConfigHandler.writeIntConfig("fishing", "empSC", empSCs); - } else if (message.contains("Frozen Steve fell into the pond long ago")) { // Fishing Winter - frozenSteves++; - frozenStevesSession++; - ConfigHandler.writeIntConfig("fishing", "frozenSteve", frozenSteves); - increaseSeaCreatures(); - } else if (message.contains("It's a snowman! He looks harmless")) { - frostyTheSnowmans++; - frostyTheSnowmansSession++; - ConfigHandler.writeIntConfig("fishing", "snowman", frostyTheSnowmans); - increaseSeaCreatures(); - } else if (message.contains("stole Jerry's Gifts...get them back")) { - grinches++; - grinchesSession++; - ConfigHandler.writeIntConfig("fishing", "grinch", grinches); - increaseSeaCreatures(); - } else if (message.contains("What is this creature")) { - yetis++; - yetiTime = System.currentTimeMillis() / 1000; - yetiSCs = 0; - yetisSession++; - yetiTimeSession = System.currentTimeMillis() / 1000; - yetiSCsSession = 0; - ConfigHandler.writeIntConfig("fishing", "yeti", yetis); - ConfigHandler.writeDoubleConfig("fishing", "yetiTime", yetiTime); - ConfigHandler.writeIntConfig("fishing", "yetiSC", yetiSCs); - increaseSeaCreatures(); - } else if (message.contains("A tiny fin emerges from the water, you've caught a Nurse Shark")) { // Fishing Festival - nurseSharks++; - nurseSharksSession++; - ConfigHandler.writeIntConfig("fishing", "nurseShark", nurseSharks); - increaseSeaCreatures(); - } else if (message.contains("You spot a fin as blue as the water it came from, it's a Blue Shark")) { - blueSharks++; - blueSharksSession++; - ConfigHandler.writeIntConfig("fishing", "blueShark", blueSharks); - increaseSeaCreatures(); - } else if (message.contains("A striped beast bounds from the depths, the wild Tiger Shark")) { - tigerSharks++; - tigerSharksSession++; - ConfigHandler.writeIntConfig("fishing", "tigerShark", tigerSharks); - increaseSeaCreatures(); - } else if (message.contains("Hide no longer, a Great White Shark has tracked your scent and thirsts for your blood")) { - greatWhiteSharks++; - greatWhiteSharksSession++; - ConfigHandler.writeIntConfig("fishing", "greatWhiteShark", greatWhiteSharks); - increaseSeaCreatures(); - } else if (message.contains("Phew! It's only a Scarecrow")) { - scarecrows++; - scarecrowsSession++; - ConfigHandler.writeIntConfig("fishing", "scarecrow", scarecrows); - increaseSeaCreatures(); - } else if (message.contains("You hear trotting from beneath the waves, you caught a Nightmare")) { - nightmares++; - nightmaresSession++; - ConfigHandler.writeIntConfig("fishing", "nightmare", nightmares); - increaseSeaCreatures(); - } else if (message.contains("It must be a full moon, a Werewolf appears")) { - werewolfs++; - werewolfsSession++; - ConfigHandler.writeIntConfig("fishing", "werewolf", werewolfs); - increaseSeaCreatures(); - } else if (message.contains("The spirit of a long lost Phantom Fisher has come to haunt you")) { - phantomFishers++; - phantomFishersSession++; - ConfigHandler.writeIntConfig("fishing", "phantomFisher", phantomFishers); - increaseSeaCreatures(); - } else if (message.contains("This can't be! The manifestation of death himself")) { - grimReapers++; - grimReapersSession++; - ConfigHandler.writeIntConfig("fishing", "grimReaper", grimReapers); - increaseSeaCreatures(); - } - - // Dungeons tracker - if (message.contains(" ")) { - if (message.contains("Recombobulator