From efa2c0dd2c1500edff663a2efd0b1d1ea902ce34 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sun, 2 May 2021 20:24:51 -0400 Subject: Add custom name colours --- src/main/java/me/Danker/handlers/ConfigHandler.java | 1 + 1 file changed, 1 insertion(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index db33cb2..6d32f99 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -214,6 +214,7 @@ public class ConfigHandler { ToggleCommand.teammatesInRadius = initBoolean("toggles", "TeammatesInRadius", false); ToggleCommand.giantHP = initBoolean("toggles", "GiantHP", false); ToggleCommand.hidePetCandy = initBoolean("toggles", "HidePetCandy", false); + ToggleCommand.customColouredNames = initBoolean("toggles", "CustomColouredNames", true); // Chat Messages ToggleCommand.sceptreMessages = initBoolean("toggles", "SceptreMessages", true); ToggleCommand.midasStaffMessages = initBoolean("toggles", "MidasStaffMessages", true); -- cgit From bcf86f8f76994cd31cd8ebecde855c4cfc5fd773 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sat, 8 May 2021 23:55:28 -0400 Subject: Add option to hides lines in creeper solver --- src/main/java/me/Danker/handlers/ConfigHandler.java | 1 + 1 file changed, 1 insertion(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 6d32f99..250c1f2 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -239,6 +239,7 @@ public class ConfigHandler { ToggleCommand.oruoToggled = initBoolean("toggles", "OruoPuzzle", false); ToggleCommand.blazeToggled = initBoolean("toggles", "BlazePuzzle", false); ToggleCommand.creeperToggled = initBoolean("toggles", "CreeperPuzzle", false); + ToggleCommand.creeperLinesToggled = initBoolean("toggles", "CreeperLines", true); ToggleCommand.waterToggled = initBoolean("toggles", "WaterPuzzle", false); ToggleCommand.ticTacToeToggled = initBoolean("toggles", "TicTacToePuzzle", false); ToggleCommand.boulderToggled = initBoolean("toggles", "BoulderPuzzle", false); -- cgit From d52c64ca20fa8df90f0e4496a954328335803725 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Tue, 15 Jun 2021 20:34:51 -0400 Subject: Add support for percentage skill bar --- src/main/java/me/Danker/handlers/ConfigHandler.java | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 250c1f2..c289dac 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -484,6 +484,16 @@ public class ConfigHandler { ScaleCommand.teammatesInRadiusScale = initDouble("scales", "teammatesInRadiusScale", 1); ScaleCommand.giantHPScale = initDouble("scales", "giantHPScale", 1); + // Skills + DankersSkyblockMod.farmingLevel = initInt("skills", "farming", -1); + DankersSkyblockMod.miningLevel = initInt("skills", "mining", -1); + DankersSkyblockMod.combatLevel = initInt("skills", "combat", -1); + DankersSkyblockMod.foragingLevel = initInt("skills", "foraging", -1); + DankersSkyblockMod.fishingLevel = initInt("skills", "fishing", -1); + DankersSkyblockMod.enchantingLevel = initInt("skills", "enchanting", -1); + DankersSkyblockMod.alchemyLevel = initInt("skills", "alchemy", -1); + DankersSkyblockMod.carpentryLevel = initInt("skills", "carpentry", -1); + // Colours DankersSkyblockMod.MAIN_COLOUR = initString("colors", "main", EnumChatFormatting.GREEN.toString()); DankersSkyblockMod.SECONDARY_COLOUR = initString("colors", "secondary", EnumChatFormatting.DARK_GREEN.toString()); -- 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/handlers/ConfigHandler.java | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/main/java/me/Danker/handlers') 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); -- cgit From a44dc53ce80e9914595d5b646dc5623ddd3450b1 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Mon, 5 Jul 2021 12:52:46 -0400 Subject: Add alert when reaching end of farm --- src/main/java/me/Danker/handlers/ConfigHandler.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 002d9f7..29fa882 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -215,6 +215,7 @@ public class ConfigHandler { ToggleCommand.giantHP = initBoolean("toggles", "GiantHP", false); ToggleCommand.hidePetCandy = initBoolean("toggles", "HidePetCandy", false); ToggleCommand.customColouredNames = initBoolean("toggles", "CustomColouredNames", true); + ToggleCommand.endOfFarmAlert = initBoolean("toggles", "EndOfFarmAlert", false); // Chat Messages ToggleCommand.sceptreMessages = initBoolean("toggles", "SceptreMessages", true); ToggleCommand.midasStaffMessages = initBoolean("toggles", "MidasStaffMessages", true); @@ -457,7 +458,6 @@ public class ConfigHandler { LootTracker.ghostlyBoots = initInt("ghosts", "ghostlyBoots", 0); LootTracker.bagOfCashs = initInt("ghosts", "bagOfCash", 0); - // Misc LootDisplay.display = initString("misc", "display", "off"); LootDisplay.auto = initBoolean("misc", "autoDisplay", false); @@ -465,6 +465,8 @@ public class ConfigHandler { CakeTimer.cakeTime = initDouble("misc", "cakeTime", 0); SkillTracker.showSkillTracker = initBoolean("misc", "showSkillTracker", false); DankersSkyblockMod.firstLaunch = initBoolean("misc", "firstLaunch", true); + EndOfFarmAlert.min = initDouble("misc", "farmMin", -78.5); + EndOfFarmAlert.max = initDouble("misc", "farmMax", 79.5); // Locations ScaledResolution scaled = new ScaledResolution(Minecraft.getMinecraft()); -- cgit From 37977ec66605e240533180ebacf4377fc3a55a15 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sat, 17 Jul 2021 00:00:25 -0400 Subject: Show applied gemstones in item lore --- src/main/java/me/Danker/handlers/ConfigHandler.java | 1 + 1 file changed, 1 insertion(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 29fa882..1d6311e 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -216,6 +216,7 @@ public class ConfigHandler { ToggleCommand.hidePetCandy = initBoolean("toggles", "HidePetCandy", false); ToggleCommand.customColouredNames = initBoolean("toggles", "CustomColouredNames", true); ToggleCommand.endOfFarmAlert = initBoolean("toggles", "EndOfFarmAlert", false); + ToggleCommand.gemstoneLore = initBoolean("toggles", "GemstoneLore", false); // Chat Messages ToggleCommand.sceptreMessages = initBoolean("toggles", "SceptreMessages", true); ToggleCommand.midasStaffMessages = initBoolean("toggles", "MidasStaffMessages", true); -- cgit From bc3f389c52aef41f6fb4351e8d0a5a8fed8336ef Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sat, 24 Jul 2021 01:54:57 -0400 Subject: Add crystal hollows waypoints With support for SBE crystal hollows waypoints --- src/main/java/me/Danker/handlers/ConfigHandler.java | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 1d6311e..d5ff5bd 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -217,6 +217,8 @@ public class ConfigHandler { ToggleCommand.customColouredNames = initBoolean("toggles", "CustomColouredNames", true); ToggleCommand.endOfFarmAlert = initBoolean("toggles", "EndOfFarmAlert", false); ToggleCommand.gemstoneLore = initBoolean("toggles", "GemstoneLore", false); + ToggleCommand.crystalHollowWaypoints = initBoolean("toggles", "CrystalHollowWaypoints", false); + ToggleCommand.crystalAutoWaypoints = initBoolean("toggles", "CrystalAutoWaypoints", true); // Chat Messages ToggleCommand.sceptreMessages = initBoolean("toggles", "SceptreMessages", true); ToggleCommand.midasStaffMessages = initBoolean("toggles", "MidasStaffMessages", true); -- cgit From d534e7e9da3c3d20825cda831f2814249e212d5a Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Fri, 30 Jul 2021 02:14:10 -0400 Subject: Auto accept reparty --- src/main/java/me/Danker/handlers/ConfigHandler.java | 1 + 1 file changed, 1 insertion(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index d5ff5bd..115f01b 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -219,6 +219,7 @@ public class ConfigHandler { ToggleCommand.gemstoneLore = initBoolean("toggles", "GemstoneLore", false); ToggleCommand.crystalHollowWaypoints = initBoolean("toggles", "CrystalHollowWaypoints", false); ToggleCommand.crystalAutoWaypoints = initBoolean("toggles", "CrystalAutoWaypoints", true); + ToggleCommand.autoAcceptReparty = initBoolean("toggles", "AutoAcceptReparty", false); // Chat Messages ToggleCommand.sceptreMessages = initBoolean("toggles", "SceptreMessages", true); ToggleCommand.midasStaffMessages = initBoolean("toggles", "MidasStaffMessages", true); -- cgit From a49b673bd9badcb7c4c02539f53c39c5b52c1b32 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sat, 31 Jul 2021 19:58:02 -0400 Subject: Add custom music to every area Hub, island, farming islands, gold mine, deep caverns, dwarven mines, crystal hollows, blazing fortress, end, park --- .../java/me/Danker/handlers/ConfigHandler.java | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 115f01b..cfee6b2 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -262,10 +262,32 @@ public class ConfigHandler { ToggleCommand.dungeonBossMusic = initBoolean("toggles", "DungeonBossMusic", false); ToggleCommand.bloodRoomMusic = initBoolean("toggles", "BloodRoomMusic", false); ToggleCommand.dungeonMusic = initBoolean("toggles", "DungeonMusic", false); + ToggleCommand.hubMusic = initBoolean("toggles", "HubMusic", false); + ToggleCommand.islandMusic = initBoolean("toggles", "IslandMusic", false); + ToggleCommand.dungeonHubMusic = initBoolean("toggles", "DungeonHubMusic", false); + ToggleCommand.farmingIslandsMusic = initBoolean("toggles", "FarmingIslandsMusic", false); + ToggleCommand.goldMineMusic = initBoolean("toggles", "GoldMineMusic", false); + ToggleCommand.deepCavernsMusic = initBoolean("toggles", "DeepCavernsMusic", false); + ToggleCommand.dwarvenMinesMusic = initBoolean("toggles", "DwarvenMinesMusic", false); + ToggleCommand.crystalHollowsMusic = initBoolean("toggles", "CrystalHollowsMusic", false); + ToggleCommand.blazingFortressMusic = initBoolean("toggles", "BlazingFortressMusic", false); + ToggleCommand.endMusic = initBoolean("toggles", "Music", false); + ToggleCommand.parkMusic = initBoolean("toggles", "Music", false); // Music Volume CustomMusic.dungeonbossVolume = initInt("music", "DungeonBossVolume", 50); CustomMusic.bloodroomVolume = initInt("music", "BloodRoomVolume", 50); CustomMusic.dungeonVolume = initInt("music", "DungeonVolume", 50); + CustomMusic.hubVolume = initInt("music", "HubVolume", 50); + CustomMusic.islandVolume = initInt("music", "IslandVolume", 50); + CustomMusic.dungeonHubVolume = initInt("music", "DungeonHubVolume", 50); + CustomMusic.farmingIslandsVolume = initInt("music", "FarmingIslandsVolume", 50); + CustomMusic.goldMineVolume = initInt("music", "GoldMineVolume", 50); + CustomMusic.deepCavernsVolume = initInt("music", "DeepCavernsVolume", 50); + CustomMusic.dwarvenMinesVolume = initInt("music", "DwarvenMinesVolume", 50); + CustomMusic.crystalHollowsVolume = initInt("music", "CrystalHollowsVolume", 50); + CustomMusic.blazingFortressVolume = initInt("music", "BlazingFortressVolume", 50); + CustomMusic.endVolume = initInt("music", "EndVolume", 50); + CustomMusic.parkVolume = initInt("music", "ParkVolume", 50); // API if (!hasKey("api", "APIKey")) writeStringConfig("api", "APIKey", ""); -- cgit From 5f2206d383afd3b6424ccda1a2d36522cfbe9b1f Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sat, 31 Jul 2021 21:16:48 -0400 Subject: Add spiders den to custom music I forgot it existed --- src/main/java/me/Danker/handlers/ConfigHandler.java | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index cfee6b2..98368e1 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -270,6 +270,7 @@ public class ConfigHandler { ToggleCommand.deepCavernsMusic = initBoolean("toggles", "DeepCavernsMusic", false); ToggleCommand.dwarvenMinesMusic = initBoolean("toggles", "DwarvenMinesMusic", false); ToggleCommand.crystalHollowsMusic = initBoolean("toggles", "CrystalHollowsMusic", false); + ToggleCommand.spidersDenMusic = initBoolean("toggles", "SpidersDenMusic", false); ToggleCommand.blazingFortressMusic = initBoolean("toggles", "BlazingFortressMusic", false); ToggleCommand.endMusic = initBoolean("toggles", "Music", false); ToggleCommand.parkMusic = initBoolean("toggles", "Music", false); @@ -285,6 +286,7 @@ public class ConfigHandler { CustomMusic.deepCavernsVolume = initInt("music", "DeepCavernsVolume", 50); CustomMusic.dwarvenMinesVolume = initInt("music", "DwarvenMinesVolume", 50); CustomMusic.crystalHollowsVolume = initInt("music", "CrystalHollowsVolume", 50); + CustomMusic.spidersDenVolume = initInt("music", "SpidersDenVolume", 50); CustomMusic.blazingFortressVolume = initInt("music", "BlazingFortressVolume", 50); CustomMusic.endVolume = initInt("music", "EndVolume", 50); CustomMusic.parkVolume = initInt("music", "ParkVolume", 50); -- cgit From 4ef36d87f423c021891075e8015b5f20760510fd Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Fri, 6 Aug 2021 20:45:44 -0400 Subject: Add option to use lily weight in /weight --- src/main/java/me/Danker/handlers/APIHandler.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/APIHandler.java b/src/main/java/me/Danker/handlers/APIHandler.java index 66001a3..4417973 100644 --- a/src/main/java/me/Danker/handlers/APIHandler.java +++ b/src/main/java/me/Danker/handlers/APIHandler.java @@ -18,7 +18,7 @@ import java.net.URL; import java.util.Scanner; public class APIHandler { - public static JsonObject getResponse(String urlString) { + public static JsonObject getResponse(String urlString, boolean hasError) { EntityPlayer player = Minecraft.getMinecraft().thePlayer; try { @@ -41,7 +41,7 @@ public class APIHandler { return gson.fromJson(response.toString(), JsonObject.class); } else { - if (urlString.startsWith("https://api.hypixel.net/") || urlString.startsWith("https://hypixel-api.senither.com")) { + if (hasError) { InputStream errorStream = conn.getErrorStream(); try (Scanner scanner = new Scanner(errorStream)) { scanner.useDelimiter("\\Z"); @@ -98,7 +98,7 @@ public class APIHandler { } public static String getUUID(String username) { - JsonObject uuidResponse = getResponse("https://api.mojang.com/users/profiles/minecraft/" + username); + JsonObject uuidResponse = getResponse("https://api.mojang.com/users/profiles/minecraft/" + username, false); return uuidResponse.get("id").getAsString(); } @@ -108,7 +108,7 @@ public class APIHandler { // Get profiles System.out.println("Fetching profiles..."); - JsonObject profilesResponse = getResponse("https://api.hypixel.net/skyblock/profiles?uuid=" + UUID + "&key=" + key); + JsonObject profilesResponse = getResponse("https://api.hypixel.net/skyblock/profiles?uuid=" + UUID + "&key=" + key, true); if (!profilesResponse.get("success").getAsBoolean()) { String reason = profilesResponse.get("cause").getAsString(); player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Failed with reason: " + reason)); -- 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/handlers/ConfigHandler.java | 341 ++++++++++----------- .../java/me/Danker/handlers/PacketHandler.java | 33 +- 2 files changed, 187 insertions(+), 187 deletions(-) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 98368e1..6655d43 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -5,8 +5,7 @@ import me.Danker.commands.MoveCommand; import me.Danker.commands.ScaleCommand; import me.Danker.commands.ToggleCommand; import me.Danker.features.*; -import me.Danker.features.loot.LootDisplay; -import me.Danker.features.loot.LootTracker; +import me.Danker.features.loot.*; import me.Danker.features.puzzlesolvers.*; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.ScaledResolution; @@ -295,196 +294,196 @@ public class ConfigHandler { if (!hasKey("api", "APIKey")) writeStringConfig("api", "APIKey", ""); // Wolf - LootTracker.wolfSvens = initInt("wolf", "svens", 0); - LootTracker.wolfTeeth = initInt("wolf", "teeth", 0); - LootTracker.wolfWheels = initInt("wolf", "wheel", 0); - LootTracker.wolfWheelsDrops = initInt("wolf", "wheelDrops", 0); - LootTracker.wolfSpirits = initInt("wolf", "spirit", 0); - LootTracker.wolfBooks = initInt("wolf", "book", 0); - LootTracker.wolfEggs = initInt("wolf", "egg", 0); - LootTracker.wolfCoutures = initInt("wolf", "couture", 0); - LootTracker.wolfBaits = initInt("wolf", "bait", 0); - LootTracker.wolfFluxes = initInt("wolf", "flux", 0); - LootTracker.wolfTime = initDouble("wolf", "timeRNG", -1); - LootTracker.wolfBosses = initInt("wolf", "bossRNG", -1); + WolfTracker.wolfSvens = initInt("wolf", "svens", 0); + WolfTracker.wolfTeeth = initInt("wolf", "teeth", 0); + WolfTracker.wolfWheels = initInt("wolf", "wheel", 0); + WolfTracker.wolfWheelsDrops = initInt("wolf", "wheelDrops", 0); + WolfTracker.wolfSpirits = initInt("wolf", "spirit", 0); + WolfTracker.wolfBooks = initInt("wolf", "book", 0); + WolfTracker.wolfEggs = initInt("wolf", "egg", 0); + WolfTracker.wolfCoutures = initInt("wolf", "couture", 0); + WolfTracker.wolfBaits = initInt("wolf", "bait", 0); + WolfTracker.wolfFluxes = initInt("wolf", "flux", 0); + WolfTracker.wolfTime = initDouble("wolf", "timeRNG", -1); + WolfTracker.wolfBosses = initInt("wolf", "bossRNG", -1); // Spider - LootTracker.spiderTarantulas = initInt("spider", "tarantulas", 0); - LootTracker.spiderWebs = initInt("spider", "web", 0); - LootTracker.spiderTAP = initInt("spider", "tap", 0); - LootTracker.spiderTAPDrops = initInt("spider", "tapDrops", 0); - LootTracker.spiderBites = initInt("spider", "bite", 0); - LootTracker.spiderCatalysts = initInt("spider", "catalyst", 0); - LootTracker.spiderBooks = initInt("spider", "book", 0); - LootTracker.spiderSwatters = initInt("spider", "swatter", 0); - LootTracker.spiderTalismans = initInt("spider", "talisman", 0); - LootTracker.spiderMosquitos = initInt("spider", "mosquito", 0); - LootTracker.spiderTime = initDouble("spider", "timeRNG", -1); - LootTracker.spiderBosses = initInt("spider", "bossRNG", -1); + SpiderTracker.spiderTarantulas = initInt("spider", "tarantulas", 0); + SpiderTracker.spiderWebs = initInt("spider", "web", 0); + SpiderTracker.spiderTAP = initInt("spider", "tap", 0); + SpiderTracker.spiderTAPDrops = initInt("spider", "tapDrops", 0); + SpiderTracker.spiderBites = initInt("spider", "bite", 0); + SpiderTracker.spiderCatalysts = initInt("spider", "catalyst", 0); + SpiderTracker.spiderBooks = initInt("spider", "book", 0); + SpiderTracker.spiderSwatters = initInt("spider", "swatter", 0); + SpiderTracker.spiderTalismans = initInt("spider", "talisman", 0); + SpiderTracker.spiderMosquitos = initInt("spider", "mosquito", 0); + SpiderTracker.spiderTime = initDouble("spider", "timeRNG", -1); + SpiderTracker.spiderBosses = initInt("spider", "bossRNG", -1); // 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); - LootTracker.zombieUndeadCatas = initInt("zombie", "undeadCatalyst", 0); - LootTracker.zombieBooks = initInt("zombie", "book", 0); - LootTracker.zombieBeheadeds = initInt("zombie", "beheaded", 0); - LootTracker.zombieRevCatas = initInt("zombie", "revCatalyst", 0); - LootTracker.zombieSnakes = initInt("zombie", "snake", 0); - LootTracker.zombieScythes = initInt("zombie", "scythe", 0); - LootTracker.zombieShards = initInt("zombie", "shard", 0); - LootTracker.zombieWardenHearts = initInt("zombie", "heart", 0); - LootTracker.zombieTime = initDouble("zombie", "timeRNG", -1); - LootTracker.zombieBosses = initInt("zombie", "bossRNG", -1); + ZombieTracker.zombieRevs = initInt("zombie", "revs", 0); + ZombieTracker.zombieRevFlesh = initInt("zombie", "revFlesh", 0); + ZombieTracker.zombieRevViscera = initInt("zombie", "revViscera", 0); + ZombieTracker.zombieFoulFlesh = initInt("zombie", "foulFlesh", 0); + ZombieTracker.zombieFoulFleshDrops = initInt("zombie", "foulFleshDrops", 0); + ZombieTracker.zombiePestilences = initInt("zombie", "pestilence", 0); + ZombieTracker.zombieUndeadCatas = initInt("zombie", "undeadCatalyst", 0); + ZombieTracker.zombieBooks = initInt("zombie", "book", 0); + ZombieTracker.zombieBeheadeds = initInt("zombie", "beheaded", 0); + ZombieTracker.zombieRevCatas = initInt("zombie", "revCatalyst", 0); + ZombieTracker.zombieSnakes = initInt("zombie", "snake", 0); + ZombieTracker.zombieScythes = initInt("zombie", "scythe", 0); + ZombieTracker.zombieShards = initInt("zombie", "shard", 0); + ZombieTracker.zombieWardenHearts = initInt("zombie", "heart", 0); + ZombieTracker.zombieTime = initDouble("zombie", "timeRNG", -1); + ZombieTracker.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); + EndermanTracker.endermanVoidglooms = initInt("enderman", "voidglooms", 0); + EndermanTracker.endermanNullSpheres = initInt("enderman", "nullSpheres", 0); + EndermanTracker.endermanTAP = initInt("enderman", "tap", 0); + EndermanTracker.endermanTAPDrops = initInt("enderman", "tapDrops", 0); + EndermanTracker.endermanEndersnakes = initInt("enderman", "endersnakes", 0); + EndermanTracker.endermanSummoningEyes = initInt("enderman", "summoningEyes", 0); + EndermanTracker.endermanManaBooks = initInt("enderman", "manaBooks", 0); + EndermanTracker.endermanTuners = initInt("enderman", "tuners", 0); + EndermanTracker.endermanAtoms = initInt("enderman", "atoms", 0); + EndermanTracker.endermanEspressoMachines = initInt("enderman", "espressoMachines", 0); + EndermanTracker.endermanSmartyBooks = initInt("enderman", "smartyBooks", 0); + EndermanTracker.endermanEndRunes = initInt("enderman", "endRunes", 0); + EndermanTracker.endermanChalices = initInt("enderman", "chalices", 0); + EndermanTracker.endermanDice = initInt("enderman", "dice", 0); + EndermanTracker.endermanArtifacts = initInt("enderman", "artifacts", 0); + EndermanTracker.endermanSkins = initInt("enderman", "skins", 0); + EndermanTracker.endermanMergers = initInt("enderman", "mergers", 0); + EndermanTracker.endermanCores = initInt("enderman", "cores", 0); + EndermanTracker.endermanEnchantRunes = initInt("enderman", "enchantRunes", 0); + EndermanTracker.endermanEnderBooks = initInt("enderman", "enderBooks", 0); + EndermanTracker.endermanTime = initDouble("enderman", "timeRNG", -1); + EndermanTracker.endermanBosses = initInt("enderman", "bossRNG", -1); // Fishing - LootTracker.seaCreatures = initInt("fishing", "seaCreature", 0); - LootTracker.goodCatches = initInt("fishing", "goodCatch", 0); - LootTracker.greatCatches = initInt("fishing", "greatCatch", 0); - LootTracker.squids = initInt("fishing", "squid", 0); - LootTracker.seaWalkers = initInt("fishing", "seaWalker", 0); - LootTracker.nightSquids = initInt("fishing", "nightSquid", 0); - LootTracker.seaGuardians = initInt("fishing", "seaGuardian", 0); - LootTracker.seaWitches = initInt("fishing", "seaWitch", 0); - LootTracker.seaArchers = initInt("fishing", "seaArcher", 0); - LootTracker.monsterOfTheDeeps = initInt("fishing", "monsterOfDeep", 0); - LootTracker.catfishes = initInt("fishing", "catfish", 0); - LootTracker.carrotKings = initInt("fishing", "carrotKing", 0); - LootTracker.seaLeeches = initInt("fishing", "seaLeech", 0); - LootTracker.guardianDefenders = initInt("fishing", "guardianDefender", 0); - LootTracker.deepSeaProtectors = initInt("fishing", "deepSeaProtector", 0); - LootTracker.hydras = initInt("fishing", "hydra", 0); - LootTracker.seaEmperors = initInt("fishing", "seaEmperor", 0); - LootTracker.empTime = initDouble("fishing", "empTime", -1); - LootTracker.empSCs = initInt("fishing", "empSC", -1); - LootTracker.fishingMilestone = initInt("fishing", "milestone", 0); + FishingTracker.seaCreatures = initInt("fishing", "seaCreature", 0); + FishingTracker.goodCatches = initInt("fishing", "goodCatch", 0); + FishingTracker.greatCatches = initInt("fishing", "greatCatch", 0); + FishingTracker.squids = initInt("fishing", "squid", 0); + FishingTracker.seaWalkers = initInt("fishing", "seaWalker", 0); + FishingTracker.nightSquids = initInt("fishing", "nightSquid", 0); + FishingTracker.seaGuardians = initInt("fishing", "seaGuardian", 0); + FishingTracker.seaWitches = initInt("fishing", "seaWitch", 0); + FishingTracker.seaArchers = initInt("fishing", "seaArcher", 0); + FishingTracker.monsterOfTheDeeps = initInt("fishing", "monsterOfDeep", 0); + FishingTracker.catfishes = initInt("fishing", "catfish", 0); + FishingTracker.carrotKings = initInt("fishing", "carrotKing", 0); + FishingTracker.seaLeeches = initInt("fishing", "seaLeech", 0); + FishingTracker.guardianDefenders = initInt("fishing", "guardianDefender", 0); + FishingTracker.deepSeaProtectors = initInt("fishing", "deepSeaProtector", 0); + FishingTracker.hydras = initInt("fishing", "hydra", 0); + FishingTracker.seaEmperors = initInt("fishing", "seaEmperor", 0); + FishingTracker.empTime = initDouble("fishing", "empTime", -1); + FishingTracker.empSCs = initInt("fishing", "empSC", -1); + FishingTracker.fishingMilestone = initInt("fishing", "milestone", 0); // Fishing Winter - LootTracker.frozenSteves = initInt("fishing", "frozenSteve", 0); - LootTracker.frostyTheSnowmans = initInt("fishing", "snowman", 0); - LootTracker.grinches = initInt("fishing", "grinch", 0); - LootTracker.yetis = initInt("fishing", "yeti", 0); - LootTracker.yetiTime = initDouble("fishing", "yetiTime", -1); - LootTracker.yetiSCs = initInt("fishing", "yetiSC", -1); + FishingTracker.frozenSteves = initInt("fishing", "frozenSteve", 0); + FishingTracker.frostyTheSnowmans = initInt("fishing", "snowman", 0); + FishingTracker.grinches = initInt("fishing", "grinch", 0); + FishingTracker.yetis = initInt("fishing", "yeti", 0); + FishingTracker.yetiTime = initDouble("fishing", "yetiTime", -1); + FishingTracker.yetiSCs = initInt("fishing", "yetiSC", -1); // Fishing Festival - LootTracker.nurseSharks = initInt("fishing", "nurseShark", 0); - LootTracker.blueSharks = initInt("fishing", "blueShark", 0); - LootTracker.tigerSharks = initInt("fishing", "tigerShark", 0); - LootTracker.greatWhiteSharks = initInt("fishing", "greatWhiteShark", 0); + FishingTracker.nurseSharks = initInt("fishing", "nurseShark", 0); + FishingTracker.blueSharks = initInt("fishing", "blueShark", 0); + FishingTracker.tigerSharks = initInt("fishing", "tigerShark", 0); + FishingTracker.greatWhiteSharks = initInt("fishing", "greatWhiteShark", 0); // Spooky Fishing - LootTracker.scarecrows = initInt("fishing", "scarecrow", 0); - LootTracker.nightmares = initInt("fishing", "nightmare", 0); - LootTracker.werewolfs = initInt("fishing", "werewolf", 0); - LootTracker.phantomFishers = initInt("fishing", "phantomFisher", 0); - LootTracker.grimReapers = initInt("fishing", "grimReaper", 0); + FishingTracker.scarecrows = initInt("fishing", "scarecrow", 0); + FishingTracker.nightmares = initInt("fishing", "nightmare", 0); + FishingTracker.werewolfs = initInt("fishing", "werewolf", 0); + FishingTracker.phantomFishers = initInt("fishing", "phantomFisher", 0); + FishingTracker.grimReapers = initInt("fishing", "grimReaper", 0); // Mythological - LootTracker.mythCoins = initDouble("mythological", "coins", 0); - LootTracker.griffinFeathers = initInt("mythological", "griffinFeather", 0); - LootTracker.crownOfGreeds = initInt("mythological", "crownOfGreed", 0); - LootTracker.washedUpSouvenirs = initInt("mythological", "washedUpSouvenir", 0); - LootTracker.minosHunters = initInt("mythological", "minosHunter", 0); - LootTracker.siameseLynxes = initInt("mythological", "siameseLynx", 0); - LootTracker.minotaurs = initInt("mythological", "minotaur", 0); - LootTracker.gaiaConstructs = initInt("mythological", "gaiaConstruct", 0); - LootTracker.minosChampions = initInt("mythological", "minosChampion", 0); - LootTracker.minosInquisitors = initInt("mythological", "minosInquisitor", 0); + MythologicalTracker.mythCoins = initDouble("mythological", "coins", 0); + MythologicalTracker.griffinFeathers = initInt("mythological", "griffinFeather", 0); + MythologicalTracker.crownOfGreeds = initInt("mythological", "crownOfGreed", 0); + MythologicalTracker.washedUpSouvenirs = initInt("mythological", "washedUpSouvenir", 0); + MythologicalTracker.minosHunters = initInt("mythological", "minosHunter", 0); + MythologicalTracker.siameseLynxes = initInt("mythological", "siameseLynx", 0); + MythologicalTracker.minotaurs = initInt("mythological", "minotaur", 0); + MythologicalTracker.gaiaConstructs = initInt("mythological", "gaiaConstruct", 0); + MythologicalTracker.minosChampions = initInt("mythological", "minosChampion", 0); + MythologicalTracker.minosInquisitors = initInt("mythological", "minosInquisitor", 0); // Dungeons - LootTracker.recombobulators = initInt("catacombs", "recombobulator", 0); - LootTracker.fumingPotatoBooks = initInt("catacombs", "fumingBooks", 0); + CatacombsTracker.recombobulators = initInt("catacombs", "recombobulator", 0); + CatacombsTracker.fumingPotatoBooks = initInt("catacombs", "fumingBooks", 0); // F1 - LootTracker.bonzoStaffs = initInt("catacombs", "bonzoStaff", 0); - LootTracker.f1CoinsSpent = initDouble("catacombs", "floorOneCoins", 0); - LootTracker.f1TimeSpent = initDouble("catacombs", "floorOneTime", 0); + CatacombsTracker.bonzoStaffs = initInt("catacombs", "bonzoStaff", 0); + CatacombsTracker.f1CoinsSpent = initDouble("catacombs", "floorOneCoins", 0); + CatacombsTracker.f1TimeSpent = initDouble("catacombs", "floorOneTime", 0); // F2 - LootTracker.scarfStudies = initInt("catacombs", "scarfStudies", 0); - LootTracker.f2CoinsSpent = initDouble("catacombs", "floorTwoCoins", 0); - LootTracker.f2TimeSpent = initDouble("catacombs", "floorTwoTime", 0); + CatacombsTracker.scarfStudies = initInt("catacombs", "scarfStudies", 0); + CatacombsTracker.f2CoinsSpent = initDouble("catacombs", "floorTwoCoins", 0); + CatacombsTracker.f2TimeSpent = initDouble("catacombs", "floorTwoTime", 0); // F3 - LootTracker.adaptiveHelms = initInt("catacombs", "adaptiveHelm", 0); - LootTracker.adaptiveChests = initInt("catacombs", "adaptiveChest", 0); - LootTracker.adaptiveLegs = initInt("catacombs", "adaptiveLegging", 0); - LootTracker.adaptiveBoots = initInt("catacombs", "adaptiveBoot", 0); - LootTracker.adaptiveSwords = initInt("catacombs", "adaptiveSword", 0); - LootTracker.f3CoinsSpent = initDouble("catacombs", "floorThreeCoins", 0); - LootTracker.f3TimeSpent = initDouble("catacombs", "floorThreeTime", 0); + CatacombsTracker.adaptiveHelms = initInt("catacombs", "adaptiveHelm", 0); + CatacombsTracker.adaptiveChests = initInt("catacombs", "adaptiveChest", 0); + CatacombsTracker.adaptiveLegs = initInt("catacombs", "adaptiveLegging", 0); + CatacombsTracker.adaptiveBoots = initInt("catacombs", "adaptiveBoot", 0); + CatacombsTracker.adaptiveSwords = initInt("catacombs", "adaptiveSword", 0); + CatacombsTracker.f3CoinsSpent = initDouble("catacombs", "floorThreeCoins", 0); + CatacombsTracker.f3TimeSpent = initDouble("catacombs", "floorThreeTime", 0); // F4 - LootTracker.spiritWings = initInt("catacombs", "spiritWing", 0); - LootTracker.spiritBones = initInt("catacombs", "spiritBone", 0); - LootTracker.spiritBoots = initInt("catacombs", "spiritBoot", 0); - LootTracker.spiritSwords = initInt("catacombs", "spiritSword", 0); - LootTracker.spiritBows = initInt("catacombs", "spiritBow", 0); - LootTracker.epicSpiritPets = initInt("catacombs", "spiritPetEpic", 0); - LootTracker.legSpiritPets = initInt("catacombs", "spiritPetLeg", 0); - LootTracker.f4CoinsSpent = initDouble("catacombs", "floorFourCoins", 0); - LootTracker.f4TimeSpent = initDouble("catacombs", "floorFourTime", 0); + CatacombsTracker.spiritWings = initInt("catacombs", "spiritWing", 0); + CatacombsTracker.spiritBones = initInt("catacombs", "spiritBone", 0); + CatacombsTracker.spiritBoots = initInt("catacombs", "spiritBoot", 0); + CatacombsTracker.spiritSwords = initInt("catacombs", "spiritSword", 0); + CatacombsTracker.spiritBows = initInt("catacombs", "spiritBow", 0); + CatacombsTracker.epicSpiritPets = initInt("catacombs", "spiritPetEpic", 0); + CatacombsTracker.legSpiritPets = initInt("catacombs", "spiritPetLeg", 0); + CatacombsTracker.f4CoinsSpent = initDouble("catacombs", "floorFourCoins", 0); + CatacombsTracker.f4TimeSpent = initDouble("catacombs", "floorFourTime", 0); // F5 - LootTracker.warpedStones = initInt("catacombs", "warpedStone", 0); - LootTracker.shadowAssHelms = initInt("catacombs", "shadowAssassinHelm", 0); - LootTracker.shadowAssChests = initInt("catacombs", "shadowAssassinChest", 0); - LootTracker.shadowAssLegs = initInt("catacombs", "shadowAssassinLegging", 0); - LootTracker.shadowAssBoots = initInt("catacombs", "shadowAssassinBoot", 0); - LootTracker.lastBreaths = initInt("catacombs", "lastBreath", 0); - LootTracker.lividDaggers = initInt("catacombs", "lividDagger", 0); - LootTracker.shadowFurys = initInt("catacombs", "shadowFury", 0); - LootTracker.f5CoinsSpent = initDouble("catacombs", "floorFiveCoins", 0); - LootTracker.f5TimeSpent = initDouble("catacombs", "floorFiveTime", 0); + CatacombsTracker.warpedStones = initInt("catacombs", "warpedStone", 0); + CatacombsTracker.shadowAssHelms = initInt("catacombs", "shadowAssassinHelm", 0); + CatacombsTracker.shadowAssChests = initInt("catacombs", "shadowAssassinChest", 0); + CatacombsTracker.shadowAssLegs = initInt("catacombs", "shadowAssassinLegging", 0); + CatacombsTracker.shadowAssBoots = initInt("catacombs", "shadowAssassinBoot", 0); + CatacombsTracker.lastBreaths = initInt("catacombs", "lastBreath", 0); + CatacombsTracker.lividDaggers = initInt("catacombs", "lividDagger", 0); + CatacombsTracker.shadowFurys = initInt("catacombs", "shadowFury", 0); + CatacombsTracker.f5CoinsSpent = initDouble("catacombs", "floorFiveCoins", 0); + CatacombsTracker.f5TimeSpent = initDouble("catacombs", "floorFiveTime", 0); // F6 - LootTracker.ancientRoses = initInt("catacombs", "ancientRose", 0); - LootTracker.precursorEyes = initInt("catacombs", "precursorEye", 0); - LootTracker.giantsSwords = initInt("catacombs", "giantsSword", 0); - LootTracker.necroLordHelms = initInt("catacombs", "necroLordHelm", 0); - LootTracker.necroLordChests = initInt("catacombs", "necroLordChest", 0); - LootTracker.necroLordLegs = initInt("catacombs", "necroLordLegging", 0); - LootTracker.necroLordBoots = initInt("catacombs", "necroLordBoot", 0); - LootTracker.necroSwords = initInt("catacombs", "necroSword", 0); - LootTracker.f6CoinsSpent = initDouble("catacombs", "floorSixCoins", 0); - LootTracker.f6TimeSpent = initDouble("catacombs", "floorSixTime", 0); + CatacombsTracker.ancientRoses = initInt("catacombs", "ancientRose", 0); + CatacombsTracker.precursorEyes = initInt("catacombs", "precursorEye", 0); + CatacombsTracker.giantsSwords = initInt("catacombs", "giantsSword", 0); + CatacombsTracker.necroLordHelms = initInt("catacombs", "necroLordHelm", 0); + CatacombsTracker.necroLordChests = initInt("catacombs", "necroLordChest", 0); + CatacombsTracker.necroLordLegs = initInt("catacombs", "necroLordLegging", 0); + CatacombsTracker.necroLordBoots = initInt("catacombs", "necroLordBoot", 0); + CatacombsTracker.necroSwords = initInt("catacombs", "necroSword", 0); + CatacombsTracker.f6CoinsSpent = initDouble("catacombs", "floorSixCoins", 0); + CatacombsTracker.f6TimeSpent = initDouble("catacombs", "floorSixTime", 0); // F7 - LootTracker.witherBloods = initInt("catacombs", "witherBlood", 0); - LootTracker.witherCloaks = initInt("catacombs", "witherCloak", 0); - LootTracker.implosions = initInt("catacombs", "implosion", 0); - LootTracker.witherShields = initInt("catacombs", "witherShield", 0); - LootTracker.shadowWarps = initInt("catacombs", "shadowWarp", 0); - LootTracker.necronsHandles = initInt("catacombs", "necronsHandle", 0); - LootTracker.autoRecombs = initInt("catacombs", "autoRecomb", 0); - LootTracker.witherHelms = initInt("catacombs", "witherHelm", 0); - LootTracker.witherChests = initInt("catacombs", "witherChest", 0); - LootTracker.witherLegs = initInt("catacombs", "witherLegging", 0); - LootTracker.witherBoots = initInt("catacombs", "witherBoot", 0); - LootTracker.f7CoinsSpent = initDouble("catacombs", "floorSevenCoins", 0); - LootTracker.f7TimeSpent = initDouble("catacombs", "floorSevenTime", 0); + CatacombsTracker.witherBloods = initInt("catacombs", "witherBlood", 0); + CatacombsTracker.witherCloaks = initInt("catacombs", "witherCloak", 0); + CatacombsTracker.implosions = initInt("catacombs", "implosion", 0); + CatacombsTracker.witherShields = initInt("catacombs", "witherShield", 0); + CatacombsTracker.shadowWarps = initInt("catacombs", "shadowWarp", 0); + CatacombsTracker.necronsHandles = initInt("catacombs", "necronsHandle", 0); + CatacombsTracker.autoRecombs = initInt("catacombs", "autoRecomb", 0); + CatacombsTracker.witherHelms = initInt("catacombs", "witherHelm", 0); + CatacombsTracker.witherChests = initInt("catacombs", "witherChest", 0); + CatacombsTracker.witherLegs = initInt("catacombs", "witherLegging", 0); + CatacombsTracker.witherBoots = initInt("catacombs", "witherBoot", 0); + CatacombsTracker.f7CoinsSpent = initDouble("catacombs", "floorSevenCoins", 0); + CatacombsTracker.f7TimeSpent = initDouble("catacombs", "floorSevenTime", 0); // Ghost - LootTracker.sorrows = initInt("ghosts", "sorrow", 0); - LootTracker.voltas = initInt("ghosts", "volta", 0); - LootTracker.plasmas = initInt("ghosts", "plasma", 0); - LootTracker.ghostlyBoots = initInt("ghosts", "ghostlyBoots", 0); - LootTracker.bagOfCashs = initInt("ghosts", "bagOfCash", 0); + GhostTracker.sorrows = initInt("ghosts", "sorrow", 0); + GhostTracker.voltas = initInt("ghosts", "volta", 0); + GhostTracker.plasmas = initInt("ghosts", "plasma", 0); + GhostTracker.ghostlyBoots = initInt("ghosts", "ghostlyBoots", 0); + GhostTracker.bagOfCashs = initInt("ghosts", "bagOfCash", 0); // Misc LootDisplay.display = initString("misc", "display", "off"); diff --git a/src/main/java/me/Danker/handlers/PacketHandler.java b/src/main/java/me/Danker/handlers/PacketHandler.java index a4fd85e..a5a858b 100644 --- a/src/main/java/me/Danker/handlers/PacketHandler.java +++ b/src/main/java/me/Danker/handlers/PacketHandler.java @@ -2,29 +2,30 @@ package me.Danker.handlers; import io.netty.channel.ChannelDuplexHandler; import io.netty.channel.ChannelHandlerContext; -import me.Danker.utils.Utils; -import net.minecraft.client.Minecraft; +import io.netty.channel.ChannelPromise; +import me.Danker.events.PacketReadEvent; +import me.Danker.events.PacketWriteEvent; import net.minecraft.network.Packet; -import net.minecraft.network.play.server.S04PacketEntityEquipment; - -import java.lang.reflect.Field; +import net.minecraftforge.common.MinecraftForge; public class PacketHandler extends ChannelDuplexHandler { - - // Spirit boots fix + @Override public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception { - if (Utils.inSkyblock && msg instanceof Packet && msg.getClass().getName().endsWith("S04PacketEntityEquipment")) { // Inventory packet name - S04PacketEntityEquipment packet = (S04PacketEntityEquipment) msg; - if (packet.getEntityID() == Minecraft.getMinecraft().thePlayer.getEntityId()) { - Field slot = packet.getClass().getDeclaredField("field_149392_b"); // equipmentSlot - slot.setAccessible(true); - slot.setInt(packet, slot.getInt(packet) + 1); - msg = packet; - } + if (msg instanceof Packet) { + if (MinecraftForge.EVENT_BUS.post(new PacketReadEvent((Packet) msg))) return; } - + super.channelRead(ctx, msg); } + + @Override + public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) throws Exception { + if (msg instanceof Packet) { + if (MinecraftForge.EVENT_BUS.post(new PacketWriteEvent((Packet) msg))) return; + } + + super.write(ctx, msg, promise); + } } -- cgit From 6bc2a39f06664f55e8fe2eae06ddecb38173c6b5 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Fri, 3 Sep 2021 20:04:01 -0400 Subject: Add S+ runs and rerolls to catacombs tracker --- src/main/java/me/Danker/handlers/ConfigHandler.java | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 6655d43..5323202 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -416,14 +416,17 @@ public class ConfigHandler { CatacombsTracker.recombobulators = initInt("catacombs", "recombobulator", 0); CatacombsTracker.fumingPotatoBooks = initInt("catacombs", "fumingBooks", 0); // F1 + CatacombsTracker.f1SPlus = initInt("catacombs", "floorOneSPlus", 0); CatacombsTracker.bonzoStaffs = initInt("catacombs", "bonzoStaff", 0); CatacombsTracker.f1CoinsSpent = initDouble("catacombs", "floorOneCoins", 0); CatacombsTracker.f1TimeSpent = initDouble("catacombs", "floorOneTime", 0); // F2 + CatacombsTracker.f2SPlus = initInt("catacombs", "floorTwoSPlus", 0); CatacombsTracker.scarfStudies = initInt("catacombs", "scarfStudies", 0); CatacombsTracker.f2CoinsSpent = initDouble("catacombs", "floorTwoCoins", 0); CatacombsTracker.f2TimeSpent = initDouble("catacombs", "floorTwoTime", 0); // F3 + CatacombsTracker.f3SPlus = initInt("catacombs", "floorThreeSPlus", 0); CatacombsTracker.adaptiveHelms = initInt("catacombs", "adaptiveHelm", 0); CatacombsTracker.adaptiveChests = initInt("catacombs", "adaptiveChest", 0); CatacombsTracker.adaptiveLegs = initInt("catacombs", "adaptiveLegging", 0); @@ -432,6 +435,7 @@ public class ConfigHandler { CatacombsTracker.f3CoinsSpent = initDouble("catacombs", "floorThreeCoins", 0); CatacombsTracker.f3TimeSpent = initDouble("catacombs", "floorThreeTime", 0); // F4 + CatacombsTracker.f4SPlus = initInt("catacombs", "floorFourSPlus", 0); CatacombsTracker.spiritWings = initInt("catacombs", "spiritWing", 0); CatacombsTracker.spiritBones = initInt("catacombs", "spiritBone", 0); CatacombsTracker.spiritBoots = initInt("catacombs", "spiritBoot", 0); @@ -442,6 +446,7 @@ public class ConfigHandler { CatacombsTracker.f4CoinsSpent = initDouble("catacombs", "floorFourCoins", 0); CatacombsTracker.f4TimeSpent = initDouble("catacombs", "floorFourTime", 0); // F5 + CatacombsTracker.f5SPlus = initInt("catacombs", "floorFiveSPlus", 0); CatacombsTracker.warpedStones = initInt("catacombs", "warpedStone", 0); CatacombsTracker.shadowAssHelms = initInt("catacombs", "shadowAssassinHelm", 0); CatacombsTracker.shadowAssChests = initInt("catacombs", "shadowAssassinChest", 0); @@ -453,6 +458,7 @@ public class ConfigHandler { CatacombsTracker.f5CoinsSpent = initDouble("catacombs", "floorFiveCoins", 0); CatacombsTracker.f5TimeSpent = initDouble("catacombs", "floorFiveTime", 0); // F6 + CatacombsTracker.f6SPlus = initInt("catacombs", "floorSixSPlus", 0); CatacombsTracker.ancientRoses = initInt("catacombs", "ancientRose", 0); CatacombsTracker.precursorEyes = initInt("catacombs", "precursorEye", 0); CatacombsTracker.giantsSwords = initInt("catacombs", "giantsSword", 0); @@ -461,9 +467,11 @@ public class ConfigHandler { CatacombsTracker.necroLordLegs = initInt("catacombs", "necroLordLegging", 0); CatacombsTracker.necroLordBoots = initInt("catacombs", "necroLordBoot", 0); CatacombsTracker.necroSwords = initInt("catacombs", "necroSword", 0); + CatacombsTracker.f6Rerolls = initInt("catacombs", "floorSixRerolls", 0); CatacombsTracker.f6CoinsSpent = initDouble("catacombs", "floorSixCoins", 0); CatacombsTracker.f6TimeSpent = initDouble("catacombs", "floorSixTime", 0); // F7 + CatacombsTracker.f7SPlus = initInt("catacombs", "floorSevenSPlus", 0); CatacombsTracker.witherBloods = initInt("catacombs", "witherBlood", 0); CatacombsTracker.witherCloaks = initInt("catacombs", "witherCloak", 0); CatacombsTracker.implosions = initInt("catacombs", "implosion", 0); @@ -475,6 +483,7 @@ public class ConfigHandler { CatacombsTracker.witherChests = initInt("catacombs", "witherChest", 0); CatacombsTracker.witherLegs = initInt("catacombs", "witherLegging", 0); CatacombsTracker.witherBoots = initInt("catacombs", "witherBoot", 0); + CatacombsTracker.f7Rerolls = initInt("catacombs", "floorSevenRerolls", 0); CatacombsTracker.f7CoinsSpent = initDouble("catacombs", "floorSevenCoins", 0); CatacombsTracker.f7TimeSpent = initDouble("catacombs", "floorSevenTime", 0); -- cgit From 0707ac473037146819c5a43c808b6ee41f014a63 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Mon, 6 Sep 2021 22:16:11 -0400 Subject: Add ability cooldown display --- src/main/java/me/Danker/handlers/ConfigHandler.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 5323202..9195184 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -217,8 +217,9 @@ public class ConfigHandler { ToggleCommand.endOfFarmAlert = initBoolean("toggles", "EndOfFarmAlert", false); ToggleCommand.gemstoneLore = initBoolean("toggles", "GemstoneLore", false); ToggleCommand.crystalHollowWaypoints = initBoolean("toggles", "CrystalHollowWaypoints", false); - ToggleCommand.crystalAutoWaypoints = initBoolean("toggles", "CrystalAutoWaypoints", true); + ToggleCommand.crystalAutoWaypoints = initBoolean("toggles", "CrystalAutoWaypoints", true); // enabled by default ToggleCommand.autoAcceptReparty = initBoolean("toggles", "AutoAcceptReparty", false); + ToggleCommand.abilityCooldowns = initBoolean("toggles", "AbilityCooldowns", false); // Chat Messages ToggleCommand.sceptreMessages = initBoolean("toggles", "SceptreMessages", true); ToggleCommand.midasStaffMessages = initBoolean("toggles", "MidasStaffMessages", true); @@ -531,6 +532,8 @@ public class ConfigHandler { MoveCommand.teammatesInRadiusXY[1] = initInt("locations", "teammatesInRadiusY", 100); MoveCommand.giantHPXY[0] = initInt("locations", "giantHPX", 80); MoveCommand.giantHPXY[1] = initInt("locations", "giantHPY", 150); + MoveCommand.abilityCooldownsXY[0] = initInt("locations", "abilityCooldownsX", 120); + MoveCommand.abilityCooldownsXY[1] = initInt("locations", "abilityCooldownsY", 150); // Scales ScaleCommand.coordsScale = initDouble("scales", "coordsScale", 1); @@ -545,6 +548,7 @@ public class ConfigHandler { ScaleCommand.golemTimerScale = initDouble("scales", "golemTimerScale", 1); ScaleCommand.teammatesInRadiusScale = initDouble("scales", "teammatesInRadiusScale", 1); ScaleCommand.giantHPScale = initDouble("scales", "giantHPScale", 1); + ScaleCommand.abilityCooldownsScale = initDouble("scales", "abilityCooldownsScale", 1); // Skills DankersSkyblockMod.farmingLevel = initInt("skills", "farming", -1); @@ -559,7 +563,7 @@ public class ConfigHandler { // Colours DankersSkyblockMod.MAIN_COLOUR = initString("colors", "main", EnumChatFormatting.GREEN.toString()); DankersSkyblockMod.SECONDARY_COLOUR = initString("colors", "secondary", EnumChatFormatting.DARK_GREEN.toString()); - DankersSkyblockMod.DELIMITER_COLOUR = initString("colors", "delimiter", EnumChatFormatting.AQUA.toString() + EnumChatFormatting.STRIKETHROUGH.toString()); + DankersSkyblockMod.DELIMITER_COLOUR = initString("colors", "delimiter", EnumChatFormatting.AQUA.toString() + EnumChatFormatting.STRIKETHROUGH); DankersSkyblockMod.ERROR_COLOUR = initString("colors", "error", EnumChatFormatting.RED.toString()); DankersSkyblockMod.TYPE_COLOUR = initString("colors", "type", EnumChatFormatting.GREEN.toString()); DankersSkyblockMod.VALUE_COLOUR = initString("colors", "value", EnumChatFormatting.DARK_GREEN.toString()); -- cgit From 8bd93c4ff81de99f73d24314e0bfd180e6f25255 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sat, 20 Nov 2021 22:39:13 -0500 Subject: Add /hotmof command Also make API handler use UTF-8 --- src/main/java/me/Danker/handlers/APIHandler.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/APIHandler.java b/src/main/java/me/Danker/handlers/APIHandler.java index 4417973..736a7d7 100644 --- a/src/main/java/me/Danker/handlers/APIHandler.java +++ b/src/main/java/me/Danker/handlers/APIHandler.java @@ -15,6 +15,7 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; +import java.nio.charset.StandardCharsets; import java.util.Scanner; public class APIHandler { @@ -28,7 +29,7 @@ public class APIHandler { conn.setRequestProperty("User-Agent", "Dsm/1.0"); if (conn.getResponseCode() == HttpURLConnection.HTTP_OK) { - BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream())); + BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), StandardCharsets.UTF_8)); String input; StringBuilder response = new StringBuilder(); -- cgit From 69d505b5b1d215a7bba3f1aecd31b187d1705d08 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sun, 21 Nov 2021 18:17:31 -0500 Subject: Add /networth command Uses Maro API --- src/main/java/me/Danker/handlers/APIHandler.java | 29 ++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/APIHandler.java b/src/main/java/me/Danker/handlers/APIHandler.java index 736a7d7..3c3d9b2 100644 --- a/src/main/java/me/Danker/handlers/APIHandler.java +++ b/src/main/java/me/Danker/handlers/APIHandler.java @@ -8,6 +8,12 @@ import me.Danker.DankersSkyblockMod; import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.ChatComponentText; +import org.apache.http.HttpResponse; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.apache.http.util.EntityUtils; import java.io.BufferedReader; import java.io.IOException; @@ -64,6 +70,29 @@ public class APIHandler { return new JsonObject(); } + + public static JsonObject getResponsePOST(String urlString, JsonObject body, boolean hasError) throws IOException { + EntityPlayer player = Minecraft.getMinecraft().thePlayer; + + CloseableHttpClient httpClient = HttpClientBuilder.create().build(); + + try { + HttpPost req = new HttpPost(urlString); + StringEntity params = new StringEntity(body.toString()); + req.addHeader("content-type", "application/json"); + req.setEntity(params); + HttpResponse response = httpClient.execute(req); + + return new Gson().fromJson(EntityUtils.toString(response.getEntity(), "UTF-8"), JsonObject.class); + } catch (Exception ex) { + player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "An error has occured. See logs for more details.")); + ex.printStackTrace(); + } finally { + httpClient.close(); + } + + return new JsonObject(); + } // Only used for UUID => Username public static JsonArray getArrayResponse(String urlString) { -- cgit From 871e4e7b1257ceb459cd78b33c9f4b107a8ab9bb Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Wed, 24 Nov 2021 17:48:30 -0500 Subject: Re-add blocking click features Add blocking starting wrong slayer quest Add block placing flower weapons Add blocking misclicks in solvers Add F7 arrow terminal solver (Source: https://cdn.discordapp.com/attachments/823769568933576764/906101631861526559/unknown.png) --- src/main/java/me/Danker/handlers/ConfigHandler.java | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 9195184..2a765ad 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -238,6 +238,7 @@ public class ConfigHandler { ToggleCommand.necronNotificationsToggled = initBoolean("toggles", "NecronNotifications", false); ToggleCommand.bonzoTimerToggled = initBoolean("toggles", "BonzoTimer", false); ToggleCommand.swapToPickBlockToggled = initBoolean("toggles", "PickBlock", false); + ToggleCommand.flowerWeaponsToggled = initBoolean("toggles", "FlowerWeapons", false); ToggleCommand.autoSkillTrackerToggled = initBoolean("toggles", "AutoSkillTracker", false); // Puzzle Solvers ToggleCommand.threeManToggled = initBoolean("toggles", "ThreeManPuzzle", false); @@ -253,6 +254,8 @@ public class ConfigHandler { ToggleCommand.startsWithToggled = initBoolean("toggles", "StartsWithTerminal", false); ToggleCommand.selectAllToggled = initBoolean("toggles", "SelectAllTerminal", false); ToggleCommand.clickInOrderToggled = initBoolean("toggles", "ClickInOrderTerminal", false); + ToggleCommand.blockWrongTerminalClicksToggled = initBoolean("toggles", "BlockWrongTerminalClicks", false); + ToggleCommand.itemFrameOnSeaLanternsToggled = initBoolean("toggles", "IgnoreItemFrameOnSeaLanterns", false); // Experiment Solvers ToggleCommand.ultrasequencerToggled = initBoolean("toggles", "UltraSequencer", false); ToggleCommand.chronomatronToggled = initBoolean("toggles", "Chronomatron", false); @@ -293,6 +296,14 @@ public class ConfigHandler { // API if (!hasKey("api", "APIKey")) writeStringConfig("api", "APIKey", ""); + + // Block Wrong Slayer + if (!hasKey("toggles", "BlockSlayer")) writeStringConfig("toggles", "BlockSlayer", ""); + String onlySlayer = getString("toggles", "BlockSlayer"); + if (!onlySlayer.equals("")) { + BlockWrongSlayer.onlySlayerName = onlySlayer.substring(0, onlySlayer.lastIndexOf(" ")); + BlockWrongSlayer.onlySlayerNumber = onlySlayer.substring(onlySlayer.lastIndexOf(" ") + 1); + } // Wolf WolfTracker.wolfSvens = initInt("wolf", "svens", 0); -- cgit From c466240003b130b43c17da9e585b80380154e4c4 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Wed, 24 Nov 2021 21:58:26 -0500 Subject: Add custom alerts based on chat Also move some other stuff around --- .../java/me/Danker/handlers/ConfigHandler.java | 42 ++++++++++++++++------ 1 file changed, 31 insertions(+), 11 deletions(-) (limited to 'src/main/java/me/Danker/handlers') diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java index 2a765ad..28f22fe 100644 --- a/src/main/java/me/Danker/handlers/ConfigHandler.java +++ b/src/main/java/me/Danker/handlers/ConfigHandler.java @@ -1,5 +1,8 @@ package me.Danker.handlers; +import com.google.gson.Gson; +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; import me.Danker.DankersSkyblockMod; import me.Danker.commands.MoveCommand; import me.Danker.commands.ScaleCommand; @@ -13,7 +16,9 @@ import net.minecraft.util.EnumChatFormatting; import net.minecraftforge.common.config.ConfigCategory; import net.minecraftforge.common.config.Configuration; -import java.io.File; +import java.io.*; +import java.util.ArrayList; +import java.util.Arrays; public class ConfigHandler { public static Configuration config; @@ -220,15 +225,6 @@ public class ConfigHandler { ToggleCommand.crystalAutoWaypoints = initBoolean("toggles", "CrystalAutoWaypoints", true); // enabled by default ToggleCommand.autoAcceptReparty = initBoolean("toggles", "AutoAcceptReparty", false); ToggleCommand.abilityCooldowns = initBoolean("toggles", "AbilityCooldowns", false); - // Chat Messages - ToggleCommand.sceptreMessages = initBoolean("toggles", "SceptreMessages", true); - ToggleCommand.midasStaffMessages = initBoolean("toggles", "MidasStaffMessages", true); - ToggleCommand.implosionMessages = initBoolean("toggles", "ImplosionMessages", true); - ToggleCommand.healMessages = initBoolean("toggles", "HealMessages", true); - ToggleCommand.cooldownMessages = initBoolean("toggles", "CooldownMessages", true); - ToggleCommand.manaMessages = initBoolean("toggles", "ManaMessages", true); - ToggleCommand.killComboMessages = initBoolean("toggles", "KillComboMessages", true); - // Dungeons ToggleCommand.dungeonTimerToggled = initBoolean("toggles", "DungeonTimer", false); ToggleCommand.lowHealthNotifyToggled = initBoolean("toggles", "LowHealthNotify", false); ToggleCommand.lividSolverToggled = initBoolean("toggles", "LividSolver", false); @@ -239,7 +235,16 @@ public class ConfigHandler { ToggleCommand.bonzoTimerToggled = initBoolean("toggles", "BonzoTimer", false); ToggleCommand.swapToPickBlockToggled = initBoolean("toggles", "PickBlock", false); ToggleCommand.flowerWeaponsToggled = initBoolean("toggles", "FlowerWeapons", false); - ToggleCommand.autoSkillTrackerToggled = initBoolean("toggles", "AutoSkillTracker", false); + ToggleCommand.autoSkillTrackerToggled = initBoolean("toggles", "AutoSkillTracker", false)