aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/Danker/features/loot
diff options
context:
space:
mode:
authorbowser0000 <bowser0000@gmail.com>2021-06-17 00:07:21 -0400
committerbowser0000 <bowser0000@gmail.com>2021-06-17 00:07:21 -0400
commit9e5039be5c1f874a6622301daca2b6780dec02ca (patch)
tree61c85e917bfe28195154a52a963d3723d395d141 /src/main/java/me/Danker/features/loot
parentd52c64ca20fa8df90f0e4496a954328335803725 (diff)
downloadSkyblockMod-9e5039be5c1f874a6622301daca2b6780dec02ca.tar.gz
SkyblockMod-9e5039be5c1f874a6622301daca2b6780dec02ca.tar.bz2
SkyblockMod-9e5039be5c1f874a6622301daca2b6780dec02ca.zip
Add enderman slayer tracker
Also add support for counting 20% drops in chat and tier 5 rev dropping viscera
Diffstat (limited to 'src/main/java/me/Danker/features/loot')
-rw-r--r--src/main/java/me/Danker/features/loot/LootDisplay.java124
-rw-r--r--src/main/java/me/Danker/features/loot/LootTracker.java215
2 files changed, 314 insertions, 25 deletions
diff --git a/src/main/java/me/Danker/features/loot/LootDisplay.java b/src/main/java/me/Danker/features/loot/LootDisplay.java
index cd34da7..07a784a 100644
--- a/src/main/java/me/Danker/features/loot/LootDisplay.java
+++ b/src/main/java/me/Danker/features/loot/LootDisplay.java
@@ -213,6 +213,7 @@ public class LootDisplay {
dropsText = EnumChatFormatting.GOLD + "Revs Killed:\n" +
EnumChatFormatting.GREEN + "Revenant Flesh:\n" +
+ EnumChatFormatting.GREEN + "Revenant Viscera:\n" +
EnumChatFormatting.BLUE + "Foul Flesh:\n" +
EnumChatFormatting.DARK_GREEN + "Pestilence Runes:\n" +
EnumChatFormatting.WHITE + "Smite VI Books:\n" +
@@ -227,6 +228,7 @@ public class LootDisplay {
EnumChatFormatting.AQUA + "Bosses Since RNG:";
countText = EnumChatFormatting.GOLD + nf.format(LootTracker.zombieRevs) + "\n" +
EnumChatFormatting.GREEN + nf.format(LootTracker.zombieRevFlesh) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(LootTracker.zombieRevViscera) + "\n" +
EnumChatFormatting.BLUE + drop20 + "\n" +
EnumChatFormatting.DARK_GREEN + LootTracker.zombiePestilences + "\n" +
EnumChatFormatting.WHITE + LootTracker.zombieBooks + "\n" +
@@ -259,6 +261,7 @@ public class LootDisplay {
dropsText = EnumChatFormatting.GOLD + "Revs Killed:\n" +
EnumChatFormatting.GREEN + "Revenant Flesh:\n" +
+ EnumChatFormatting.GREEN + "Revenant Viscera:\n" +
EnumChatFormatting.BLUE + "Foul Flesh:\n" +
EnumChatFormatting.DARK_GREEN + "Pestilence Runes:\n" +
EnumChatFormatting.WHITE + "Smite VI Books:\n" +
@@ -273,6 +276,7 @@ public class LootDisplay {
EnumChatFormatting.AQUA + "Bosses Since RNG:";
countText = EnumChatFormatting.GOLD + nf.format(LootTracker.zombieRevsSession) + "\n" +
EnumChatFormatting.GREEN + nf.format(LootTracker.zombieRevFleshSession) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(LootTracker.zombieRevVisceraSession) + "\n" +
EnumChatFormatting.BLUE + drop20 + "\n" +
EnumChatFormatting.DARK_GREEN + LootTracker.zombiePestilencesSession + "\n" +
EnumChatFormatting.WHITE + LootTracker.zombieBooksSession + "\n" +
@@ -286,6 +290,126 @@ public class LootDisplay {
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
+ case "enderman":
+ if (LootTracker.endermanTime == -1) {
+ timeBetween = "Never";
+ } else {
+ timeBetween = Utils.getTimeBetween(LootTracker.endermanTime, timeNow);
+ }
+ if (LootTracker.endermanBosses == -1) {
+ bossesBetween = "Never";
+ } else {
+ bossesBetween = nf.format(LootTracker.endermanBosses);
+ }
+ if (ToggleCommand.slayerCountTotal) {
+ drop20 = nf.format(LootTracker.endermanTAP);
+ } else {
+ drop20 = nf.format(LootTracker.endermanTAPDrops) + " times";
+ }
+
+ dropsText = EnumChatFormatting.GOLD + "Voidglooms Killed:\n" +
+ EnumChatFormatting.DARK_GRAY + "Null Spheres:\n" +
+ EnumChatFormatting.DARK_PURPLE + "Arrow Poison:\n" +
+ EnumChatFormatting.LIGHT_PURPLE + "Endersnake Runes:\n" +
+ EnumChatFormatting.DARK_GREEN + "Summoning Eyes:\n" +
+ EnumChatFormatting.AQUA + "Mana Steal Books:\n" +
+ EnumChatFormatting.BLUE + "Transmission Tuners:\n" +
+ EnumChatFormatting.YELLOW + "Null Atoms:\n" +
+ EnumChatFormatting.AQUA + "Espresso Machines:\n" +
+ EnumChatFormatting.WHITE + "Smarty Pants Books:\n" +
+ EnumChatFormatting.LIGHT_PURPLE + "End Runes:\n" +
+ EnumChatFormatting.RED + "Blood Chalices:\n" +
+ EnumChatFormatting.RED + "Sinful Dice:\n" +
+ EnumChatFormatting.DARK_PURPLE + "Artifact Upgrader:\n" +
+ EnumChatFormatting.DARK_PURPLE + "Enderman Skins:\n" +
+ EnumChatFormatting.GRAY + "Enchant Runes:\n" +
+ EnumChatFormatting.GOLD + "Etherwarp Mergers:\n" +
+ EnumChatFormatting.GOLD + "Judgement Cores:\n" +
+ EnumChatFormatting.RED + "Ender Slayer Books:\n" +
+ EnumChatFormatting.AQUA + "Time Since RNG:\n" +
+ EnumChatFormatting.AQUA + "Bosses Since RNG:";
+ countText = EnumChatFormatting.GOLD + nf.format(LootTracker.endermanVoidglooms) + "\n" +
+ EnumChatFormatting.DARK_GRAY + nf.format(LootTracker.endermanNullSpheres) + "\n" +
+ EnumChatFormatting.DARK_PURPLE + drop20 + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + LootTracker.endermanEndersnakes + "\n" +
+ EnumChatFormatting.DARK_GREEN + LootTracker.endermanSummoningEyes + "\n" +
+ EnumChatFormatting.AQUA + LootTracker.endermanManaBooks + "\n" +
+ EnumChatFormatting.BLUE + LootTracker.endermanTuners + "\n" +
+ EnumChatFormatting.YELLOW + LootTracker.endermanAtoms + "\n" +
+ EnumChatFormatting.AQUA + LootTracker.endermanEspressoMachines + "\n" +
+ EnumChatFormatting.WHITE + LootTracker.endermanSmartyBooks + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + LootTracker.endermanEndRunes + "\n" +
+ EnumChatFormatting.RED + LootTracker.endermanChalices + "\n" +
+ EnumChatFormatting.RED + LootTracker.endermanDice + "\n" +
+ EnumChatFormatting.DARK_PURPLE + LootTracker.endermanArtifacts + "\n" +
+ EnumChatFormatting.DARK_PURPLE + LootTracker.endermanSkins + "\n" +
+ EnumChatFormatting.GRAY + LootTracker.endermanEnchantRunes + "\n" +
+ EnumChatFormatting.GOLD + LootTracker.endermanMergers + "\n" +
+ EnumChatFormatting.GOLD + LootTracker.endermanCores + "\n" +
+ EnumChatFormatting.RED + LootTracker.endermanEnderBooks + "\n" +
+ EnumChatFormatting.AQUA + timeBetween + "\n" +
+ EnumChatFormatting.AQUA + bossesBetween;
+ break;
+ case "enderman_session":
+ if (LootTracker.endermanTimeSession == -1) {
+ timeBetween = "Never";
+ } else {
+ timeBetween = Utils.getTimeBetween(LootTracker.endermanTimeSession, timeNow);
+ }
+ if (LootTracker.endermanBossesSession == -1) {
+ bossesBetween = "Never";
+ } else {
+ bossesBetween = nf.format(LootTracker.endermanBossesSession);
+ }
+ if (ToggleCommand.slayerCountTotal) {
+ drop20 = nf.format(LootTracker.endermanTAPSession);
+ } else {
+ drop20 = nf.format(LootTracker.endermanTAPDropsSession) + " times";
+ }
+
+ dropsText = EnumChatFormatting.GOLD + "Voidglooms Killed:\n" +
+ EnumChatFormatting.DARK_GRAY + "Null Spheres:\n" +
+ EnumChatFormatting.DARK_PURPLE + "Arrow Poison:\n" +
+ EnumChatFormatting.LIGHT_PURPLE + "Endersnake Runes:\n" +
+ EnumChatFormatting.DARK_GREEN + "Summoning Eyes:\n" +
+ EnumChatFormatting.AQUA + "Mana Steal Books:\n" +
+ EnumChatFormatting.BLUE + "Transmission Tuners:\n" +
+ EnumChatFormatting.YELLOW + "Null Atoms:\n" +
+ EnumChatFormatting.AQUA + "Espresso Machines:\n" +
+ EnumChatFormatting.WHITE + "Smarty Pants Books:\n" +
+ EnumChatFormatting.LIGHT_PURPLE + "End Runes:\n" +
+ EnumChatFormatting.RED + "Blood Chalices:\n" +
+ EnumChatFormatting.RED + "Sinful Dice:\n" +
+ EnumChatFormatting.DARK_PURPLE + "Artifact Upgrader:\n" +
+ EnumChatFormatting.DARK_PURPLE + "Enderman Skins:\n" +
+ EnumChatFormatting.GRAY + "Enchant Runes:\n" +
+ EnumChatFormatting.GOLD + "Etherwarp Mergers:\n" +
+ EnumChatFormatting.GOLD + "Judgement Cores:\n" +
+ EnumChatFormatting.RED + "Ender Slayer Books:\n" +
+ EnumChatFormatting.AQUA + "Time Since RNG:\n" +
+ EnumChatFormatting.AQUA + "Bosses Since RNG:";
+ countText = EnumChatFormatting.GOLD + nf.format(LootTracker.endermanVoidgloomsSession) + "\n" +
+ EnumChatFormatting.DARK_GRAY + nf.format(LootTracker.endermanNullSpheresSession) + "\n" +
+ EnumChatFormatting.DARK_PURPLE + drop20 + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + LootTracker.endermanEndersnakesSession + "\n" +
+ EnumChatFormatting.DARK_GREEN + LootTracker.endermanSummoningEyesSession + "\n" +
+ EnumChatFormatting.AQUA + LootTracker.endermanManaBooksSession + "\n" +
+ EnumChatFormatting.BLUE + LootTracker.endermanTunersSession + "\n" +
+ EnumChatFormatting.YELLOW + LootTracker.endermanAtomsSession + "\n" +
+ EnumChatFormatting.AQUA + LootTracker.endermanEspressoMachinesSession + "\n" +
+ EnumChatFormatting.WHITE + LootTracker.endermanSmartyBooksSession + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + LootTracker.endermanEndRunesSession + "\n" +
+ EnumChatFormatting.RED + LootTracker.endermanChalicesSession + "\n" +
+ EnumChatFormatting.RED + LootTracker.endermanDiceSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + LootTracker.endermanArtifactsSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + LootTracker.endermanSkinsSession + "\n" +
+ EnumChatFormatting.GRAY + LootTracker.endermanEnchantRunesSession + "\n" +
+ EnumChatFormatting.GOLD + LootTracker.endermanMergersSession + "\n" +
+ EnumChatFormatting.GOLD + LootTracker.endermanCoresSession + "\n" +
+ EnumChatFormatting.RED + LootTracker.endermanEnderBooksSession + "\n" +
+ EnumChatFormatting.AQUA + timeBetween + "\n" +
+ EnumChatFormatting.AQUA + bossesBetween;
+ break;
case "fishing":
if (LootTracker.empTime == -1) {
timeBetween = "Never";
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;
+ }
+ }
}