aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me
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
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')
-rw-r--r--src/main/java/me/Danker/commands/DisplayCommand.java11
-rw-r--r--src/main/java/me/Danker/commands/LootCommand.java92
-rw-r--r--src/main/java/me/Danker/commands/ResetLootCommand.java36
-rw-r--r--src/main/java/me/Danker/features/AutoDisplay.java3
-rw-r--r--src/main/java/me/Danker/features/loot/LootDisplay.java124
-rw-r--r--src/main/java/me/Danker/features/loot/LootTracker.java215
-rw-r--r--src/main/java/me/Danker/gui/DisplayGui.java11
-rw-r--r--src/main/java/me/Danker/handlers/ConfigHandler.java24
8 files changed, 482 insertions, 34 deletions
diff --git a/src/main/java/me/Danker/commands/DisplayCommand.java b/src/main/java/me/Danker/commands/DisplayCommand.java
index 990e9d1..e248888 100644
--- a/src/main/java/me/Danker/commands/DisplayCommand.java
+++ b/src/main/java/me/Danker/commands/DisplayCommand.java
@@ -21,7 +21,7 @@ public class DisplayCommand extends CommandBase {
@Override
public String getCommandUsage(ICommandSender arg0) {
- return "/" + getCommandName() + " <zombie/spider/wolf/fishing/catacombs/mythological/ghost/auto/off> [winter/festival/spooky/session/f(1-7)]";
+ return "/" + getCommandName() + " <zombie/spider/wolf/enderman/fishing/catacombs/mythological/ghost/auto/off> [winter/festival/spooky/session/f(1-7)]";
}
public static String usage(ICommandSender arg0) {
@@ -36,7 +36,7 @@ public class DisplayCommand extends CommandBase {
@Override
public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) {
if (args.length == 1) {
- return getListOfStringsMatchingLastWord(args, "wolf", "spider", "zombie", "fishing", "catacombs", "mythological", "ghost", "auto", "off");
+ return getListOfStringsMatchingLastWord(args, "wolf", "spider", "zombie", "enderman", "fishing", "catacombs", "mythological", "ghost", "auto", "off");
} else if (args.length == 2 && args[0].equalsIgnoreCase("fishing")) {
return getListOfStringsMatchingLastWord(args, "winter", "festival", "spooky", "session");
} else if (args.length == 2 && args[0].equalsIgnoreCase("catacombs")) {
@@ -82,6 +82,13 @@ public class DisplayCommand extends CommandBase {
LootDisplay.display = "zombie";
}
break;
+ case "enderman":
+ if (showSession) {
+ LootDisplay.display = "enderman_session";
+ } else {
+ LootDisplay.display = "enderman";
+ }
+ break;
case "fishing":
if (arg1.length > 1) {
switch (arg1[1].toLowerCase()) {
diff --git a/src/main/java/me/Danker/commands/LootCommand.java b/src/main/java/me/Danker/commands/LootCommand.java
index 51347a3..d0b4272 100644
--- a/src/main/java/me/Danker/commands/LootCommand.java
+++ b/src/main/java/me/Danker/commands/LootCommand.java
@@ -24,7 +24,7 @@ public class LootCommand extends CommandBase {
@Override
public String getCommandUsage(ICommandSender arg0) {
- return "/" + getCommandName() + " <zombie/spider/wolf/fishing/catacombs/mythological> [winter/festival/spooky/f(1-7)/session]";
+ return "/" + getCommandName() + " <zombie/spider/wolf/enderman/fishing/catacombs/mythological> [winter/festival/spooky/f(1-7)/session]";
}
public static String usage(ICommandSender arg0) {
@@ -39,7 +39,7 @@ public class LootCommand extends CommandBase {
@Override
public List<String> addTabCompletionOptions(ICommandSender sender, String[] args, BlockPos pos) {
if (args.length == 1) {
- return getListOfStringsMatchingLastWord(args, "wolf", "spider", "zombie", "fishing", "catacombs", "mythological");
+ return getListOfStringsMatchingLastWord(args, "wolf", "spider", "zombie", "enderman", "fishing", "catacombs", "mythological");
} else if (args.length == 2 && args[0].equalsIgnoreCase("fishing")) {
return getListOfStringsMatchingLastWord(args, "winter", "festival", "spooky", "session");
} else if (args.length == 2 && args[0].equalsIgnoreCase("catacombs")) {
@@ -223,6 +223,7 @@ public class LootCommand extends CommandBase {
EnumChatFormatting.DARK_GREEN + EnumChatFormatting.BOLD + " Zombie Loot Summary (Current Session):\n" +
EnumChatFormatting.GOLD + " Revs Killed: " + nf.format(LootTracker.zombieRevsSession) + "\n" +
EnumChatFormatting.GREEN + " Revenant Flesh: " + nf.format(LootTracker.zombieRevFleshSession) + "\n" +
+ EnumChatFormatting.GREEN + " Revenant Viscera: " + nf.format(LootTracker.zombieRevVisceraSession) + "\n" +
EnumChatFormatting.BLUE + " Foul Flesh: " + drop20 + "\n" +
EnumChatFormatting.DARK_GREEN + " Pestilence Runes: " +LootTracker.zombiePestilencesSession + "\n" +
EnumChatFormatting.WHITE + " Smite VI Books: " + LootTracker.zombieBooksSession + "\n" +
@@ -259,6 +260,7 @@ public class LootCommand extends CommandBase {
EnumChatFormatting.DARK_GREEN + EnumChatFormatting.BOLD + " Zombie Loot Summary:\n" +
EnumChatFormatting.GOLD + " Revs Killed: " + nf.format(LootTracker.zombieRevs) + "\n" +
EnumChatFormatting.GREEN + " Revenant Flesh: " + nf.format(LootTracker.zombieRevFlesh) + "\n" +
+ EnumChatFormatting.GREEN + " Revenant Viscera: " + nf.format(LootTracker.zombieRevViscera) + "\n" +
EnumChatFormatting.BLUE + " Foul Flesh: " + drop20 + "\n" +
EnumChatFormatting.DARK_GREEN + " Pestilence Runes: " + LootTracker.zombiePestilences + "\n" +
EnumChatFormatting.WHITE + " Smite VI Books: " + LootTracker.zombieBooks + "\n" +
@@ -273,6 +275,92 @@ public class LootCommand extends CommandBase {
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.GREEN + EnumChatFormatting.BOLD + " -------------------"));
break;
+ case "enderman":
+ if (showSession) {
+ 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";
+ }
+
+ player.addChatMessage(new ChatComponentText(EnumChatFormatting.DARK_PURPLE + "" + EnumChatFormatting.BOLD + "-------------------\n" +
+ EnumChatFormatting.DARK_GREEN + EnumChatFormatting.BOLD + " Enderman Loot Summary (Current Session):\n" +
+ EnumChatFormatting.GOLD + " Voidglooms Killed: " + nf.format(LootTracker.endermanVoidgloomsSession) + "\n" +
+ EnumChatFormatting.DARK_GRAY + " Null Spheres: " + nf.format(LootTracker.endermanNullSpheresSession) + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Arrow Poison: " + drop20 + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " Endersnake Runes: " + LootTracker.endermanEndersnakesSession + "\n" +
+ EnumChatFormatting.DARK_GREEN + " Summoning Eyes: " + LootTracker.endermanSummoningEyesSession + "\n" +
+ EnumChatFormatting.AQUA + " Mana Steal Books: " + LootTracker.endermanManaBooksSession + "\n" +
+ EnumChatFormatting.BLUE + " Transmission Tuners: " + LootTracker.endermanTunersSession + "\n" +
+ EnumChatFormatting.YELLOW + " Null Atoms: " + LootTracker.endermanAtomsSession + "\n" +
+ EnumChatFormatting.AQUA + " Espresso Machines: " + LootTracker.endermanEspressoMachinesSession + "\n" +
+ EnumChatFormatting.WHITE + " Smarty Pants Books: " + LootTracker.endermanSmartyBooksSession + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " End Runes: " + LootTracker.endermanEndRunesSession + "\n" +
+ EnumChatFormatting.RED + " Blood Chalices: " + LootTracker.endermanChalicesSession + "\n" +
+ EnumChatFormatting.RED + " Sinful Dice: " + LootTracker.endermanDiceSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Artifact Upgrader: " + LootTracker.endermanArtifactsSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Enderman Skins: " + LootTracker.endermanSkinsSession + "\n" +
+ EnumChatFormatting.GRAY + " Enchant Runes: " + LootTracker.endermanEnchantRunesSession + "\n" +
+ EnumChatFormatting.GOLD + " Etherwarp Mergers: " + LootTracker.endermanMergersSession + "\n" +
+ EnumChatFormatting.GOLD + " Judgement Cores: " + LootTracker.endermanCoresSession + "\n" +
+ EnumChatFormatting.RED + " Ender Slayer VII Books: " + LootTracker.endermanEnderBooksSession + "\n" +
+ EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
+ EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
+ EnumChatFormatting.DARK_PURPLE + EnumChatFormatting.BOLD + " -------------------"));
+ return;
+ }
+
+ 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";
+ }
+
+ player.addChatMessage(new ChatComponentText(EnumChatFormatting.DARK_PURPLE + "" + EnumChatFormatting.BOLD + "-------------------\n" +
+ EnumChatFormatting.DARK_GREEN + EnumChatFormatting.BOLD + " Enderman Loot Summary:\n" +
+ EnumChatFormatting.GOLD + " Voidglooms Killed: " + nf.format(LootTracker.endermanVoidglooms) + "\n" +
+ EnumChatFormatting.DARK_GRAY + " Null Spheres: " + nf.format(LootTracker.endermanNullSpheres) + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Arrow Poison: " + drop20 + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " Endersnake Runes: " + LootTracker.endermanEndersnakes + "\n" +
+ EnumChatFormatting.DARK_GREEN + " Summoning Eyes: " + LootTracker.endermanSummoningEyes + "\n" +
+ EnumChatFormatting.AQUA + " Mana Steal Books: " + LootTracker.endermanManaBooks + "\n" +
+ EnumChatFormatting.BLUE + " Transmission Tuners: " + LootTracker.endermanTuners + "\n" +
+ EnumChatFormatting.YELLOW + " Null Atoms: " + LootTracker.endermanAtoms + "\n" +
+ EnumChatFormatting.AQUA + " Espresso Machines: " + LootTracker.endermanEspressoMachines + "\n" +
+ EnumChatFormatting.WHITE + " Smarty Pants Books: " + LootTracker.endermanSmartyBooks + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " End Runes: " + LootTracker.endermanEndRunes + "\n" +
+ EnumChatFormatting.RED + " Blood Chalices: " + LootTracker.endermanChalices + "\n" +
+ EnumChatFormatting.RED + " Sinful Dice: " + LootTracker.endermanDice + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Artifact Upgrader: " + LootTracker.endermanArtifacts + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Enderman Skins: " + LootTracker.endermanSkins + "\n" +
+ EnumChatFormatting.GRAY + " Enchant Runes: " + LootTracker.endermanEnchantRunes + "\n" +
+ EnumChatFormatting.GOLD + " Etherwarp Mergers: " + LootTracker.endermanMergers + "\n" +
+ EnumChatFormatting.GOLD + " Judgement Cores: " + LootTracker.endermanCores + "\n" +
+ EnumChatFormatting.RED + " Ender Slayer VII Books: " + LootTracker.endermanEnderBooks + "\n" +
+ EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
+ EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
+ EnumChatFormatting.DARK_PURPLE + EnumChatFormatting.BOLD + " -------------------"));
+ break;
case "fishing":
if (arg1.length > 1) {
if (arg1[1].equalsIgnoreCase("winter")) {
diff --git a/src/main/java/me/Danker/commands/ResetLootCommand.java b/src/main/java/me/Danker/commands/ResetLootCommand.java
index eac4c88..e13b1a5 100644
--- a/src/main/java/me/Danker/commands/ResetLootCommand.java
+++ b/src/main/java/me/Danker/commands/ResetLootCommand.java
@@ -25,7 +25,7 @@ public class ResetLootCommand extends CommandBase {
@Override
public String getCommandUsage(ICommandSender arg0) {
- return "/" + getCommandName() + "<zombie/spider/wolf/fishing/mythological/catacombs/confirm/cancel>";
+ return "/" + getCommandName() + "<zombie/spider/wolf/enderman/fishing/mythological/catacombs/confirm/cancel>";
}
public static String usage(ICommandSender arg0) {
@@ -44,7 +44,7 @@ public class ResetLootCommand extends CommandBase {
if (confirmReset) {
return getListOfStringsMatchingLastWord(args, "confirm", "cancel");
} else {
- return getListOfStringsMatchingLastWord(args, "zombie", "spider", "wolf", "fishing", "mythological", "catacombs");
+ return getListOfStringsMatchingLastWord(args, "zombie", "spider", "wolf", "enderman", "fishing", "mythological", "catacombs");
}
}
@@ -72,6 +72,9 @@ public class ResetLootCommand extends CommandBase {
case "wolf":
resetWolf();
break;
+ case "enderman":
+ resetEnderman();
+ break;
case "fishing":
resetFishing();
break;
@@ -98,6 +101,7 @@ public class ResetLootCommand extends CommandBase {
case "zombie":
case "spider":
case "wolf":
+ case "enderman":
case "fishing":
case "mythological":
case "catacombs":
@@ -120,6 +124,7 @@ public class ResetLootCommand extends CommandBase {
static void resetZombie() {
LootTracker.zombieRevsSession = 0;
LootTracker.zombieRevFleshSession = 0;
+ LootTracker.zombieRevVisceraSession = 0;
LootTracker.zombieFoulFleshSession = 0;
LootTracker.zombieFoulFleshDropsSession = 0;
LootTracker.zombiePestilencesSession = 0;
@@ -168,6 +173,33 @@ public class ResetLootCommand extends CommandBase {
ConfigHandler.deleteCategory("wolf");
ConfigHandler.reloadConfig();
}
+
+ static void resetEnderman() {
+ LootTracker.endermanVoidgloomsSession = 0;
+ LootTracker.endermanNullSpheresSession = 0;
+ LootTracker.endermanTAPSession = 0;
+ LootTracker.endermanTAPDropsSession = 0;
+ LootTracker.endermanEndersnakesSession = 0;
+ LootTracker.endermanSummoningEyesSession = 0;
+ LootTracker.endermanManaBooksSession = 0;
+ LootTracker.endermanTunersSession = 0;
+ LootTracker.endermanAtomsSession = 0;
+ LootTracker.endermanEspressoMachinesSession = 0;
+ LootTracker.endermanSmartyBooksSession = 0;
+ LootTracker.endermanEndRunesSession = 0;
+ LootTracker.endermanChalicesSession = 0;
+ LootTracker.endermanDiceSession = 0;
+ LootTracker.endermanArtifactsSession = 0;
+ LootTracker.endermanSkinsSession = 0;
+ LootTracker.endermanMergersSession = 0;
+ LootTracker.endermanCoresSession = 0;
+ LootTracker.endermanEnchantRunesSession = 0;
+ LootTracker.endermanEnderBooksSession = 0;
+ LootTracker.endermanTimeSession = -1;
+ LootTracker.endermanBossesSession = -1;
+ ConfigHandler.deleteCategory("enderman");
+ ConfigHandler.reloadConfig();
+ }
static void resetFishing() {
LootTracker.seaCreaturesSession = 0;
diff --git a/src/main/java/me/Danker/features/AutoDisplay.java b/src/main/java/me/Danker/features/AutoDisplay.java
index bead243..89b1750 100644
--- a/src/main/java/me/Danker/features/AutoDisplay.java
+++ b/src/main/java/me/Danker/features/AutoDisplay.java
@@ -38,6 +38,9 @@ public class AutoDisplay {
} else if (sCleaned.contains("Revenant Horror")) {
LootDisplay.display = "zombie";
found = true;
+ } else if (sCleaned.contains("Voidgloom Seraph")) {
+ LootDisplay.display = "enderman";
+ found = true;
} else if (sCleaned.contains("The Mist")){
LootDisplay.display = "ghost";
found = true;
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;
+ }
+ }
}
diff --git a/src/main/java/me/Danker/gui/DisplayGui.java b/src/main/java/me/Danker/gui/DisplayGui.java
index 38459ee..e5a6641 100644
--- a/src/main/java/me/Danker/gui/DisplayGui.java
+++ b/src/main/java/me/Danker/gui/DisplayGui.java
@@ -20,6 +20,7 @@ public class DisplayGui extends GuiScreen {
private GuiButton zombie;
private GuiButton spider;
private GuiButton wolf;
+ private GuiButton enderman;
private GuiButton auto;
private GuiButton fishing;
private GuiButton fishingWinter;
@@ -52,9 +53,10 @@ public class DisplayGui extends GuiScreen {
showSession = new GuiButton(0, width / 2 - 100, (int) (height * 0.1), "Current Session Only: " + Utils.getColouredBoolean(addSession));
off = new GuiButton(0, width / 2 - 210, (int) (height * 0.2), "Off");
auto = new GuiButton(0, width / 2 + 10, (int) (height * 0.2), "Auto");
- zombie = new GuiButton(0, width / 2 - 190, (int) (height * 0.3), 110, 20, "Zombie");
- spider = new GuiButton(0, width / 2 - 55, (int) (height * 0.3), 110, 20, "Spider");
- wolf = new GuiButton(0, width / 2 + 75, (int) (height * 0.3), 110, 20, "Wolf");
+ zombie = new GuiButton(0, width / 2 - 230, (int) (height * 0.3), 100, 20, "Zombie");
+ spider = new GuiButton(0, width / 2 - 110, (int) (height * 0.3), 100, 20, "Spider");
+ wolf = new GuiButton(0, width / 2 + 10, (int) (height * 0.3), 100, 20, "Wolf");
+ enderman = new GuiButton(0, width / 2 + 130, (int) (height * 0.3), 100, 20, "Enderman");
fishing = new GuiButton(0, width / 2 - 230, (int) (height * 0.4), 100, 20, "Fishing");
fishingWinter = new GuiButton(0, width / 2 - 110, (int) (height * 0.4), 100, 20, "Fishing Winter");
fishingFestival = new GuiButton(0, width / 2 + 10, (int) (height * 0.4), 100, 20, "Fishing Festival");
@@ -75,6 +77,7 @@ public class DisplayGui extends GuiScreen {
this.buttonList.add(zombie);
this.buttonList.add(spider);
this.buttonList.add(wolf);
+ this.buttonList.add(enderman);
this.buttonList.add(fishing);
this.buttonList.add(fishingWinter);
this.buttonList.add(fishingFestival);
@@ -127,6 +130,8 @@ public class DisplayGui extends GuiScreen {
setDisplay("spider", false);
} else if (button == wolf) {
setDisplay("wolf", false);
+ } else if (button == enderman) {
+ setDisplay("enderman", false);
} else if (button == auto) {
LootDisplay.auto = true;
ConfigHandler.writeBooleanConfig("misc", "autoDisplay", true);
diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java
index c289dac..002d9f7 100644
--- a/src/main/java/me/Danker/handlers/ConfigHandler.java
+++ b/src/main/java/me/Danker/handlers/ConfigHandler.java
@@ -294,6 +294,7 @@ public class ConfigHandler {
// Zombie
LootTracker.zombieRevs = initInt("zombie", "revs", 0);
LootTracker.zombieRevFlesh = initInt("zombie", "revFlesh", 0);
+ LootTracker.zombieRevViscera = initInt("zombie", "revViscera", 0);
LootTracker.zombieFoulFlesh = initInt("zombie", "foulFlesh", 0);
LootTracker.zombieFoulFleshDrops = initInt("zombie", "foulFleshDrops", 0);
LootTracker.zombiePestilences = initInt("zombie", "pestilence", 0);
@@ -307,6 +308,29 @@ public class ConfigHandler {
LootTracker.zombieWardenHearts = initInt("zombie", "heart", 0);
LootTracker.zombieTime = initDouble("zombie", "timeRNG", -1);
LootTracker.zombieBosses = initInt("zombie", "bossRNG", -1);
+ // Enderman
+ LootTracker.endermanVoidglooms = initInt("enderman", "voidglooms", 0);
+ LootTracker.endermanNullSpheres = initInt("enderman", "nullSpheres", 0);
+ LootTracker.endermanTAP = initInt("enderman", "tap", 0);
+ LootTracker.endermanTAPDrops = initInt("enderman", "tapDrops", 0);
+ LootTracker.endermanEndersnakes = initInt("enderman", "endersnakes", 0);
+ LootTracker.endermanSummoningEyes = initInt("enderman", "summoningEyes", 0);
+ LootTracker.endermanManaBooks = initInt("enderman", "manaBooks", 0);
+ LootTracker.endermanTuners = initInt("enderman", "tuners", 0);
+ LootTracker.endermanAtoms = initInt("enderman", "atoms", 0);
+ LootTracker.endermanEspressoMachines = initInt("enderman", "espressoMachines", 0);
+ LootTracker.endermanSmartyBooks = initInt("enderman", "smartyBooks", 0);
+ LootTracker.endermanEndRunes = initInt("enderman", "endRunes", 0);
+ LootTracker.endermanChalices = initInt("enderman", "chalices", 0);
+ LootTracker.endermanDice = initInt("enderman", "dice", 0);
+ LootTracker.endermanArtifacts = initInt("enderman", "artifacts", 0);
+ LootTracker.endermanSkins = initInt("enderman", "skins", 0);
+ LootTracker.endermanMergers = initInt("enderman", "mergers", 0);
+ LootTracker.endermanCores = initInt("enderman", "cores", 0);
+ LootTracker.endermanEnchantRunes = initInt("enderman", "enchantRunes", 0);
+ LootTracker.endermanEnderBooks = initInt("enderman", "enderBooks", 0);
+ LootTracker.endermanTime = initDouble("enderman", "timeRNG", -1);
+ LootTracker.endermanBosses = initInt("enderman", "bossRNG", -1);
// Fishing
LootTracker.seaCreatures = initInt("fishing", "seaCreature", 0);