aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClicks <58398364+CuzImClicks@users.noreply.github.com>2022-04-29 11:24:43 +0200
committerGitHub <noreply@github.com>2022-04-29 11:24:43 +0200
commit48253eddf00cf5d94ecc2eb6b63e7c490b3145be (patch)
treeb74b3674eb12a168e3e93da1f3ff0119116c3411
parent5f6ce80319b21d53abbec15886f4e2fbd765f748 (diff)
parent36a30bd1a2097b6ab45c27bd248cbea4e292499f (diff)
downloadSkyblockMod-48253eddf00cf5d94ecc2eb6b63e7c490b3145be.tar.gz
SkyblockMod-48253eddf00cf5d94ecc2eb6b63e7c490b3145be.tar.bz2
SkyblockMod-48253eddf00cf5d94ecc2eb6b63e7c490b3145be.zip
Merge branch 'development' into development
-rw-r--r--README.md55
-rw-r--r--build.gradle2
-rw-r--r--src/main/java/me/Danker/DankersSkyblockMod.java18
-rw-r--r--src/main/java/me/Danker/commands/CrystalHollowWaypointCommand.java39
-rw-r--r--src/main/java/me/Danker/commands/CustomMusicCommand.java26
-rw-r--r--src/main/java/me/Danker/commands/DankerGuiCommand.java1
-rw-r--r--src/main/java/me/Danker/commands/ImportFishingCommand.java4
-rw-r--r--src/main/java/me/Danker/commands/LootCommand.java290
-rw-r--r--src/main/java/me/Danker/commands/MoveCommand.java12
-rw-r--r--src/main/java/me/Danker/commands/ResetLootCommand.java125
-rw-r--r--src/main/java/me/Danker/commands/ScaleCommand.java10
-rw-r--r--src/main/java/me/Danker/commands/ToggleCommand.java22
-rw-r--r--src/main/java/me/Danker/features/Alerts.java83
-rw-r--r--src/main/java/me/Danker/features/ChatAliases.java64
-rw-r--r--src/main/java/me/Danker/features/ColouredNames.java3
-rw-r--r--src/main/java/me/Danker/features/CrystalHollowWaypoints.java114
-rw-r--r--src/main/java/me/Danker/features/CustomMusic.java132
-rw-r--r--src/main/java/me/Danker/features/FirePillarDisplay.java51
-rw-r--r--src/main/java/me/Danker/features/GpartyNotifications.java13
-rw-r--r--src/main/java/me/Danker/features/loot/BlazeTracker.java42
-rw-r--r--src/main/java/me/Danker/features/loot/EndermanTracker.java228
-rw-r--r--src/main/java/me/Danker/features/loot/FishingTracker.java9
-rw-r--r--src/main/java/me/Danker/features/loot/LootDisplay.java296
-rw-r--r--src/main/java/me/Danker/features/loot/LootTracker.java35
-rw-r--r--src/main/java/me/Danker/features/loot/SpiderTracker.java122
-rw-r--r--src/main/java/me/Danker/features/loot/WolfTracker.java128
-rw-r--r--src/main/java/me/Danker/features/loot/ZombieTracker.java172
-rw-r--r--src/main/java/me/Danker/gui/DankerGui.java13
-rw-r--r--src/main/java/me/Danker/gui/EditLocationsGui.java35
-rw-r--r--src/main/java/me/Danker/gui/alerts/AlertActionGui.java7
-rw-r--r--src/main/java/me/Danker/gui/alerts/AlertAddGui.java15
-rw-r--r--src/main/java/me/Danker/gui/aliases/AliasesActionGui.java81
-rw-r--r--src/main/java/me/Danker/gui/aliases/AliasesAddGui.java115
-rw-r--r--src/main/java/me/Danker/gui/aliases/AliasesGui.java108
-rw-r--r--src/main/java/me/Danker/gui/buttons/LocationButton.java4
-rw-r--r--src/main/java/me/Danker/gui/crystalhollowwaypoints/CrystalHollowAddWaypointGui.java15
-rw-r--r--src/main/java/me/Danker/handlers/ConfigHandler.java148
-rw-r--r--src/main/java/me/Danker/utils/Utils.java19
38 files changed, 1699 insertions, 957 deletions
diff --git a/README.md b/README.md
index e46f75d..3fe9432 100644
--- a/README.md
+++ b/README.md
@@ -3,14 +3,21 @@ QOL changes that enhances your Hypixel Skyblock experience. Created to add featu
Discord Server: https://discord.gg/QsEkNQS
+<details>
+<summary>Incompatibilites</summary>
+
## Incompatibilities
- Old Animations <2.6.4 - Frequent crashes
- Old Animations 2.6.4
- Pet colors does not color slots
- Catacombs F7 terminal solvers do not color slots
- Enchanting solvers do not color slots
+</details>
-## Current features
+<details>
+<summary>Current Features</summary>
+
+## Current Features
- Guild party desktop notifications
- Coordinate and angle display
- Golden T10/T6/T4 enchant display
@@ -66,6 +73,12 @@ Discord Server: https://discord.gg/QsEkNQS
- Predicted dungeon score display
- Hide player armour
- Automatically join skyblock
+- Fire pillar display
+- Chat aliases
+</details>
+
+<details>
+<summary>Commands</summary>
## Commands
- /dhelp - Returns this message in-game.
@@ -76,8 +89,8 @@ Discord Server: https://discord.gg/QsEkNQS
- /loot <zombie/spider/wolf/enderman/blaze/fishing/catacombs/mythological/> [winter/festival/spooky/ch/lava/f(1-7)/mm/session] - Returns loot received from slayer quests or fishing stats. /loot fishing winter returns winter sea creatures instead.
- /display <zombie/spider/wolf/enderman/blaze/fishing/catacombs/mythological/ghosts/auto/off> [winter/festival/spooky/ch/lava/f(1-7)/mm/session] - Text display for trackers. /display fishing winter displays winter sea creatures instead. /display auto automatically displays the loot for the slayer quest you have active.
- /resetloot <zombie/spider/wolf/enderman/blaze/fishing/catacombs/mythological/confirm/cancel> - - Resets loot for trackers. /resetloot confirm confirms the reset.
-- /move <coords/display/dungeontimer/skill50/lividhp/caketimer/skilltracker/wateranswer/bonzotimer/golemtimer/teammatesinradius/gianthp/abilitycooldowns/dungeonscore> <x> <y> - Moves text display to specified X and Y coordinates.
-- /scale <coords/display/dungeontimer/skill50/lividhp/caketimer/skilltracker/wateranswer/bonzotimer/golemtimer/teammatesinradius/gianthp/abilitycooldowns/dungeonscore> <scale (0.1 - 10)> - Scales text display to a specified multipler between 0.1x and 10x.
+- /move <coords/display/dungeontimer/skill50/lividhp/caketimer/skilltracker/wateranswer/bonzotimer/golemtimer/teammatesinradius/gianthp/abilitycooldowns/dungeonscore/firepillar> <x> <y> - Moves text display to specified X and Y coordinates.
+- /scale <coords/display/dungeontimer/skill50/lividhp/caketimer/skilltracker/wateranswer/bonzotimer/golemtimer/teammatesinradius/gianthp/abilitycooldowns/dungeonscore/firepillar> <scale (0.1 - 10)> - Scales text display to a specified multipler between 0.1x and 10x.
- /slayer [player] - Uses API to get slayer xp of a person. If no name is provided, it checks yours.
- /skill [player] - Uses API to get skill levels of a person. If no name is provided, it checks yours.
- /lobbyskills - Uses API to find the average skills of the lobby, as well the three players with the highest skill average.
@@ -94,12 +107,16 @@ Discord Server: https://discord.gg/QsEkNQS
- /reparty - Disbands and reparties all members in the party
- /fairysouls - Check the fairysouls of a player
- /lobbybank - Uses API to find the average bank total of the lobby, as well the three players with the highest total money in the bank (and purse).
-- /dsmmusic <stop/reload/volume> [dungeonboss/bloodroom/dungeon/hub/island/dungeonhub/farmingislands/goldmine/deepcaverns/dwarvenmines/crystalhollows/spidersden/crimsonisle/end/park] [1-100] - Stops, reloads or changes the volume of custom music.
+- /dsmmusic <stop/reload/volume> [dungeonboss/bloodroom/dungeon/p2/p3/p4/p5/hub/island/dungeonhub/farmingislands/goldmine/deepcaverns/dwarvenmines/crystalhollows/spidersden/crimsonisle/end/park] [1-100] - Stops, reloads or changes the volume of custom music.
- /player [player] - Uses API to find skills, slayers, coins and weight of a player.
- /reloadconfig - Reloads Danker's Skyblock Mod config.
- /reloaddsmrepo - Reloads Danker's Skyblock Mod repository.
- /dsmfarmlength <min coords> <max coords> - Sets coords to be used for end of farm alert.
- /hotmof [player] - Uses API to find total powder and HotM tree of a person. If no name is provided, it checks yours.
+</details>
+
+<details>
+<summary>Keybinds</summary>
<details>
<summary>Warps</summary>
@@ -134,6 +151,10 @@ Shortcut commands that save you the time of typing the whole warp command.
- Open Maddox menu - M by default.
- Regular Ability - Numpad 4 by default.
- Start/Stop Skill Tracker - Numpad 5 by default.
+</details>
+
+<details>
+<summary>Custom Music</summary>
## Custom Music
1. Place a music file with the given name in the `.minecraft/config/dsmmusic` folder:
@@ -141,6 +162,10 @@ Shortcut commands that save you the time of typing the whole warp command.
- Blood room: `bloodroom.wav`
- Dungeon boss: `dungeonboss.wav`
- Dungeon hub: `dungeonhub.wav`
+ - F7 Phase 2 (Storm): `phasetwo.wav`
+ - F7 Phase 3 (Goldor): `phasethree.wav`
+ - F7 Phase 4 (Necron): `phasefour.wav`
+ - F7 Phase 5 (Wither King): `phasefive.wav`
- Hub: `hub.wav`
- Private Island: `island.wav`
- Farming Islands: `farmingislands.wav`
@@ -162,12 +187,34 @@ By adding numbers to the end of the file, you can have multiple music files for
- dungeon1.wav
- dungeon2.wav
- dungeon99.wav
+</details>
+
+<details>
+<summary>Alert Regex</summary>
+
+## Alert Regex
+To replace alert text with a captured group, add `$$x$$` to the alert text, with `x` being the number of the capture group. `$$0$$` will always be replaced with the entire trigger message.
+
+For example, with the following alert
+
+Regex: `From (.*) (.*): (.*)`
+Alert Text: `$$2$$ says $$3$$`
+Trigger Message: `From [ADMIN] Plancke: Nice autogg`
+
+the following alert text would appear
+
+`Plancke says Nice autogg`.
+</details>
+
+<details>
+<summary>Notes</summary>
### Notes
- Slayer tracker for token drops and 20% chance drops uses a 12x12x12 bounding box centered on the player to detect the drops. If you are out of the range of the item drop, it will not count on the tracker.
- API commands may take a while depending on your internet connection. The API may also go down.
- If you use too many API commands too fast, you can and will get rate-limited.
- Importing fishing uses your sea creature kills, which may not always be exactly correct (e.x. someone else kills your sea creature).
+</details>
### Credits to Open Source Software
Credit to all the following open source software used in this mod.
diff --git a/build.gradle b/build.gradle
index 3247272..fe6e801 100644
--- a/build.gradle
+++ b/build.gradle
@@ -24,7 +24,7 @@ plugins {
id "net.minecraftforge.gradle.forge" version "2.0.2"
}
*/
-version = "1.8.7-beta5"
+version = "1.8.7-beta6"
group= "me.Danker.DankersSkyblockMod" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "Danker's Skyblock Mod"
diff --git a/src/main/java/me/Danker/DankersSkyblockMod.java b/src/main/java/me/Danker/DankersSkyblockMod.java
index 16c73c8..4338242 100644
--- a/src/main/java/me/Danker/DankersSkyblockMod.java
+++ b/src/main/java/me/Danker/DankersSkyblockMod.java
@@ -65,13 +65,13 @@ import java.util.Map;
@Mod(modid = DankersSkyblockMod.MODID, version = DankersSkyblockMod.VERSION, clientSideOnly = true)
public class DankersSkyblockMod {
public static final String MODID = "Danker's Skyblock Mod";
- public static final String VERSION = "1.8.7-beta5";
+ public static final String VERSION = "1.8.7-beta6";
public static int titleTimer = -1;
public static boolean showTitle = false;
public static String titleText = "";
public static int tickAmount = 1;
public static int repoTickAmount = 1;
- public static KeyBinding[] keyBindings = new KeyBinding[3];
+ public static KeyBinding[] keyBindings = new KeyBinding[4];
public static boolean usingLabymod = false;
public static boolean usingOAM = false;
static boolean OAMWarning = false;
@@ -117,6 +117,7 @@ public class DankersSkyblockMod {
MinecraftForge.EVENT_BUS.register(new BonzoMaskTimer());
MinecraftForge.EVENT_BUS.register(new BoulderSolver());
MinecraftForge.EVENT_BUS.register(new CakeTimer());
+ MinecraftForge.EVENT_BUS.register(new ChatAliases());
MinecraftForge.EVENT_BUS.register(new ChronomatronSolver());
MinecraftForge.EVENT_BUS.register(new ClickInOrderSolver());
MinecraftForge.EVENT_BUS.register(new ColouredNames());
@@ -128,6 +129,7 @@ public class DankersSkyblockMod {
MinecraftForge.EVENT_BUS.register(new EndOfFarmAlert());
MinecraftForge.EVENT_BUS.register(new ExpertiseLore());
MinecraftForge.EVENT_BUS.register(new FasterMaddoxCalling());
+ MinecraftForge.EVENT_BUS.register(new FirePillarDisplay());
MinecraftForge.EVENT_BUS.register(new GemstonesLore());
MinecraftForge.EVENT_BUS.register(new GiantHPDisplay());
MinecraftForge.EVENT_BUS.register(new GoldenEnchants());
@@ -179,6 +181,7 @@ public class DankersSkyblockMod {
MinecraftForge.EVENT_BUS.register(new ZombieTracker());
Alerts.configFile = configDirectory + "/dsmalerts.json";
+ ChatAliases.configFile = configDirectory + "/dsmaliases.json";
ConfigHandler.reloadConfig();
GoldenEnchants.init();
@@ -189,6 +192,7 @@ public class DankersSkyblockMod {
keyBindings[0] = new KeyBinding("Open Maddox Menu", Keyboard.KEY_M, "Danker's Skyblock Mod");
keyBindings[1] = new KeyBinding("Regular Ability", Keyboard.KEY_NUMPAD4, "Danker's Skyblock Mod");
keyBindings[2] = new KeyBinding("Start/Stop Skill Tracker", Keyboard.KEY_NUMPAD5, "Danker's Skyblock Mod");
+ keyBindings[3] = new KeyBinding("Create Waypoint", Keyboard.KEY_NUMPAD6, "Danker's Skyblock Mod");
for (KeyBinding keyBinding : keyBindings) {
ClientRegistry.registerKeyBinding(keyBinding);
@@ -459,14 +463,8 @@ public class DankersSkyblockMod {
@SubscribeEvent
public void onKey(KeyInputEvent event) {
- if (!Utils.inSkyblock) return;
-
- EntityPlayerSP player = Minecraft.getMinecraft().thePlayer;
- if (keyBindings[1].isPressed()) {
- if (Utils.inDungeons) {
- player.dropOneItem(true);
- }
- }
+ if (!Utils.inDungeons) return;
+ if (keyBindings[1].isPressed()) Minecraft.getMinecraft().thePlayer.dropOneItem(true);
}
@SubscribeEvent
diff --git a/src/main/java/me/Danker/commands/CrystalHollowWaypointCommand.java b/src/main/java/me/Danker/commands/CrystalHollowWaypointCommand.java
index f5dea9b..4eaf2d6 100644
--- a/src/main/java/me/Danker/commands/CrystalHollowWaypointCommand.java
+++ b/src/main/java/me/Danker/commands/CrystalHollowWaypointCommand.java
@@ -1,14 +1,11 @@
package me.Danker.commands;
-import me.Danker.DankersSkyblockMod;
import me.Danker.features.CrystalHollowWaypoints;
-import net.minecraft.client.Minecraft;
import net.minecraft.command.CommandBase;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.util.BlockPos;
-import net.minecraft.util.ChatComponentText;
+
+import java.util.Arrays;
public class CrystalHollowWaypointCommand extends CommandBase {
@@ -30,34 +27,12 @@ public class CrystalHollowWaypointCommand extends CommandBase {
@Override
public void processCommand(ICommandSender arg0, String[] arg1) throws CommandException {
if (arg1.length == 0) return;
- addWaypoints(String.join(" ", arg1), false);
- }
-
- public static void addWaypoints(String list, boolean auto) {
- EntityPlayer player = Minecraft.getMinecraft().thePlayer;
- String[] waypoints = list.split("\\\\n");
-
- for (String waypoint : waypoints) {
- String[] parts = waypoint.split("@-");
- String[] coords = parts[1].split(",");
-
- String location = parts[0];
- BlockPos pos = new BlockPos(Integer.parseInt(coords[0]), Integer.parseInt(coords[1]), Integer.parseInt(coords[2]));
- CrystalHollowWaypoints.Waypoint newWaypoint = new CrystalHollowWaypoints.Waypoint(location, pos);
-
- if (auto) {
- boolean contains = false;
- for (CrystalHollowWaypoints.Waypoint existing : CrystalHollowWaypoints.waypoints) {
- if (existing.location.equals(location)) {
- contains = true;
- break;
- }
- }
- if (contains) continue;
- }
- CrystalHollowWaypoints.waypoints.add(newWaypoint);
- player.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "Added " + newWaypoint.location + " @ " + newWaypoint.getPos()));
+ if (arg1.length > 4 && arg1[0].equals("st")) {
+ String name = String.join(" ", Arrays.copyOfRange(arg1, 4, arg1.length));
+ CrystalHollowWaypoints.addWaypoint(name, arg1[1], arg1[2], arg1[3]);
+ } else {
+ CrystalHollowWaypoints.addDSMWaypoints(String.join(" ", arg1), false);
}
}
diff --git a/src/main/java/me/Danker/commands/CustomMusicCommand.java b/src/main/java/me/Danker/commands/CustomMusicCommand.java
index f0634fc..621a6f0 100644
--- a/src/main/java/me/Danker/commands/CustomMusicCommand.java
+++ b/src/main/java/me/Danker/commands/CustomMusicCommand.java
@@ -21,7 +21,7 @@ public class CustomMusicCommand extends CommandBase {
@Override
public String getCommandUsage(ICommandSender arg0) {
- return "/" + getCommandName() + " <stop/reload/volume> [dungeonboss/bloodroom/dungeon/hub/island/dungeonhub/farmingislands/" +
+ return "/" + getCommandName() + " <stop/reload/volume> [dungeonboss/bloodroom/dungeon/p2/p3/p4/p5/hub/island/dungeonhub/farmingislands/" +
"goldmine/deepcaverns/dwarvenmines/crystalhollows/spidersden/crimsonisle/end/park] [1-100]";
}
@@ -90,6 +90,30 @@ public class CustomMusicCommand extends CommandBase {
CustomMusic.dungeonVolume = volume;
ConfigHandler.writeIntConfig("music", "DungeonVolume", volume);
break;
+ case "p2":
+ if (!CustomMusic.phase2.setVolume(volume)) return;
+
+ CustomMusic.phase2Volume = volume;
+ ConfigHandler.writeIntConfig("music", "Phase2Volume", volume);
+ break;
+ case "p3":
+ if (!CustomMusic.phase3.setVolume(volume)) return;
+
+ CustomMusic.phase3Volume = volume;
+ ConfigHandler.writeIntConfig("music", "Phase3Volume", volume);
+ break;
+ case "p4":
+ if (!CustomMusic.phase4.setVolume(volume)) return;
+
+ CustomMusic.phase4Volume = volume;
+ ConfigHandler.writeIntConfig("music", "Phase4Volume", volume);
+ break;
+ case "p5":
+ if (!CustomMusic.phase5.setVolume(volume)) return;
+
+ CustomMusic.phase5Volume = volume;
+ ConfigHandler.writeIntConfig("music", "Phase5Volume", volume);
+ break;
case "hub":
if (!CustomMusic.hub.setVolume(volume)) return;
diff --git a/src/main/java/me/Danker/commands/DankerGuiCommand.java b/src/main/java/me/Danker/commands/DankerGuiCommand.java
index 14041d1..1c5ea53 100644
--- a/src/main/java/me/Danker/commands/DankerGuiCommand.java
+++ b/src/main/java/me/Danker/commands/DankerGuiCommand.java
@@ -63,6 +63,7 @@ public class DankerGuiCommand extends CommandBase {
debug.append("[gianthp][").append(MoveCommand.giantHPXY[0]).append(", ").append(MoveCommand.giantHPXY[1]).append("]\n");
debug.append("[abilitycooldowns][").append(MoveCommand.abilityCooldownsXY[0]).append(", ").append(MoveCommand.abilityCooldownsXY[1]).append("]\n");
debug.append("[dungeonscore][").append(MoveCommand.dungeonScoreXY[0]).append(", ").append(MoveCommand.dungeonScoreXY[1]).append("]\n");
+ debug.append("[firepillar][").append(MoveCommand.firePillarXY[0]).append(", ").append(MoveCommand.firePillarXY[1]).append("]\n");
debug.append("# Other Settings\n");
debug.append("[Current Display][").append(LootDisplay.display).append("]\n");
debug.append("[Auto Display][").append(LootDisplay.auto).append("]\n");
diff --git a/src/main/java/me/Danker/commands/ImportFishingCommand.java b/src/main/java/me/Danker/commands/ImportFishingCommand.java
index f51e01f..46d9906 100644
--- a/src/main/java/me/Danker/commands/ImportFishingCommand.java
+++ b/src/main/java/me/Danker/commands/ImportFishingCommand.java
@@ -112,13 +112,14 @@ public class ImportFishingCommand extends CommandBase {
FishingTracker.lavaBlazes = getSCFromApi(statsObject, "kills_lava_blaze");
FishingTracker.lavaPigmen = getSCFromApi(statsObject, "kills_lava_pigman");
FishingTracker.zombieMiners = getSCFromApi(statsObject, "kills_zombie_miner");
+ FishingTracker.plhlegblasts = getSCFromApi(statsObject, "kills_plhlegblast");
FishingTracker.magmaSlugs = getSCFromApi(statsObject, "kills_magma_slug");
FishingTracker.moogmas = getSCFromApi(statsObject, "kills_moogma");
FishingTracker.lavaLeeches = getSCFromApi(statsObject, "kills_lava_leech");
FishingTracker.pyroclasticWorms = getSCFromApi(statsObject, "kills_pyroclastic_worm");
FishingTracker.lavaFlames = getSCFromApi(statsObject, "kills_lava_flame");
FishingTracker.fireEels = getSCFromApi(statsObject, "kills_fire_eel");
- FishingTracker.tauruses = getSCFromApi(statsObject, "kills_taurus");
+ FishingTracker.tauruses = getSCFromApi(statsObject, "kills_pig_rider");
FishingTracker.thunders = getSCFromApi(statsObject, "kills_thunder");
FishingTracker.lordJawbuses = getSCFromApi(statsObject, "kills_lord_jawbus");
@@ -160,6 +161,7 @@ public class ImportFishingCommand extends CommandBase {
ConfigHandler.writeIntConfig("fishing", "lavaBlaze", FishingTracker.lavaBlazes);
ConfigHandler.writeIntConfig("fishing", "lavaPigman", FishingTracker.lavaPigmen);
ConfigHandler.writeIntConfig("fishing", "zombieMiner", FishingTracker.zombieMiners);
+ ConfigHandler.writeIntConfig("fishing", "plhlegblast", FishingTracker.plhlegblasts);
ConfigHandler.writeIntConfig("fishing", "magmaSlug", FishingTracker.magmaSlugs);
ConfigHandler.writeIntConfig("fishing", "moogma", FishingTracker.moogmas);
ConfigHandler.writeIntConfig("fishing", "lavaLeech", FishingTracker.lavaLeeches);
diff --git a/src/main/java/me/Danker/commands/LootCommand.java b/src/main/java/me/Danker/commands/LootCommand.java
index 3be46a4..af5479e 100644
--- a/src/main/java/me/Danker/commands/LootCommand.java
+++ b/src/main/java/me/Danker/commands/LootCommand.java
@@ -70,294 +70,298 @@ public class LootCommand extends CommandBase {
switch (arg1[0].toLowerCase()) {
case "wolf":
if (showSession) {
- if (WolfTracker.wolfTimeSession == -1) {
+ if (WolfTracker.timeSession == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(WolfTracker.wolfTimeSession, timeNow);
+ timeBetween = Utils.getTimeBetween(WolfTracker.timeSession, timeNow);
}
- if (WolfTracker.wolfBossesSession == -1) {
+ if (WolfTracker.bossesSession == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(WolfTracker.wolfBossesSession);
+ bossesBetween = nf.format(WolfTracker.bossesSession);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(WolfTracker.wolfWheelsSession);
+ drop20 = nf.format(WolfTracker.wheelsSession);
} else {
- drop20 = nf.format(WolfTracker.wolfWheelsDropsSession) + " times";
+ drop20 = nf.format(WolfTracker.wheelsDropsSession) + " times";
}
player.addChatMessage(new ChatComponentText(EnumChatFormatting.AQUA + "" + EnumChatFormatting.BOLD + "-------------------\n" +
EnumChatFormatting.DARK_AQUA + EnumChatFormatting.BOLD + " Sven Loot Summary (Current Session):\n" +
- EnumChatFormatting.GOLD + " Svens Killed: " + nf.format(WolfTracker.wolfSvensSession) + "\n" +
- EnumChatFormatting.GREEN + " Wolf Teeth: " + nf.format(WolfTracker.wolfTeethSession) + "\n" +
+ EnumChatFormatting.GOLD + " Svens Killed: " + nf.format(WolfTracker.svensSession) + "\n" +
+ EnumChatFormatting.GREEN + " Wolf Teeth: " + nf.format(WolfTracker.teethSession) + "\n" +
EnumChatFormatting.BLUE + " Hamster Wheels: " + drop20 + "\n" +
- EnumChatFormatting.AQUA + " Spirit Runes: " + WolfTracker.wolfSpiritsSession + "\n" +
- EnumChatFormatting.WHITE + " Critical VI Books: " + WolfTracker.wolfBooksSession + "\n" +
- EnumChatFormatting.DARK_RED + " Red Claw Eggs: " + WolfTracker.wolfEggsSession + "\n" +
- EnumChatFormatting.GOLD + " Couture Runes: " + WolfTracker.wolfCouturesSession + "\n" +
- EnumChatFormatting.AQUA + " Grizzly Baits: " + WolfTracker.wolfBaitsSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Overfluxes: " + WolfTracker.wolfFluxesSession + "\n" +
+ EnumChatFormatting.AQUA + " Spirit Runes: " + WolfTracker.spiritsSession + "\n" +
+ EnumChatFormatting.WHITE + " Critical VI Books: " + WolfTracker.booksSession + "\n" +
+ EnumChatFormatting.DARK_AQUA + " Furballs: " + WolfTracker.furballsSession + "\n" +
+ EnumChatFormatting.DARK_RED + " Red Claw Eggs: " + WolfTracker.eggsSession + "\n" +
+ EnumChatFormatting.GOLD + " Couture Runes: " + WolfTracker.couturesSession + "\n" +
+ EnumChatFormatting.AQUA + " Grizzly Baits: " + WolfTracker.baitsSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Overfluxes: " + WolfTracker.fluxesSession + "\n" +
EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.AQUA + EnumChatFormatting.BOLD + " -------------------"));
return;
}
- if (WolfTracker.wolfTime == -1) {
+ if (WolfTracker.time == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(WolfTracker.wolfTime, timeNow);
+ timeBetween = Utils.getTimeBetween(WolfTracker.time, timeNow);
}
- if (WolfTracker.wolfBosses == -1) {
+ if (WolfTracker.bosses == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(WolfTracker.wolfBosses);
+ bossesBetween = nf.format(WolfTracker.bosses);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(WolfTracker.wolfWheels);
+ drop20 = nf.format(WolfTracker.wheels);
} else {
- drop20 = nf.format(WolfTracker.wolfWheelsDrops) + " times";
+ drop20 = nf.format(WolfTracker.wheelsDrops) + " times";
}
player.addChatMessage(new ChatComponentText(EnumChatFormatting.AQUA + "" + EnumChatFormatting.BOLD + "-------------------\n" +
EnumChatFormatting.DARK_AQUA + EnumChatFormatting.BOLD + " Sven Loot Summary:\n" +
- EnumChatFormatting.GOLD + " Svens Killed: " + nf.format(WolfTracker.wolfSvens) + "\n" +
- EnumChatFormatting.GREEN + " Wolf Teeth: " + nf.format(WolfTracker.wolfTeeth) + "\n" +
+ EnumChatFormatting.GOLD + " Svens Killed: " + nf.format(WolfTracker.svens) + "\n" +
+ EnumChatFormatting.GREEN + " Wolf Teeth: " + nf.format(WolfTracker.teeth) + "\n" +
EnumChatFormatting.BLUE + " Hamster Wheels: " + drop20 + "\n" +
- EnumChatFormatting.AQUA + " Spirit Runes: " + WolfTracker.wolfSpirits + "\n" +
- EnumChatFormatting.WHITE + " Critical VI Books: " + WolfTracker.wolfBooks + "\n" +
- EnumChatFormatting.DARK_RED + " Red Claw Eggs: " + WolfTracker.wolfEggs + "\n" +
- EnumChatFormatting.GOLD + " Couture Runes: " + WolfTracker.wolfCoutures + "\n" +
- EnumChatFormatting.AQUA + " Grizzly Baits: " + WolfTracker.wolfBaits + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Overfluxes: " + WolfTracker.wolfFluxes + "\n" +
+ EnumChatFormatting.AQUA + " Spirit Runes: " + WolfTracker.spirits + "\n" +
+ EnumChatFormatting.WHITE + " Critical VI Books: " + WolfTracker.books + "\n" +
+ EnumChatFormatting.DARK_AQUA + " Furballs: " + WolfTracker.furballs + "\n" +
+ EnumChatFormatting.DARK_RED + " Red Claw Eggs: " + WolfTracker.eggs + "\n" +
+ EnumChatFormatting.GOLD + " Couture Runes: " + WolfTracker.coutures + "\n" +
+ EnumChatFormatting.AQUA + " Grizzly Baits: " + WolfTracker.baits + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Overfluxes: " + WolfTracker.fluxes + "\n" +
EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.AQUA + EnumChatFormatting.BOLD + " -------------------"));
break;
case "spider":
if (showSession) {
- if (SpiderTracker.spiderTimeSession == -1) {
+ if (SpiderTracker.timeSession == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(SpiderTracker.spiderTimeSession, timeNow);
+ timeBetween = Utils.getTimeBetween(SpiderTracker.timeSession, timeNow);
}
- if (SpiderTracker.spiderBossesSession == -1) {
+ if (SpiderTracker.bossesSession == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(SpiderTracker.spiderBossesSession);
+ bossesBetween = nf.format(SpiderTracker.bossesSession);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(SpiderTracker.spiderTAPSession);
+ drop20 = nf.format(SpiderTracker.TAPSession);
} else {
- drop20 = nf.format(SpiderTracker.spiderTAPDropsSession) + " times";
+ drop20 = nf.format(SpiderTracker.TAPDropsSession) + " times";
}
player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "" + EnumChatFormatting.BOLD + "-------------------\n" +
EnumChatFormatting.DARK_RED + EnumChatFormatting.BOLD + " Spider Loot Summary (Current Session):\n" +
- EnumChatFormatting.GOLD + " Tarantulas Killed: " + nf.format(SpiderTracker.spiderTarantulasSession) + "\n" +
- EnumChatFormatting.GREEN + " Tarantula Webs: " + nf.format(SpiderTracker.spiderWebsSession) + "\n" +
+ EnumChatFormatting.GOLD + " Tarantulas Killed: " + nf.format(SpiderTracker.tarantulasSession) + "\n" +
+ EnumChatFormatting.GREEN + " Tarantula Webs: " + nf.format(SpiderTracker.websSession) + "\n" +
EnumChatFormatting.DARK_GREEN + " Arrow Poison: " + drop20 + "\n" +
- EnumChatFormatting.DARK_GRAY + " Bite Runes: " + SpiderTracker.spiderBitesSession + "\n" +
- EnumChatFormatting.WHITE + " Bane VI Books: " + SpiderTracker.spiderBooksSession + "\n" +
- EnumChatFormatting.AQUA + " Spider Catalysts: " + SpiderTracker.spiderCatalystsSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Tarantula Talismans: " + SpiderTracker.spiderTalismansSession + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + " Fly Swatters: " + SpiderTracker.spiderSwattersSession + "\n" +
- EnumChatFormatting.GOLD + " Digested Mosquitos: " + SpiderTracker.spiderMosquitosSession + "\n" +
+ EnumChatFormatting.DARK_GRAY + " Bite Runes: " + SpiderTracker.bitesSession + "\n" +
+ EnumChatFormatting.WHITE + " Bane VI Books: " + SpiderTracker.booksSession + "\n" +
+ EnumChatFormatting.AQUA + " Spider Catalysts: " + SpiderTracker.catalystsSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Tarantula Talismans: " + SpiderTracker.talismansSession + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " Fly Swatters: " + SpiderTracker.swattersSession + "\n" +
+ EnumChatFormatting.GOLD + " Digested Mosquitos: " + SpiderTracker.mosquitosSession + "\n" +
EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.RED + EnumChatFormatting.BOLD + " -------------------"));
return;
}
- if (SpiderTracker.spiderTime == -1) {
+ if (SpiderTracker.time == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(SpiderTracker.spiderTime, timeNow);
+ timeBetween = Utils.getTimeBetween(SpiderTracker.time, timeNow);
}
- if (SpiderTracker.spiderBosses == -1) {
+ if (SpiderTracker.bosses == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(SpiderTracker.spiderBosses);
+ bossesBetween = nf.format(SpiderTracker.bosses);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(SpiderTracker.spiderTAP);
+ drop20 = nf.format(SpiderTracker.TAP);
} else {
- drop20 = nf.format(SpiderTracker.spiderTAPDrops) + " times";
+ drop20 = nf.format(SpiderTracker.TAPDrops) + " times";
}
player.addChatMessage(new ChatComponentText(EnumChatFormatting.RED + "" + EnumChatFormatting.BOLD + "-------------------\n" +
EnumChatFormatting.DARK_RED + EnumChatFormatting.BOLD + " Spider Loot Summary:\n" +
- EnumChatFormatting.GOLD + " Tarantulas Killed: " + nf.format(SpiderTracker.spiderTarantulas) + "\n" +
- EnumChatFormatting.GREEN + " Tarantula Webs: " + nf.format(SpiderTracker.spiderWebs) + "\n" +
+ EnumChatFormatting.GOLD + " Tarantulas Killed: " + nf.format(SpiderTracker.tarantulas) + "\n" +
+ EnumChatFormatting.GREEN + " Tarantula Webs: " + nf.format(SpiderTracker.webs) + "\n" +
EnumChatFormatting.DARK_GREEN + " Arrow Poison: " + drop20 + "\n" +
- EnumChatFormatting.DARK_GRAY + " Bite Runes: " + SpiderTracker.spiderBites + "\n" +
- EnumChatFormatting.WHITE + " Bane VI Books: " + SpiderTracker.spiderBooks + "\n" +
- EnumChatFormatting.AQUA + " Spider Catalysts: " + SpiderTracker.spiderCatalysts + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Tarantula Talismans: " + SpiderTracker.spiderTalismans + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + " Fly Swatters: " + SpiderTracker.spiderSwatters + "\n" +
- EnumChatFormatting.GOLD + " Digested Mosquitos: " + SpiderTracker.spiderMosquitos + "\n" +
+ EnumChatFormatting.DARK_GRAY + " Bite Runes: " + SpiderTracker.bites + "\n" +
+ EnumChatFormatting.WHITE + " Bane VI Books: " + SpiderTracker.books + "\n" +
+ EnumChatFormatting.AQUA + " Spider Catalysts: " + SpiderTracker.catalysts + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Tarantula Talismans: " + SpiderTracker.talismans + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " Fly Swatters: " + SpiderTracker.swatters + "\n" +
+ EnumChatFormatting.GOLD + " Digested Mosquitos: " + SpiderTracker.mosquitos + "\n" +
EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.RED + EnumChatFormatting.BOLD + " -------------------"));
break;
case "zombie":
if (showSession) {
- if (ZombieTracker.zombieTimeSession == -1) {
+ if (ZombieTracker.timeSession == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(ZombieTracker.zombieTimeSession, timeNow);
+ timeBetween = Utils.getTimeBetween(ZombieTracker.timeSession, timeNow);
}
- if (ZombieTracker.zombieBossesSession == -1) {
+ if (ZombieTracker.bossesSession == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(ZombieTracker.zombieBossesSession);
+ bossesBetween = nf.format(ZombieTracker.bossesSession);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(ZombieTracker.zombieFoulFleshSession);
+ drop20 = nf.format(ZombieTracker.foulFleshSession);
} else {
- drop20 = nf.format(ZombieTracker.zombieFoulFleshDropsSession) + " times";
+ drop20 = nf.format(ZombieTracker.foulFleshDropsSession) + " times";
}
player.addChatMessage(new ChatComponentText(EnumChatFormatting.GREEN + "" + EnumChatFormatting.BOLD + "-------------------\n" +
EnumChatFormatting.DARK_GREEN + EnumChatFormatting.BOLD + " Zombie Loot Summary (Current Session):\n" +
- EnumChatFormatting.GOLD + " Revs Killed: " + nf.format(ZombieTracker.zombieRevsSession) + "\n" +
- EnumChatFormatting.GREEN + " Revenant Flesh: " + nf.format(ZombieTracker.zombieRevFleshSession) + "\n" +
- EnumChatFormatting.GREEN + " Revenant Viscera: " + nf.format(ZombieTracker.zombieRevVisceraSession) + "\n" +
+ EnumChatFormatting.GOLD + " Revs Killed: " + nf.format(ZombieTracker.revsSession) + "\n" +
+ EnumChatFormatting.GREEN + " Revenant Flesh: " + nf.format(ZombieTracker.revFleshSession) + "\n" +
+ EnumChatFormatting.GREEN + " Revenant Viscera: " + nf.format(ZombieTracker.revVisceraSession) + "\n" +
EnumChatFormatting.BLUE + " Foul Flesh: " + drop20 + "\n" +
- EnumChatFormatting.DARK_GREEN + " Pestilence Runes: " +ZombieTracker.zombiePestilencesSession + "\n" +
- EnumChatFormatting.WHITE + " Smite VI Books: " + ZombieTracker.zombieBooksSession + "\n" +
- EnumChatFormatting.WHITE + " Smite VII Books: " + ZombieTracker.zombieBooksT7Session + "\n" +
- EnumChatFormatting.AQUA + " Undead Catalysts: " + ZombieTracker.zombieUndeadCatasSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Beheaded Horrors: " + ZombieTracker.zombieBeheadedsSession + "\n" +
- EnumChatFormatting.RED + " Revenant Catalysts: " + ZombieTracker.zombieRevCatasSession + "\n" +
- EnumChatFormatting.DARK_GREEN + " Snake Runes: " + ZombieTracker.zombieSnakesSession + "\n" +
- EnumChatFormatting.GOLD + " Scythe Blades: " + ZombieTracker.zombieScythesSession + "\n" +
- EnumChatFormatting.RED + " Shard of the Shreddeds: " + ZombieTracker.zombieShardsSession + "\n" +
- EnumChatFormatting.RED + " Warden Hearts: " + ZombieTracker.zombieWardenHeartsSession + "\n" +
+ EnumChatFormatting.DARK_GREEN + " Pestilence Runes: " +ZombieTracker.pestilencesSession + "\n" +
+ EnumChatFormatting.WHITE + " Smite VI Books: " + ZombieTracker.booksSession + "\n" +
+ EnumChatFormatting.WHITE + " Smite VII Books: " + ZombieTracker.booksT7Session + "\n" +
+ EnumChatFormatting.AQUA + " Undead Catalysts: " + ZombieTracker.undeadCatasSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Beheaded Horrors: " + ZombieTracker.beheadedsSession + "\n" +
+ EnumChatFormatting.RED + " Revenant Catalysts: " + ZombieTracker.revCatasSession + "\n" +
+ EnumChatFormatting.DARK_GREEN + " Snake Runes: " + ZombieTracker.snakesSession + "\n" +
+ EnumChatFormatting.GOLD + " Scythe Blades: " + ZombieTracker.scythesSession + "\n" +
+ EnumChatFormatting.RED + " Shard of the Shreddeds: " + ZombieTracker.shardsSession + "\n" +
+ EnumChatFormatting.RED + " Warden Hearts: " + ZombieTracker.wardenHeartsSession + "\n" +
EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.GREEN + EnumChatFormatting.BOLD + " -------------------"));
return;
}
- if (ZombieTracker.zombieTime == -1) {
+ if (ZombieTracker.time == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(ZombieTracker.zombieTime, timeNow);
+ timeBetween = Utils.getTimeBetween(ZombieTracker.time, timeNow);
}
- if (ZombieTracker.zombieBosses == -1) {
+ if (ZombieTracker.bosses == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(ZombieTracker.zombieBosses);
+ bossesBetween = nf.format(ZombieTracker.bosses);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(ZombieTracker.zombieFoulFlesh);
+ drop20 = nf.format(ZombieTracker.foulFlesh);
} else {
- drop20 = nf.format(ZombieTracker.zombieFoulFleshDrops) + " times";
+ drop20 = nf.format(ZombieTracker.foulFleshDrops) + " times";
}
player.addChatMessage(new ChatComponentText(EnumChatFormatting.GREEN + "" + EnumChatFormatting.BOLD + "-------------------\n" +
EnumChatFormatting.DARK_GREEN + EnumChatFormatting.BOLD + " Zombie Loot Summary:\n" +
- EnumChatFormatting.GOLD + " Revs Killed: " + nf.format(ZombieTracker.zombieRevs) + "\n" +
- EnumChatFormatting.GREEN + " Revenant Flesh: " + nf.format(ZombieTracker.zombieRevFlesh) + "\n" +
- EnumChatFormatting.GREEN + " Revenant Viscera: " + nf.format(ZombieTracker.zombieRevViscera) + "\n" +
+ EnumChatFormatting.GOLD + " Revs Killed: " + nf.format(ZombieTracker.revs) + "\n" +
+ EnumChatFormatting.GREEN + " Revenant Flesh: " + nf.format(ZombieTracker.revFlesh) + "\n" +
+ EnumChatFormatting.GREEN + " Revenant Viscera: " + nf.format(ZombieTracker.revViscera) + "\n" +
EnumChatFormatting.BLUE + " Foul Flesh: " + drop20 + "\n" +
- EnumChatFormatting.DARK_GREEN + " Pestilence Runes: " + ZombieTracker.zombiePestilences + "\n" +
- EnumChatFormatting.WHITE + " Smite VI Books: " + ZombieTracker.zombieBooks + "\n" +
- EnumChatFormatting.WHITE + " Smite VII Books: " + ZombieTracker.zombieBooksT7 + "\n" +
- EnumChatFormatting.AQUA + " Undead Catalysts: " + ZombieTracker.zombieUndeadCatas + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Beheaded Horrors: " + ZombieTracker.zombieBeheadeds + "\n" +
- EnumChatFormatting.RED + " Revenant Catalysts: " + ZombieTracker.zombieRevCatas + "\n" +
- EnumChatFormatting.DARK_GREEN + " Snake Runes: " + ZombieTracker.zombieSnakes + "\n" +
- EnumChatFormatting.GOLD + " Scythe Blades: " + ZombieTracker.zombieScythes + "\n" +
- EnumChatFormatting.RED + " Shard of the Shreddeds: " + ZombieTracker.zombieShards + "\n" +
- EnumChatFormatting.RED + " Warden Hearts: " + ZombieTracker.zombieWardenHearts + "\n" +
+ EnumChatFormatting.DARK_GREEN + " Pestilence Runes: " + ZombieTracker.pestilences + "\n" +
+ EnumChatFormatting.WHITE + " Smite VI Books: " + ZombieTracker.books + "\n" +
+ EnumChatFormatting.WHITE + " Smite VII Books: " + ZombieTracker.booksT7 + "\n" +
+ EnumChatFormatting.AQUA + " Undead Catalysts: " + ZombieTracker.undeadCatas + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Beheaded Horrors: " + ZombieTracker.beheadeds + "\n" +
+ EnumChatFormatting.RED + " Revenant Catalysts: " + ZombieTracker.revCatas + "\n" +
+ EnumChatFormatting.DARK_GREEN + " Snake Runes: " + ZombieTracker.snakes + "\n" +
+ EnumChatFormatting.GOLD + " Scythe Blades: " + ZombieTracker.scythes + "\n" +
+ EnumChatFormatting.RED + " Shard of the Shreddeds: " + ZombieTracker.shards + "\n" +
+ EnumChatFormatting.RED + " Warden Hearts: " + ZombieTracker.wardenHearts + "\n" +
EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.GREEN + EnumChatFormatting.BOLD + " -------------------"));
break;
case "enderman":
if (showSession) {
- if (EndermanTracker.endermanTimeSession == -1) {
+ if (EndermanTracker.timeSession == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(EndermanTracker.endermanTimeSession, timeNow);
+ timeBetween = Utils.getTimeBetween(EndermanTracker.timeSession, timeNow);
}
- if (EndermanTracker.endermanBossesSession == -1) {
+ if (EndermanTracker.bossesSession == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(EndermanTracker.endermanBossesSession);
+ bossesBetween = nf.format(EndermanTracker.bossesSession);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(EndermanTracker.endermanTAPSession);
+ drop20 = nf.format(EndermanTracker.TAPSession);
} else {
- drop20 = nf.format(EndermanTracker.endermanTAPDropsSession) + " times";
+ drop20 = nf.format(EndermanTracker.TAPDropsSession) + " 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(EndermanTracker.endermanVoidgloomsSession) + "\n" +
- EnumChatFormatting.DARK_GRAY + " Null Spheres: " + nf.format(EndermanTracker.endermanNullSpheresSession) + "\n" +
+ EnumChatFormatting.GOLD + " Voidglooms Killed: " + nf.format(EndermanTracker.voidgloomsSession) + "\n" +
+ EnumChatFormatting.DARK_GRAY + " Null Spheres: " + nf.format(EndermanTracker.nullSpheresSession) + "\n" +
EnumChatFormatting.DARK_PURPLE + " Arrow Poison: " + drop20 + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + " Endersnake Runes: " + EndermanTracker.endermanEndersnakesSession + "\n" +
- EnumChatFormatting.DARK_GREEN + " Summoning Eyes: " + EndermanTracker.endermanSummoningEyesSession + "\n" +
- EnumChatFormatting.AQUA + " Mana Steal Books: " + EndermanTracker.endermanManaBooksSession + "\n" +
- EnumChatFormatting.BLUE + " Transmission Tuners: " + EndermanTracker.endermanTunersSession + "\n" +
- EnumChatFormatting.YELLOW + " Null Atoms: " + EndermanTracker.endermanAtomsSession + "\n" +
- EnumChatFormatting.AQUA + " Espresso Machines: " + EndermanTracker.endermanEspressoMachinesSession + "\n" +
- EnumChatFormatting.WHITE + " Smarty Pants Books: " + EndermanTracker.endermanSmartyBooksSession + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + " End Runes: " + EndermanTracker.endermanEndRunesSession + "\n" +
- EnumChatFormatting.RED + " Blood Chalices: " + EndermanTracker.endermanChalicesSession + "\n" +
- EnumChatFormatting.RED + " Sinful Dice: " + EndermanTracker.endermanDiceSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Artifact Upgrader: " + EndermanTracker.endermanArtifactsSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Enderman Skins: " + EndermanTracker.endermanSkinsSession + "\n" +
- EnumChatFormatting.GRAY + " Enchant Runes: " + EndermanTracker.endermanEnchantRunesSession + "\n" +
- EnumChatFormatting.GOLD + " Etherwarp Mergers: " + EndermanTracker.endermanMergersSession + "\n" +
- EnumChatFormatting.GOLD + " Judgement Cores: " + EndermanTracker.endermanCoresSession + "\n" +
- EnumChatFormatting.RED + " Ender Slayer VII Books: " + EndermanTracker.endermanEnderBooksSession + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " Endersnake Runes: " + EndermanTracker.endersnakesSession + "\n" +
+ EnumChatFormatting.DARK_GREEN + " Summoning Eyes: " + EndermanTracker.summoningEyesSession + "\n" +
+ EnumChatFormatting.AQUA + " Mana Steal Books: " + EndermanTracker.manaBooksSession + "\n" +
+ EnumChatFormatting.BLUE + " Transmission Tuners: " + EndermanTracker.tunersSession + "\n" +
+ EnumChatFormatting.YELLOW + " Null Atoms: " + EndermanTracker.atomsSession + "\n" +
+ EnumChatFormatting.YELLOW + " Hazmat Endermen: " + EndermanTracker.hazmatsSession + "\n" +
+ EnumChatFormatting.AQUA + " Espresso Machines: " + EndermanTracker.espressoMachinesSession + "\n" +
+ EnumChatFormatting.WHITE + " Smarty Pants Books: " + EndermanTracker.smartyBooksSession + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " End Runes: " + EndermanTracker.endRunesSession + "\n" +
+ EnumChatFormatting.RED + " Blood Chalices: " + EndermanTracker.chalicesSession + "\n" +
+ EnumChatFormatting.RED + " Sinful Dice: " + EndermanTracker.diceSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Artifact Upgrader: " + EndermanTracker.artifactsSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Enderman Skins: " + EndermanTracker.skinsSession + "\n" +
+ EnumChatFormatting.GRAY + " Enchant Runes: " + EndermanTracker.enchantRunesSession + "\n" +
+ EnumChatFormatting.GOLD + " Etherwarp Mergers: " + EndermanTracker.mergersSession + "\n" +
+ EnumChatFormatting.GOLD + " Judgement Cores: " + EndermanTracker.coresSession + "\n" +
+ EnumChatFormatting.RED + " Ender Slayer VII Books: " + EndermanTracker.enderBooksSession + "\n" +
EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.DARK_PURPLE + EnumChatFormatting.BOLD + " -------------------"));
return;
}
- if (EndermanTracker.endermanTime == -1) {
+ if (EndermanTracker.time == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(EndermanTracker.endermanTime, timeNow);
+ timeBetween = Utils.getTimeBetween(EndermanTracker.time, timeNow);
}
- if (EndermanTracker.endermanBosses == -1) {
+ if (EndermanTracker.bosses == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(EndermanTracker.endermanBosses);
+ bossesBetween = nf.format(EndermanTracker.bosses);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(EndermanTracker.endermanTAP);
+ drop20 = nf.format(EndermanTracker.TAP);
} else {
- drop20 = nf.format(EndermanTracker.endermanTAPDrops) + " times";
+ drop20 = nf.format(EndermanTracker.TAPDrops) + " 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(EndermanTracker.endermanVoidglooms) + "\n" +
- EnumChatFormatting.DARK_GRAY + " Null Spheres: " + nf.format(EndermanTracker.endermanNullSpheres) + "\n" +
+ EnumChatFormatting.GOLD + " Voidglooms Killed: " + nf.format(EndermanTracker.voidglooms) + "\n" +
+ EnumChatFormatting.DARK_GRAY + " Null Spheres: " + nf.format(EndermanTracker.nullSpheres) + "\n" +
EnumChatFormatting.DARK_PURPLE + " Arrow Poison: " + drop20 + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + " Endersnake Runes: " + EndermanTracker.endermanEndersnakes + "\n" +
- EnumChatFormatting.DARK_GREEN + " Summoning Eyes: " + EndermanTracker.endermanSummoningEyes + "\n" +
- EnumChatFormatting.AQUA + " Mana Steal Books: " + EndermanTracker.endermanManaBooks + "\n" +
- EnumChatFormatting.BLUE + " Transmission Tuners: " + EndermanTracker.endermanTuners + "\n" +
- EnumChatFormatting.YELLOW + " Null Atoms: " + EndermanTracker.endermanAtoms + "\n" +
- EnumChatFormatting.AQUA + " Espresso Machines: " + EndermanTracker.endermanEspressoMachines + "\n" +
- EnumChatFormatting.WHITE + " Smarty Pants Books: " + EndermanTracker.endermanSmartyBooks + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + " End Runes: " + EndermanTracker.endermanEndRunes + "\n" +
- EnumChatFormatting.RED + " Blood Chalices: " + EndermanTracker.endermanChalices + "\n" +
- EnumChatFormatting.RED + " Sinful Dice: " + EndermanTracker.endermanDice + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Artifact Upgrader: " + EndermanTracker.endermanArtifacts + "\n" +
- EnumChatFormatting.DARK_PURPLE + " Enderman Skins: " + EndermanTracker.endermanSkins + "\n" +
- EnumChatFormatting.GRAY + " Enchant Runes: " + EndermanTracker.endermanEnchantRunes + "\n" +
- EnumChatFormatting.GOLD + " Etherwarp Mergers: " + EndermanTracker.endermanMergers + "\n" +
- EnumChatFormatting.GOLD + " Judgement Cores: " + EndermanTracker.endermanCores + "\n" +
- EnumChatFormatting.RED + " Ender Slayer VII Books: " + EndermanTracker.endermanEnderBooks + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " Endersnake Runes: " + EndermanTracker.endersnakes + "\n" +
+ EnumChatFormatting.DARK_GREEN + " Summoning Eyes: " + EndermanTracker.summoningEyes + "\n" +
+ EnumChatFormatting.AQUA + " Mana Steal Books: " + EndermanTracker.manaBooks + "\n" +
+ EnumChatFormatting.BLUE + " Transmission Tuners: " + EndermanTracker.tuners + "\n" +
+ EnumChatFormatting.YELLOW + " Null Atoms: " + EndermanTracker.atoms + "\n" +
+ EnumChatFormatting.YELLOW + " Hazmat Endermen: " + EndermanTracker.hazmats + "\n" +
+ EnumChatFormatting.AQUA + " Espresso Machines: " + EndermanTracker.espressoMachines + "\n" +
+ EnumChatFormatting.WHITE + " Smarty Pants Books: " + EndermanTracker.smartyBooks + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + " End Runes: " + EndermanTracker.endRunes + "\n" +
+ EnumChatFormatting.RED + " Blood Chalices: " + EndermanTracker.chalices + "\n" +
+ EnumChatFormatting.RED + " Sinful Dice: " + EndermanTracker.dice + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Artifact Upgrader: " + EndermanTracker.artifacts + "\n" +
+ EnumChatFormatting.DARK_PURPLE + " Enderman Skins: " + EndermanTracker.skins + "\n" +
+ EnumChatFormatting.GRAY + " Enchant Runes: " + EndermanTracker.enchantRunes + "\n" +
+ EnumChatFormatting.GOLD + " Etherwarp Mergers: " + EndermanTracker.mergers + "\n" +
+ EnumChatFormatting.GOLD + " Judgement Cores: " + EndermanTracker.cores + "\n" +
+ EnumChatFormatting.RED + " Ender Slayer VII Books: " + EndermanTracker.enderBooks + "\n" +
EnumChatFormatting.AQUA + " Time Since RNG: " + timeBetween + "\n" +
EnumChatFormatting.AQUA + " Bosses Since RNG: " + bossesBetween + "\n" +
EnumChatFormatting.DARK_PURPLE + EnumChatFormatting.BOLD + " -------------------"));
@@ -574,6 +578,7 @@ public class LootCommand extends CommandBase {
player.addChatMessage(new ChatComponentText(EnumChatFormatting.AQUA + "" + EnumChatFormatting.BOLD + "-------------------\n" +
EnumChatFormatting.RED + EnumChatFormatting.BOLD + " Lava Fishing Summary (Current Session):\n" +
+ EnumChatFormatting.BLUE + " Plhlegblasts: " + nf.format(FishingTracker.plhlegblastsSession) + "\n" +
EnumChatFormatting.DARK_RED + " Magma Slugs: " + nf.format(FishingTracker.magmaSlugsSession) + "\n" +
EnumChatFormatting.RED + " Moogmas: " + nf.format(FishingTracker.moogmasSession) + "\n" +
EnumChatFormatting.RED + " Lava Leeches: " + nf.format(FishingTracker.lavaLeechesSession) + "\n" +
@@ -602,6 +607,7 @@ public class LootCommand extends CommandBase {
player.addChatMessage(new ChatComponentText(EnumChatFormatting.AQUA + "" + EnumChatFormatting.BOLD + "-------------------\n" +
EnumChatFormatting.RED + EnumChatFormatting.BOLD + " Lava Fishing Summary:\n" +
+ EnumChatFormatting.BLUE + " Plhlegblasts: " + nf.format(FishingTracker.plhlegblasts) + "\n" +
EnumChatFormatting.DARK_RED + " Magma Slugs: " + nf.format(FishingTracker.magmaSlugs) + "\n" +
EnumChatFormatting.RED + " Moogmas: " + nf.format(FishingTracker.moogmas) + "\n" +
EnumChatFormatting.RED + " Lava Leeches: " + nf.format(FishingTracker.lavaLeeches) + "\n" +
diff --git a/src/main/java/me/Danker/commands/MoveCommand.java b/src/main/java/me/Danker/commands/MoveCommand.java
index 5a6c6a2..106e603 100644
--- a/src/main/java/me/Danker/commands/MoveCommand.java
+++ b/src/main/java/me/Danker/commands/MoveCommand.java
@@ -27,6 +27,7 @@ public class MoveCommand extends CommandBase {
public static int[] giantHPXY = {0, 0};
public static int[] abilityCooldownsXY = {0, 0};
public static int[] dungeonScoreXY = {0, 0};
+ public static int[] firePillarXY = {0, 0};
@Override
public String getCommandName() {
@@ -37,7 +38,7 @@ public class MoveCommand extends CommandBase {
public String getCommandUsage(ICommandSender arg0) {
return "/" + getCommandName() + " <coords/display/dungeontimer/skill50/lividhp/caketimer/skilltracker/" +
"wateranswer/bonzotimer/golemtimer/teammatesinradius/gianthp/" +
- "abilitycooldowns/dungeonscore> <x> <y>";
+ "abilitycooldowns/dungeonscore/firepillar> <x> <y>";
}
public static String usage(ICommandSender arg0) {
@@ -54,7 +55,7 @@ public class MoveCommand extends CommandBase {
if (args.length == 1) {
return getListOfStringsMatchingLastWord(args, "coords", "display", "dungeontimer", "skill50", "lividhp", "caketimer",
"skilltracker", "wateranswer", "bonzotimer", "golemtimer", "teammatesinradius",
- "gianthp", "abilitycooldowns", "dungeonscore");
+ "gianthp", "abilitycooldowns", "dungeonscore", "firepillar");
}
return null;
}
@@ -167,6 +168,13 @@ public class MoveCommand extends CommandBase {
ConfigHandler.writeIntConfig("locations", "dungeonScoreY", dungeonScoreXY[1]);
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "Dungeon score has been moved to " + DankersSkyblockMod.SECONDARY_COLOUR + arg1[1] + ", " + arg1[2]));
break;
+ case "firepillar":
+ firePillarXY[0] = Integer.parseInt(arg1[1]);
+ firePillarXY[1] = Integer.parseInt(arg1[2]);
+ ConfigHandler.writeIntConfig("locations", "firePillarX", firePillarXY[0]);
+ ConfigHandler.writeIntConfig("locations", "firePillarY", firePillarXY[1]);
+ player.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "Fire pillar has been moved to " + DankersSkyblockMod.SECONDARY_COLOUR + arg1[1] + ", " + arg1[2]));
+ break;
default:
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Usage: " + getCommandUsage(arg0)));
}
diff --git a/src/main/java/me/Danker/commands/ResetLootCommand.java b/src/main/java/me/Danker/commands/ResetLootCommand.java
index c17c2ae..9256394 100644
--- a/src/main/java/me/Danker/commands/ResetLootCommand.java
+++ b/src/main/java/me/Danker/commands/ResetLootCommand.java
@@ -126,82 +126,84 @@ public class ResetLootCommand extends CommandBase {
}
static void resetZombie() {
- ZombieTracker.zombieRevsSession = 0;
- ZombieTracker.zombieRevFleshSession = 0;
- ZombieTracker.zombieRevVisceraSession = 0;
- ZombieTracker.zombieFoulFleshSession = 0;
- ZombieTracker.zombieFoulFleshDropsSession = 0;
- ZombieTracker.zombiePestilencesSession = 0;
- ZombieTracker.zombieUndeadCatasSession = 0;
- ZombieTracker.zombieBooksSession = 0;
- ZombieTracker.zombieBooksT7Session = 0;
- ZombieTracker.zombieBeheadedsSession = 0;
- ZombieTracker.zombieRevCatasSession = 0;
- ZombieTracker.zombieSnakesSession = 0;
- ZombieTracker.zombieScythesSession = 0;
- ZombieTracker.zombieTimeSession = -1;
- ZombieTracker.zombieBossesSession = -1;
+ ZombieTracker.revsSession = 0;
+ ZombieTracker.revFleshSession = 0;
+ ZombieTracker.revVisceraSession = 0;
+ ZombieTracker.foulFleshSession = 0;
+ ZombieTracker.foulFleshDropsSession = 0;
+ ZombieTracker.pestilencesSession = 0;
+ ZombieTracker.undeadCatasSession = 0;
+ ZombieTracker.booksSession = 0;
+ ZombieTracker.booksT7Session = 0;
+ ZombieTracker.beheadedsSession = 0;
+ ZombieTracker.revCatasSession = 0;
+ ZombieTracker.snakesSession = 0;
+ ZombieTracker.scythesSession = 0;
+ ZombieTracker.timeSession = -1;
+ ZombieTracker.bossesSession = -1;
ConfigHandler.deleteCategory("zombie");
ConfigHandler.reloadConfig();
}
static void resetSpider() {
- SpiderTracker.spiderTarantulasSession = 0;
- SpiderTracker.spiderWebsSession = 0;
- SpiderTracker.spiderTAPSession = 0;
- SpiderTracker.spiderTAPDropsSession = 0;
- SpiderTracker.spiderBitesSession = 0;
- SpiderTracker.spiderCatalystsSession = 0;
- SpiderTracker.spiderBooksSession = 0;
- SpiderTracker.spiderSwattersSession = 0;
- SpiderTracker.spiderTalismansSession = 0;
- SpiderTracker.spiderMosquitosSession = 0;
- SpiderTracker.spiderTimeSession = -1;
- SpiderTracker.spiderBossesSession = -1;
+ SpiderTracker.tarantulasSession = 0;
+ SpiderTracker.websSession = 0;
+ SpiderTracker.TAPSession = 0;
+ SpiderTracker.TAPDropsSession = 0;
+ SpiderTracker.bitesSession = 0;
+ SpiderTracker.catalystsSession = 0;
+ SpiderTracker.booksSession = 0;
+ SpiderTracker.swattersSession = 0;
+ SpiderTracker.talismansSession = 0;
+ SpiderTracker.mosquitosSession = 0;
+ SpiderTracker.timeSession = -1;
+ SpiderTracker.bossesSession = -1;
ConfigHandler.deleteCategory("spider");
ConfigHandler.reloadConfig();
}
static void resetWolf() {
- WolfTracker.wolfSvensSession = 0;
- WolfTracker.wolfTeethSession = 0;
- WolfTracker.wolfWheelsSession = 0;
- WolfTracker.wolfWheelsDropsSession = 0;
- WolfTracker.wolfSpiritsSession = 0;
- WolfTracker.wolfBooksSession = 0;
- WolfTracker.wolfEggsSession = 0;
- WolfTracker.wolfCouturesSession = 0;
- WolfTracker.wolfBaitsSession = 0;
- WolfTracker.wolfFluxesSession = 0;
- WolfTracker.wolfTimeSession = -1;
- WolfTracker.wolfBossesSession = -1;
+ WolfTracker.svensSession = 0;
+ WolfTracker.teethSession = 0;
+ WolfTracker.wheelsSession = 0;
+ WolfTracker.wheelsDropsSession = 0;
+ WolfTracker.spiritsSession = 0;
+ WolfTracker.booksSession = 0;
+ WolfTracker.furballsSession = 0;
+ WolfTracker.eggsSession = 0;
+ WolfTracker.couturesSession = 0;
+ WolfTracker.baitsSession = 0;
+ WolfTracker.fluxesSession = 0;
+ WolfTracker.timeSession = -1;
+ WolfTracker.bossesSession = -1;
ConfigHandler.deleteCategory("wolf");
ConfigHandler.reloadConfig();
}
static void resetEnderman() {
- EndermanTracker.endermanVoidgloomsSession = 0;
- EndermanTracker.endermanNullSpheresSession = 0;
- EndermanTracker.endermanTAPSession = 0;
- EndermanTracker.endermanTAPDropsSession = 0;
- EndermanTracker.endermanEndersnakesSession = 0;
- EndermanTracker.endermanSummoningEyesSession = 0;
- EndermanTracker.endermanManaBooksSession = 0;
- EndermanTracker.endermanTunersSession = 0;
- EndermanTracker.endermanAtomsSession = 0;
- EndermanTracker.endermanEspressoMachinesSession = 0;
- EndermanTracker.endermanSmartyBooksSession = 0;
- EndermanTracker.endermanEndRunesSession = 0;
- EndermanTracker.endermanChalicesSession = 0;
- EndermanTracker.endermanDiceSession = 0;
- EndermanTracker.endermanArtifactsSession = 0;
- EndermanTracker.endermanSkinsSession = 0;
- EndermanTracker.endermanMergersSession = 0;
- EndermanTracker.endermanCoresSession = 0;
- EndermanTracker.endermanEnchantRunesSession = 0;
- EndermanTracker.endermanEnderBooksSession = 0;
- EndermanTracker.endermanTimeSession = -1;
- EndermanTracker.endermanBossesSession = -1;
+ EndermanTracker.voidgloomsSession = 0;
+ EndermanTracker.nullSpheresSession = 0;
+ EndermanTracker.TAPSession = 0;
+ EndermanTracker.TAPDropsSession = 0;
+ EndermanTracker.endersnakesSession = 0;
+ EndermanTracker.summoningEyesSession = 0;
+ EndermanTracker.manaBooksSession = 0;
+ EndermanTracker.tunersSession = 0;
+ EndermanTracker.atomsSession = 0;
+ EndermanTracker.hazmatsSession = 0;
+ EndermanTracker.espressoMachinesSession = 0;
+ EndermanTracker.smartyBooksSession = 0;
+ EndermanTracker.endRunesSession = 0;
+ EndermanTracker.chalicesSession = 0;
+ EndermanTracker.diceSession = 0;
+ EndermanTracker.artifactsSession = 0;
+ EndermanTracker.skinsSession = 0;
+ EndermanTracker.mergersSession = 0;
+ EndermanTracker.coresSession = 0;
+ EndermanTracker.enchantRunesSession = 0;
+ EndermanTracker.enderBooksSession = 0;
+ EndermanTracker.timeSession = -1;
+ EndermanTracker.bossesSession = -1;
ConfigHandler.deleteCategory("enderman");
ConfigHandler.reloadConfig();
}
@@ -277,6 +279,7 @@ public class ResetLootCommand extends CommandBase {
FishingTracker.lavaBlazesSession = 0;
FishingTracker.lavaPigmenSession = 0;
FishingTracker.zombieMinersSession = 0;
+ FishingTracker.plhlegblastsSession = 0;
FishingTracker.magmaSlugsSession = 0;
FishingTracker.moogmasSession = 0;
FishingTracker.lavaLeechesSession = 0;
diff --git a/src/main/java/me/Danker/commands/ScaleCommand.java b/src/main/java/me/Danker/commands/ScaleCommand.java
index 9bb1f08..a19642b 100644
--- a/src/main/java/me/Danker/commands/ScaleCommand.java
+++ b/src/main/java/me/Danker/commands/ScaleCommand.java
@@ -27,6 +27,7 @@ public class ScaleCommand extends CommandBase {
public static double giantHPScale;
public static double abilityCooldownsScale;
public static double dungeonScoreScale;
+ public static double firePillarScale;
@Override
public String getCommandName() {
@@ -36,7 +37,7 @@ public class ScaleCommand extends CommandBase {
@Override
public String getCommandUsage(ICommandSender arg0) {
return "/" + getCommandName() + " <coords/display/dungeontimer/skill50/lividhp/caketimer/skilltracker/wateranswer/" +
- "bonzotimer/golemtimer/teammatesinradius/gianthp/abilitycooldown/dungeonscore> <size (0.1 - 10)>";
+ "bonzotimer/golemtimer/teammatesinradius/gianthp/abilitycooldown/dungeonscore/firepillar> <size (0.1 - 10)>";
}
public static String usage(ICommandSender arg0) {
@@ -53,7 +54,7 @@ public class ScaleCommand extends CommandBase {
if (args.length == 1) {
return getListOfStringsMatchingLastWord(args, "coords", "display", "dungeontimer", "skill50", "lividhp", "caketimer",
"skilltracker", "wateranswer", "bonzotimer", "golemtimer", "teammatesinradius",
- "gianthp", "abilitycooldowns", "dungeonscore");
+ "gianthp", "abilitycooldowns", "dungeonscore", "firepillar");
}
return null;
}
@@ -144,6 +145,11 @@ public class ScaleCommand extends CommandBase {
ConfigHandler.writeDoubleConfig("scales", "dungeonScoreScale", dungeonScoreScale);
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "Dungeon score has been scaled to " + DankersSkyblockMod.SECONDARY_COLOUR + dungeonScoreScale + "x"));
break;
+ case "firepillar":
+ firePillarScale = scaleAmount;
+ ConfigHandler.writeDoubleConfig("scales", "firePillarScale", firePillarScale);
+ player.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "Fire pillar has been scaled to " + DankersSkyblockMod.SECONDARY_COLOUR + firePillarScale + "x"));
+ break;
default:
player.addChatMessage(new ChatComponentText(DankersSkyblockMod.ERROR_COLOUR + "Usage: " + getCommandUsage(arg0)));
}
diff --git a/src/main/java/me/Danker/commands/ToggleCommand.java b/src/main/java/me/Danker/commands/ToggleCommand.java
index 6b659ab..2009e1c 100644
--- a/src/main/java/me/Danker/commands/ToggleCommand.java
+++ b/src/main/java/me/Danker/commands/ToggleCommand.java
@@ -32,6 +32,15 @@ public class ToggleCommand extends CommandBase implements ICommand {
public static boolean expertiseLoreToggled;
public static boolean skill50DisplayToggled;
public static boolean outlineTextToggled;
+ public static boolean lowHealthNotifyToggled;
+ public static boolean stopSalvageStarredToggled;
+ public static boolean watcherReadyToggled;
+ public static boolean swapToPickBlockToggled;
+ public static boolean flowerWeaponsToggled;
+ public static boolean notifySlayerSlainToggled;
+ public static boolean necronNotificationsToggled;
+ public static boolean bonzoTimerToggled;
+ public static boolean autoSkillTrackerToggled;
public static boolean cakeTimerToggled;
public static boolean highlightSlayers;
public static boolean highlightArachne;
@@ -52,6 +61,8 @@ public class ToggleCommand extends CommandBase implements ICommand {
public static boolean dungeonScore;
public static boolean hideArmour;
public static boolean autoJoinSkyblock;
+ public static boolean firePillar;
+ public static boolean aliases;
// Chat Messages
public static boolean sceptreMessages;
public static boolean midasStaffMessages;
@@ -60,16 +71,6 @@ public class ToggleCommand extends CommandBase implements ICommand {
public static boolean cooldownMessages;
public static boolean manaMessages;
public static boolean killComboMessages;
- public static boolean lowHealthNotifyToggled;
- public static boolean lividSolverToggled;
- public static boolean stopSalvageStarredToggled;
- public static boolean watcherReadyToggled;
- public static boolean swapToPickBlockToggled;
- public static boolean flowerWeaponsToggled;
- public static boolean notifySlayerSlainToggled;
- public static boolean necronNotificationsToggled;
- public static boolean bonzoTimerToggled;
- public static boolean autoSkillTrackerToggled;
// Puzzle Solvers
public static boolean threeManToggled;
public static boolean oruoToggled;
@@ -81,6 +82,7 @@ public class ToggleCommand extends CommandBase implements ICommand {
public static boolean boulderToggled;
public static boolean silverfishToggled;
public static boolean iceWalkToggled;
+ public static boolean lividSolverToggled;
// Terminal Helpers
public static boolean startsWithToggled;
public static boolean selectAllToggled;
diff --git a/src/main/java/me/Danker/features/Alerts.java b/src/main/java/me/Danker/features/Alerts.java
index aab99b3..8f45423 100644
--- a/src/main/java/me/Danker/features/Alerts.java
+++ b/src/main/java/me/Danker/features/Alerts.java
@@ -1,6 +1,7 @@
package me.Danker.features;
import com.google.gson.GsonBuilder;
+import javafx.scene.control.Alert;
import me.Danker.commands.ToggleCommand;
import me.Danker.utils.Utils;
import net.minecraft.util.EnumChatFormatting;
@@ -12,11 +13,15 @@ import java.awt.*;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
public class Alerts {
public static List<Alert> alerts = new ArrayList<>();
+ public static HashMap<Alert, Pattern> patterns = new HashMap<>();
public static String configFile;
@SubscribeEvent
@@ -41,45 +46,59 @@ public class Alerts {
}
if (!location) continue;
- boolean trigger;
- switch (alert.mode) {
- case "Starts With":
- trigger = message.startsWith(alert.message);
- break;
- case "Contains":
- trigger = message.contains(alert.message);
- break;
- case "Ends With":
- trigger = message.endsWith(alert.message);
- break;
- default:
- continue;
- }
-
- if (trigger) {
- Utils.createTitle(EnumChatFormatting.RED + alert.alert.replace("&", "§"), 2);
-
- if (alert.desktop) {
- try {
- final SystemTray tray = SystemTray.getSystemTray();
- final Image image = Toolkit.getDefaultToolkit().createImage("icon.png");
- final TrayIcon trayIcon = new TrayIcon(image, "Alert");
- trayIcon.setImageAutoSize(true);
- trayIcon.setToolTip("Alert");
- tray.add(trayIcon);
- trayIcon.displayMessage(StringUtils.stripControlCodes(alert.alert), message, TrayIcon.MessageType.INFO);
- tray.remove(trayIcon);
- } catch (Exception ex) {
- ex.printStackTrace();
+ if (alert.mode.equals("Regex")) {
+ Matcher matcher = patterns.get(alert).matcher(message);
+ if (matcher.matches()) {
+ matcher.reset();
+ String alertText = alert.alert;
+
+ int i = 0;
+ while (matcher.find()) {
+ for (int j = 0; j <= matcher.groupCount(); j++) {
+ alertText = alertText.replace("$$" + i + "$$", matcher.group(j));
+ i++;
+ }
}
+
+ Utils.createTitle(EnumChatFormatting.RED + alertText.replace("&", "§"), 2);
+ if (alert.desktop) Utils.desktopNotification("Alert", alertText, message, TrayIcon.MessageType.INFO);
+
+ return;
}
+ } else {
+ boolean trigger;
+ switch (alert.mode) {
+ case "Starts With":
+ trigger = message.startsWith(alert.message);
+ break;
+ case "Contains":
+ trigger = message.contains(alert.message);
+ break;
+ case "Ends With":
+ trigger = message.endsWith(alert.message);
+ break;
+ default:
+ continue;
+ }
+
+ if (trigger) {
+ Utils.createTitle(EnumChatFormatting.RED + alert.alert.replace("&", "§"), 2);
+ if (alert.desktop) Utils.desktopNotification("Alert", alert.alert, message, TrayIcon.MessageType.INFO);
- return;
+ return;
+ }
}
}
}
- public static void saveToFile() {
+ public static void save() {
+ for (Alert alert : alerts) {
+ if (alert.mode.equals("Regex")) {
+ Pattern pattern = Pattern.compile(alert.message);
+ patterns.put(alert, pattern);
+ }
+ }
+
try (FileWriter writer = new FileWriter(configFile)) {
new GsonBuilder().create().toJson(alerts, writer);
writer.flush();
diff --git a/src/main/java/me/Danker/features/ChatAliases.java b/src/main/java/me/Danker/features/ChatAliases.java
new file mode 100644
index 0000000..ae9e0f7
--- /dev/null
+++ b/src/main/java/me/Danker/features/ChatAliases.java
@@ -0,0 +1,64 @@
+package me.Danker.features;
+
+import com.google.gson.GsonBuilder;
+import me.Danker.events.PacketWriteEvent;
+import net.minecraft.client.Minecraft;
+import net.minecraft.network.play.client.C01PacketChatMessage;
+import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
+
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+public class ChatAliases {
+
+ public static List<Alias> aliases = new ArrayList<>();
+ public static String configFile;
+
+ @SubscribeEvent
+ public void onPacketWrite(PacketWriteEvent event) {
+ if (event.packet instanceof C01PacketChatMessage) {
+ C01PacketChatMessage packet = (C01PacketChatMessage) event.packet;
+ String message = packet.getMessage();
+
+ for (Alias alias : aliases) {
+ if (!alias.toggled) continue;
+ message = message.replace(alias.text, alias.alias);
+ }
+
+ if (!packet.getMessage().equals(message)) {
+ event.setCanceled(true);
+ Minecraft.getMinecraft().thePlayer.sendQueue.addToSendQueue(new C01PacketChatMessage(message));
+ }
+ }
+ }
+
+ public static void save() {
+ try (FileWriter writer = new FileWriter(configFile)) {
+ new GsonBuilder().create().toJson(aliases, writer);
+ writer.flush();
+ } catch (IOException ex) {
+ ex.printStackTrace();
+ }
+ }
+
+ public static class Alias {
+
+ public String text;
+ public String alias;
+ public boolean toggled;
+
+ public Alias(String text, String alias, boolean toggled) {
+ this.text = text;
+ this.alias = alias;
+ this.toggled = toggled;
+ }
+
+ public void toggle() {
+ toggled = !toggled;
+ }
+
+ }
+
+}
diff --git a/src/main/java/me/Danker/features/ColouredNames.java b/src/main/java/me/Danker/features/ColouredNames.java
index aad1ab1..90d722e 100644
--- a/src/main/java/me/Danker/features/ColouredNames.java
+++ b/src/main/java/me/Danker/features/ColouredNames.java
@@ -11,6 +11,7 @@ import net.minecraft.network.play.server.S45PacketTitle;
import net.minecraft.util.ChatComponentText;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.IChatComponent;
+import net.minecraft.util.StringUtils;
import net.minecraftforge.client.event.ClientChatReceivedEvent;
import net.minecraftforge.client.event.RenderLivingEvent;
import net.minecraftforge.event.entity.player.ItemTooltipEvent;
@@ -53,7 +54,7 @@ public class ColouredNames {
for (String user : users) {
for (int i = 0; i < event.toolTip.size(); i++) {
- if (event.toolTip.get(i).contains(user)) {
+ if (StringUtils.stripControlCodes(event.toolTip.get(i)).contains(user)) {
event.toolTip.set(i, replaceName(event.toolTip.get(i), user, getColourFromName(user)));
}
}
diff --git a/src/main/java/me/Danker/features/CrystalHollowWaypoints.java b/src/main/java/me/Danker/features/CrystalHollowWaypoints.java
index f367877..a8ee0f9 100644
--- a/src/main/java/me/Danker/features/CrystalHollowWaypoints.java
+++ b/src/main/java/me/Danker/features/CrystalHollowWaypoints.java
@@ -1,12 +1,13 @@
package me.Danker.features;
import me.Danker.DankersSkyblockMod;
-import me.Danker.commands.CrystalHollowWaypointCommand;
import me.Danker.commands.ToggleCommand;
+import me.Danker.gui.crystalhollowwaypoints.CrystalHollowAddWaypointGui;
import me.Danker.handlers.ScoreboardHandler;
import me.Danker.utils.RenderUtils;
import me.Danker.utils.Utils;
import net.minecraft.client.Minecraft;
+import net.minecraft.client.settings.KeyBinding;
import net.minecraft.entity.item.EntityArmorStand;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.event.ClickEvent;
@@ -16,15 +17,19 @@ import net.minecraftforge.client.event.ClientChatReceivedEvent;
import net.minecraftforge.client.event.RenderWorldLastEvent;
import net.minecraftforge.event.world.WorldEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
+import net.minecraftforge.fml.common.gameevent.InputEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent;
import java.util.ArrayList;
import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
public class CrystalHollowWaypoints {
public static List<Waypoint> waypoints = new ArrayList<>();
-
+ public static Pattern skytilsPattern = Pattern.compile("(?<name>.*?): (?<x>\\d{1,3}) (?<y>\\d{1,3}) (?<z>\\d{1,3})");
+
static boolean khazad = false;
static boolean fairy = false;
static boolean temple = false;
@@ -123,30 +128,71 @@ public class CrystalHollowWaypoints {
$SBECHWP:Khazad-dûm@-292,63,281\nFairy Grotto@-216,110,400\njungle temple@-525,110,395\nJungle Temple@-493,101,425\nMines of Divan@-673,117,426
*/
if (ToggleCommand.crystalHollowWaypoints && Utils.tabLocation.equals("Crystal Hollows")) {
- if (!message.contains(player.getName()) && (message.contains(": $DSMCHWP:") || message.contains(": $SBECHWP:"))) {
- String waypoints = message.substring(message.lastIndexOf(":") + 1);
+ if (!message.contains(player.getName())) {
+ if (message.contains(": $DSMCHWP:") || message.contains(": $SBECHWP:")) {
+ String waypoints = message.substring(message.lastIndexOf(":") + 1);
- if (ToggleCommand.crystalAutoPlayerWaypoints) {
- CrystalHollowWaypointCommand.addWaypoints(waypoints, true);
- return;
- }
+ if (ToggleCommand.crystalAutoPlayerWaypoints) {
+ addDSMWaypoints(waypoints, true);
+ return;
+ }
+
+ ChatComponentText add = new ChatComponentText(EnumChatFormatting.GREEN + "" + EnumChatFormatting.BOLD + " [ADD]\n");
+ add.setChatStyle(add.getChatStyle().setChatClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/dsmaddcrystalhollowwaypoints " + waypoints)));
- ChatComponentText add = new ChatComponentText(EnumChatFormatting.GREEN + "" + EnumChatFormatting.BOLD + " [ADD]\n");
- add.setChatStyle(add.getChatStyle().setChatClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/dsmaddcrystalhollowwaypoints " + waypoints)));
+ new Thread(() -> {
+ try {
+ Thread.sleep(10);
+ } catch (InterruptedException ex) {
+ ex.printStackTrace();
+ }
+ player.addChatMessage(new ChatComponentText("\n" + DankersSkyblockMod.MAIN_COLOUR + "DSM/SBE Crystal Hollows waypoints found. Click to add.\n").appendSibling(add));
+ }).start();
+ } else {
+ String text = message.substring(message.indexOf(":") + 2);
+ Matcher matcher = skytilsPattern.matcher(text);
+
+ if (matcher.matches()) {
+ String name = matcher.group("name");
+ String x = matcher.group("x");
+ String y = matcher.group("y");
+ String z = matcher.group("z");
+
+ if (ToggleCommand.crystalAutoPlayerWaypoints) {
+ addWaypoint(name, x, y, z);
+ return;
+ }
- new Thread(() -> {
- try {
- Thread.sleep(10);
- } catch (InterruptedException ex) {
- ex.printStackTrace();
+ ChatComponentText add = new ChatComponentText(EnumChatFormatting.GREEN + "" + EnumChatFormatting.BOLD + " [ADD]\n");
+ add.setChatStyle(add.getChatStyle().setChatClickEvent(new ClickEvent(ClickEvent.Action.RUN_COMMAND, "/dsmaddcrystalhollowwaypoints st " + x + " " + y + " " + z + " " + name)));
+
+ new Thread(() -> {
+ try {
+ Thread.sleep(10);
+ } catch (InterruptedException ex) {
+ ex.printStackTrace();
+ }
+ player.addChatMessage(new ChatComponentText("\n" + DankersSkyblockMod.MAIN_COLOUR + "Skytils Crystal Hollows waypoints found. Click to add.\n").appendSibling(add));
+ }).start();
}
- player.addChatMessage(new ChatComponentText("\n" + DankersSkyblockMod.MAIN_COLOUR + "DSM/SBE Crystal Hollows waypoints found. Click to add.\n").appendSibling(add));
- }).start();
+ }
}
}
}
@SubscribeEvent
+ public void onKey(InputEvent.KeyInputEvent event) {
+ if (!Utils.tabLocation.equals("Crystal Hollows")) return;
+
+ if (DankersSkyblockMod.keyBindings[3].isPressed()) {
+ Minecraft mc = Minecraft.getMinecraft();
+ EntityPlayer player = mc.thePlayer;
+
+ mc.displayGuiScreen(new CrystalHollowAddWaypointGui((int) player.posX, (int) player.posY, (int) player.posZ));
+ }
+ }
+
+ @SubscribeEvent
public void onWorldRender(RenderWorldLastEvent event) {
if (ToggleCommand.crystalHollowWaypoints && Utils.tabLocation.equals("Crystal Hollows")) {
for (Waypoint waypoint : waypoints) {
@@ -201,4 +247,38 @@ public class CrystalHollowWaypoints {
}
+ public static void addWaypoint(String name, String x, String y, String z) {
+ BlockPos pos = new BlockPos(Integer.parseInt(x), Integer.parseInt(y), Integer.parseInt(z));
+ Waypoint waypoint = new Waypoint(name, pos);
+ waypoints.add(waypoint);
+ Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "Added " + waypoint.location + " @ " + waypoint.getPos()));
+ }
+
+ public static void addDSMWaypoints(String list, boolean auto) {
+ String[] waypointsList = list.split("\\\\n");
+
+ for (String waypoint : waypointsList) {
+ String[] parts = waypoint.split("@-");
+ String[] coords = parts[1].split(",");
+
+ String location = parts[0];
+ BlockPos pos = new BlockPos(Integer.parseInt(coords[0]), Integer.parseInt(coords[1]), Integer.parseInt(coords[2]));
+ Waypoint newWaypoint = new Waypoint(location, pos);
+
+ if (auto) {
+ boolean contains = false;
+ for (Waypoint existing : waypoints) {
+ if (existing.location.equals(location)) {
+ contains = true;
+ break;
+ }
+ }
+ if (contains) continue;
+ }
+
+ waypoints.add(newWaypoint);
+ Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(DankersSkyblockMod.MAIN_COLOUR + "Added " + newWaypoint.location + " @ " + newWaypoint.getPos()));
+ }
+ }
+
}
diff --git a/src/main/java/me/Danker/features/CustomMusic.java b/src/main/java/me/Danker/features/CustomMusic.java
index a31e40a..3ea8d1f 100644
--- a/src/main/java/me/Danker/features/CustomMusic.java
+++ b/src/main/java/me/Danker/features/CustomMusic.java
@@ -27,12 +27,21 @@ import java.util.Random;
public class CustomMusic {
static boolean cancelNotes;
+
public static Song dungeonboss;
public static int dungeonbossVolume;
public static Song bloodroom;
public static int bloodroomVolume;
public static Song dungeon;
public static int dungeonVolume;
+ public static Song phase2;
+ public static int phase2Volume;
+ public static Song phase3;
+ public static int phase3Volume;
+ public static Song phase4;
+ public static int phase4Volume;
+ public static Song phase5;
+ public static int phase5Volume;
public static Song hub;
public static int hubVolume;
public static Song island;
@@ -79,56 +88,56 @@ public class CustomMusic {
String firstLine = ScoreboardHandler.cleanSB(scoreboard.get(scoreboard.size() - 1));
String secondLine = ScoreboardHandler.cleanSB(scoreboard.get(scoreboard.size() - 2));
if (firstLine.contains("30,30") || // F1
- firstLine.contains("30,125") || // F2
- firstLine.contains("30,225") || // F3
- secondLine.contains("- Healthy") || // F3
- firstLine.contains("30,344") || // F4
- firstLine.contains("livid") || // F5
- firstLine.contains("sadan") || // F6
- firstLine.contains("necron")) { // F7
-
- if (ToggleCommand.dungeonBossMusic) dungeonboss.start();
- }
- }
- } else {
- switch (Utils.tabLocation) {
- case "Hub":
- if (ToggleCommand.hubMusic) hub.start();
- break;
- case "Private Island":
- if (ToggleCommand.islandMusic) island.start();
- break;
- case "Dungeon Hub":
- if (ToggleCommand.dungeonHubMusic) dungeonHub.start();
- break;
- case "The Farming Islands":
- if (ToggleCommand.farmingIslandsMusic) farmingIslands.start();
- break;
- case "Gold Mine":
- if (ToggleCommand.goldMineMusic) goldMine.start();
- break;
- case "Deep Caverns":
- if (ToggleCommand.deepCavernsMusic) deepCaverns.start();
- break;
- case "Dwarven Mines":
- if (ToggleCommand.dwarvenMinesMusic) dwarvenMines.start();
- break;
- case "Crystal Hollows":
- if (ToggleCommand.crystalHollowsMusic) crystalHollows.start();
- break;
- case "Spider's Den":
- if (ToggleCommand.spidersDenMusic) spidersDen.start();
- break;
- case "Crimson Isle":
- if (ToggleCommand.crimsonIsleMusic) crimsonIsle.start();
- break;
- case "The End":
- if (ToggleCommand.endMusic) end.start();
- break;
- case "The Park":
- if (ToggleCommand.parkMusic) park.start();
- break;
+ firstLine.contains("30,125") || // F2
+ firstLine.contains("30,225") || // F3
+ secondLine.contains("- Healthy") || // F3
+ firstLine.contains("30,344") || // F4
+ firstLine.contains("livid") || // F5
+ firstLine.contains("sadan") || // F6
+ firstLine.contains("maxor")) { // F7
+
+ if (ToggleCommand.dungeonBossMusic) dungeonboss.start();
}
+ }
+ } else {
+ switch (Utils.tabLocation) {
+ case "Hub":
+ if (ToggleCommand.hubMusic) hub.start();
+ break;
+ case "Private Island":
+ if (ToggleCommand.islandMusic) island.start();
+ break;
+ case "Dungeon Hub":
+ if (ToggleCommand.dungeonHubMusic) dungeonHub.start();
+ break;
+ case "The Farming Islands":
+ if (ToggleCommand.farmingIslandsMusic) farmingIslands.start();
+ break;
+ case "Gold Mine":
+ if (ToggleCommand.goldMineMusic) goldMine.start();
+ break;
+ case "Deep Caverns":
+ if (ToggleCommand.deepCavernsMusic) deepCaverns.start();
+ break;
+ case "Dwarven Mines":
+ if (ToggleCommand.dwarvenMinesMusic) dwarvenMines.start();
+ break;
+ case "Crystal Hollows":
+ if (ToggleCommand.crystalHollowsMusic) crystalHollows.start();
+ break;
+ case "Spider's Den":
+ if (ToggleCommand.spidersDenMusic) spidersDen.start();
+ break;
+ case "Crimson Isle":
+ if (ToggleCommand.crimsonIsleMusic) crimsonIsle.start();
+ break;
+ case "The End":
+ if (ToggleCommand.endMusic) end.start();
+ break;
+ case "The Park":
+ if (ToggleCommand.parkMusic) park.start();
+ break;
+ }
}
}
}
@@ -147,10 +156,26 @@ public class CustomMusic {
if (message.contains(":")) return;
if (Utils.inDungeons) {
+ if (ToggleCommand.dungeonBossMusic) {
+ if (message.startsWith("[BOSS] Storm: Pathetic Maxor")) {
+ phase2.start();
+ } else if (message.startsWith("[BOSS] Goldor: Who dares trespass into my domain?")) {
+ phase3.start();
+ } else if (message.startsWith("[BOSS] Necron: You went further than any human before")) {
+ phase4.start();
+ } else if (message.startsWith("[BOSS] ") && message.endsWith("You.. again?")) {
+ phase5.start();
+ }
+ }
+
if (message.contains("EXTRA STATS ")) {
dungeonboss.stop();
bloodroom.stop();
dungeon.stop();
+ phase2.stop();
+ phase3.stop();
+ phase4.stop();
+ phase5.stop();
} else if (message.contains("The BLOOD DOOR has been opened!")) {
dungeon.stop();
if (ToggleCommand.bloodRoomMusic) bloodroom.start();
@@ -175,6 +200,10 @@ public class CustomMusic {
dungeonboss = new Song(directory, "dungeonboss", dungeonbossVolume);
bloodroom = new Song(directory, "bloodroom", bloodroomVolume);
dungeon = new Song(directory, "dungeon", dungeonVolume);
+ phase2 = new Song(directory, "phasetwo", phase2Volume);
+ phase3 = new Song(directory, "phasethree", phase3Volume);
+ phase4 = new Song(directory, "phasefour", phase4Volume);
+ phase5 = new Song(directory, "phasefive", phase5Volume);
hub = new Song(directory, "hub", hubVolume);
island = new Song(directory, "island", hubVolume);
dungeonHub = new Song(directory, "dungeonhub", dungeonHubVolume);
@@ -193,6 +222,10 @@ public class CustomMusic {
if (dungeonboss != null) dungeonboss.stop();
if (bloodroom != null) bloodroom.stop();
if (dungeon != null) dungeon.stop();
+ if (phase2 != null) phase2.stop();
+ if (phase3 != null) phase3.stop();
+ if (phase4 != null) phase4.stop();
+ if (phase5 != null) phase5.stop();
if (hub != null) hub.stop();
if (island != null) island.stop();
if (dungeonHub != null) dungeonHub.stop();
@@ -230,7 +263,6 @@ public class CustomMusic {
public void start() throws UnsupportedAudioFileException, LineUnavailableException, IOException {
try {
- if (music == null) music = AudioSystem.getClip();
if (!music.isRunning()) {
reset();
shuffle();
diff --git a/src/main/java/me/Danker/features/FirePillarDisplay.java b/src/main/java/me/Danker/features/FirePillarDisplay.java
new file mode 100644
index 0000000..34b2288
--- /dev/null
+++ b/src/main/java/me/Danker/features/FirePillarDisplay.java
@@ -0,0 +1,51 @@
+package me.Danker.features;
+
+import me.Danker.DankersSkyblockMod;
+import me.Danker.commands.MoveCommand;
+import me.Danker.commands.ScaleCommand;
+import me.Danker.commands.ToggleCommand;
+import me.Danker.events.RenderOverlayEvent;
+import me.Danker.handlers.TextRenderer;
+import me.Danker.utils.Utils;
+import net.minecraft.client.Minecraft;
+import net.minecraft.entity.Entity;
+import net.minecraft.util.StringUtils;
+import net.minecraft.world.World;
+import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
+import net.minecraftforge.fml.common.gameevent.TickEvent;
+
+import java.util.List;
+
+public class FirePillarDisplay {
+
+ static Entity pillar = null;
+
+ @SubscribeEvent
+ public void onTick(TickEvent.ClientTickEvent event) {
+ if (event.phase != TickEvent.Phase.START) return;
+
+ World world = Minecraft.getMinecraft().theWorld;
+ if (DankersSkyblockMod.tickAmount % 20 == 0) {
+ pillar = null;
+ if (ToggleCommand.firePillar && world != null && Utils.tabLocation.equals("Crimson Isle") && Utils.isInScoreboard("Slay the boss!")) {
+ List<Entity> entities = world.getLoadedEntityList();
+
+ for (Entity entity : entities) {
+ String name = StringUtils.stripControlCodes(entity.getName());
+ if (name.endsWith(" hits") && name.charAt(1) == 's') {
+ pillar = entity;
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ @SubscribeEvent
+ public void renderPlayerInfo(RenderOverlayEvent event) {
+ if (ToggleCommand.firePillar && pillar != null) {
+ new TextRenderer(Minecraft.getMinecraft(), Utils.removeBold(pillar.getName()), MoveCommand.firePillarXY[0], MoveCommand.firePillarXY[1], ScaleCommand.firePillarScale);
+ }
+ }
+
+}
diff --git a/src/main/java/me/Danker/features/GpartyNotifications.java b/src/main/java/me/Danker/features/GpartyNotifications.java
index f3aec69..76c0a66 100644
--- a/src/main/java/me/Danker/features/GpartyNotifications.java
+++ b/src/main/java/me/Danker/features/GpartyNotifications.java
@@ -19,18 +19,7 @@ public class GpartyNotifications {
if (ToggleCommand.gpartyToggled) {
if (message.contains(" has invited all members of ")) {
- try {
- final SystemTray tray = SystemTray.getSystemTray();
- final Image image = Toolkit.getDefaultToolkit().createImage("icon.png");
- final TrayIcon trayIcon = new TrayIcon(image, "Guild Party Notifier");
- trayIcon.setImageAutoSize(true);
- trayIcon.setToolTip("Guild Party Notifier");
- tray.add(trayIcon);
- trayIcon.displayMessage("Guild Party", message, TrayIcon.MessageType.INFO);
- tray.remove(trayIcon);
- } catch (Exception ex) {
- ex.printStackTrace();
- }
+ Utils.desktopNotification("Guild Party Notifier", "Guild Party", message, TrayIcon.MessageType.INFO);
}
}
}
diff --git a/src/main/java/me/Danker/features/loot/BlazeTracker.java b/src/main/java/me/Danker/features/loot/BlazeTracker.java
index 896f65f..955f83c 100644
--- a/src/main/java/me/Danker/features/loot/BlazeTracker.java
+++ b/src/main/java/me/Danker/features/loot/BlazeTracker.java
@@ -89,7 +89,7 @@ public class BlazeTracker {
splashPotions++;
splashPotionsSession++;
ConfigHandler.writeIntConfig("blaze", "splashPotions", splashPotions);
- } else if (message.contains("RARE DROP! (Bundle of Magma Arrows)")) {
+ } else if (message.contains("RARE DROP! (Bundle of Magma Arrows)")) {
magmaArrows++;
magmaArrowsSession++;
ConfigHandler.writeIntConfig("blaze", "magmaArrows", magmaArrows);
@@ -105,25 +105,30 @@ public class BlazeTracker {
kelvinInverters++;
kelvinInvertersSession++;
ConfigHandler.writeIntConfig("blaze", "kelvinInverters", kelvinInverters);
- } else if (message.contains("VERY RARE DROP! (Blaze Rod Distillate)")) {
- blazeRodDistillates++;
- blazeRodDistillatesSession++;
+ } else if (message.contains("VERY RARE DROP! (") && message.contains("Blaze Rod Distillate)")) {
+ int amount = LootTracker.getAmountfromMessage(message);
+ blazeRodDistillates += amount;
+ blazeRodDistillatesSession += amount;
ConfigHandler.writeIntConfig("blaze", "blazeRodDistillates", blazeRodDistillates);
- } else if (message.contains("VERY RARE DROP! (Glowstone Distillate)")) {
- glowstoneDistillates++;
- glowstoneDistillatesSession++;
+ } else if (message.contains("VERY RARE DROP! (") && message.contains("Glowstone Distillate)")) {
+ int amount = LootTracker.getAmountfromMessage(message);
+ glowstoneDistillates += amount;
+ glowstoneDistillatesSession += amount;
ConfigHandler.writeIntConfig("blaze", "glowstoneDistillates", glowstoneDistillates);
- } else if (message.contains("VERY RARE DROP! (Magma Cream Distillate)")) {
- magmaCreamDistillates++;
- magmaCreamDistillatesSession++;
+ } else if (message.contains("VERY RARE DROP! (") && message.contains("Magma Cream Distillate)")) {
+ int amount = LootTracker.getAmountfromMessage(message);
+ magmaCreamDistillates += amount;
+ magmaCreamDistillatesSession += amount;
ConfigHandler.writeIntConfig("blaze", "magmaCreamDistillates", magmaCreamDistillates);
- } else if (message.contains("VERY RARE DROP! (Nether Wart Distillate)")) {
- netherWartDistillates++;
- netherWartDistillatesSession++;
+ } else if (message.contains("VERY RARE DROP! (") && message.contains("Nether Wart Distillate)")) {
+ int amount = LootTracker.getAmountfromMessage(message);
+ netherWartDistillates += amount;
+ netherWartDistillatesSession += amount;
ConfigHandler.writeIntConfig("blaze", "netherWartDistillates", netherWartDistillates);
- } else if (message.contains("VERY RARE DROP! (Gabagool Distillate)")) {
- gabagoolDistillates++;
- gabagoolDistillatesSession++;
+ } else if (message.contains("VERY RARE DROP! (") && message.contains("Gabagool Distillate)")) {
+ int amount = LootTracker.getAmountfromMessage(message);
+ gabagoolDistillates += amount;
+ gabagoolDistillatesSession += amount;
ConfigHandler.writeIntConfig("blaze", "gabagoolDistillates", gabagoolDistillates);
} else if (message.contains("VERY RARE DROP! (Scorched Power Crystal)")) {
scorchedPowerCrystals++;
@@ -140,8 +145,9 @@ public class BlazeTracker {
ConfigHandler.writeIntConfig("blaze", "fieryBurstRunes", fieryBurstRunes);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "FIERY BURST RUNE!", 5);
} else if (message.contains("VERY RARE DROP! (") && message.contains(" Flawed Opal Gemstone)")) {
- opalGems++;
- opalGemsSession++;
+ int amount = LootTracker.getAmountfromMessage(message);
+ opalGems += amount;
+ opalGemsSession += amount;
ConfigHandler.writeIntConfig("blaze", "opalGems", opalGems);
} else if (message.contains("VERY RARE DROP! (Archfiend Dice)")) {
archfiendDice++;
diff --git a/src/main/java/me/Danker/features/loot/EndermanTracker.java b/src/main/java/me/Danker/features/loot/EndermanTracker.java
index 38b22f9..1cc46db 100644
--- a/src/main/java/me/Danker/features/loot/EndermanTracker.java
+++ b/src/main/java/me/Danker/features/loot/EndermanTracker.java
@@ -10,51 +10,53 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
public class EndermanTracker {
- 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;
+ public static int voidglooms;
+ public static int nullSpheres;
+ public static int TAP;
+ public static int TAPDrops;
+ public static int endersnakes;
+ public static int summoningEyes;
+ public static int manaBooks;
+ public static int tuners;
+ public static int atoms;
+ public static int hazmats;
+ public static int espressoMachines;
+ public static int smartyBooks;
+ public static int endRunes;
+ public static int chalices;
+ public static int dice;
+ public static int artifacts;
+ public static int skins;
+ public static int mergers;
+ public static int cores;
+ public static int enchantRunes;
+ public static int enderBooks;
+ public static double time;
+ public static int bosses;
- 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;
+ public static int voidgloomsSession = 0;
+ public static int nullSpheresSession = 0;
+ public static int TAPSession = 0;
+ public static int TAPDropsSession = 0;
+ public static int endersnakesSession = 0;
+ public static int summoningEyesSession = 0;
+ public static int manaBooksSession = 0;
+ public static int tunersSession = 0;
+ public static int atomsSession = 0;
+ public static int hazmatsSession = 0;
+ public static int espressoMachinesSession = 0;
+ public static int smartyBooksSession = 0;
+ public static int endRunesSession = 0;
+ public static int chalicesSession = 0;
+ public static int diceSession = 0;
+ public static int artifactsSession = 0;
+ public static int skinsSession = 0;
+ public static int mergersSession = 0;
+ public static int coresSession = 0;
+ public static int enchantRunesSession = 0;
+ public static int enderBooksSession = 0;
+ public static double timeSession = -1;
+ public static int bossesSession = -1;
@SubscribeEvent
public void onChat(ClientChatReceivedEvent event) {
@@ -67,110 +69,114 @@ public class EndermanTracker {
boolean rng = false;
if (message.contains(" Enderman Slayer LVL ")) {
- endermanVoidglooms++;
- endermanVoidgloomsSession++;
- if (endermanBosses != -1) {
- endermanBosses++;
+ voidglooms++;
+ voidgloomsSession++;
+ if (bosses != -1) {
+ bosses++;
}
- if (endermanBossesSession != -1) {
- endermanBossesSession++;
+ if (bossesSession != -1) {
+ bossesSession++;
}
- ConfigHandler.writeIntConfig("enderman", "voidglooms", endermanVoidglooms);
- ConfigHandler.writeIntConfig("enderman", "bossRNG", endermanBosses);
+ ConfigHandler.writeIntConfig("enderman", "voidglooms", voidglooms);
+ ConfigHandler.writeIntConfig("enderman", "bossRNG", bosses);
} else if (message.contains("RARE DROP! (") && message.contains("Twilight Arrow Poison)")) {
int amount = LootTracker.getAmountfromMessage(message);
- endermanTAP += amount;
- endermanTAPSession += amount;
- endermanTAPDrops++;
- endermanTAPDropsSession++;
- ConfigHandler.writeIntConfig("enderman", "tap", endermanTAP);
- ConfigHandler.writeIntConfig("enderman", "tapDrops", endermanTAPDrops);
+ TAP += amount;
+ TAPSession += amount;
+ TAPDrops++;
+ TAPDropsSession++;
+ ConfigHandler.writeIntConfig("enderman", "tap", TAP);
+ ConfigHandler.writeIntConfig("enderman", "tapDrops", TAPDrops);
} else if (message.contains("VERY RARE DROP! (") && message.contains(" Endersnake Rune I)")) {
- endermanEndersnakes++;
- endermanEndersnakesSession++;
- ConfigHandler.writeIntConfig("enderman", "endersnakes", endermanEndersnakes);
+ endersnakes++;
+ endersnakesSession++;
+ ConfigHandler.writeIntConfig("enderman", "endersnakes", endersnakes);
} else if (message.contains("VERY RARE DROP! (Summoning Eye)")) {
- endermanSummoningEyes++;
- endermanSummoningEyesSession++;
- ConfigHandler.writeIntConfig("enderman", "summoningEyes", endermanSummoningEyes);
+ summoningEyes++;
+ summoningEyesSession++;
+ ConfigHandler.writeIntConfig("enderman", "summoningEyes", summoningEyes);
} else if (message.contains("VERY RARE DROP! (Mana Steal I)")) {
- endermanManaBooks++;
- endermanManaBooksSession++;
- ConfigHandler.writeIntConfig("enderman", "manaBooks", endermanManaBooks);
+ manaBooks++;
+ manaBooksSession++;
+ ConfigHandler.writeIntConfig("enderman", "manaBooks", manaBooks);
} else if (message.contains("VERY RARE DROP! (Transmission Tuner)")) {
- endermanTuners++;
- endermanTunersSession++;
- ConfigHandler.writeIntConfig("enderman", "tuners", endermanTuners);
+ tuners++;
+ tunersSession++;
+ ConfigHandler.writeIntConfig("enderman", "tuners", tuners);
} else if (message.contains("VERY RARE DROP! (Null Atom)")) {
- endermanAtoms++;
- endermanAtomsSession++;
- ConfigHandler.writeIntConfig("enderman", "atoms", endermanAtoms);
+ atoms++;
+ atomsSession++;
+ ConfigHandler.writeIntConfig("enderman", "atoms", atoms);
+ } else if (message.contains("VERY RARE DROP! (Hazmat Enderman)")) {
+ hazmats++;
+ hazmatsSession++;
+ ConfigHandler.writeIntConfig("enderman", "hazmats", hazmats);
} else if (message.contains("CRAZY RARE DROP! (Pocket Espresso Machine)")) {
rng = true;
- endermanEspressoMachines++;
- endermanEspressoMachinesSession++;
- ConfigHandler.writeIntConfig("enderman", "espressoMachines", endermanEspressoMachines);
+ espressoMachines++;
+ espressoMachinesSession++;
+ ConfigHandler.writeIntConfig("enderman", "espressoMachines", espressoMachines);
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);
+ smartyBooks++;
+ smartyBooksSession++;
+ ConfigHandler.writeIntConfig("enderman", "smartyBooks", smartyBooks);
} else if (message.contains("VERY RARE DROP! (") && message.contains(" End Rune I)")) {
- endermanEndRunes++;
- endermanEndRunesSession++;
- ConfigHandler.writeIntConfig("enderman", "endRunes", endermanEndRunes);
+ endRunes++;
+ endRunesSession++;
+ ConfigHandler.writeIntConfig("enderman", "endRunes", endRunes);
} else if (message.contains("CRAZY RARE DROP! (Handy Blood Chalice)")) {
rng = true;
- endermanChalices++;
- endermanChalicesSession++;
- ConfigHandler.writeIntConfig("enderman", "chalices", endermanChalices);
+ chalices++;
+ chalicesSession++;
+ ConfigHandler.writeIntConfig("enderman", "chalices", chalices);
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);
+ dice++;
+ diceSession++;
+ ConfigHandler.writeIntConfig("enderman", "dice", dice);
} else if (message.contains("CRAZY RARE DROP! (Exceedingly Rare Ender Artifact Upgrader)")) {
rng = true;
- endermanArtifacts++;
- endermanArtifactsSession++;
- ConfigHandler.writeIntConfig("enderman", "artifacts", endermanArtifacts);
+ artifacts++;
+ artifactsSession++;
+ ConfigHandler.writeIntConfig("enderman", "artifacts", artifacts);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "ENDER ARTIFACT UPGRADER!", 3);
} else if (message.contains("CRAZY RARE DROP! (Void Conqueror Enderman Skin)")) {
rng = true;
- endermanSkins++;
- endermanSkinsSession++;
- ConfigHandler.writeIntConfig("enderman", "skins", endermanSkins);
+ skins++;
+ skinsSession++;
+ ConfigHandler.writeIntConfig("enderman", "skins", skins);
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);
+ mergers++;
+ mergersSession++;
+ ConfigHandler.writeIntConfig("enderman", "mergers", mergers);
} else if (message.contains("CRAZY RARE DROP! (Judgement Core)")) {
rng = true;
- endermanCores++;
- endermanCoresSession++;
- ConfigHandler.writeIntConfig("enderman", "cores", endermanCores);
+ cores++;
+ coresSession++;
+ ConfigHandler.writeIntConfig("enderman", "cores", cores);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "JUDGEMENT CORE!", 5);
} else if (message.contains("CRAZY RARE DROP! (") && message.contains(" Enchant Rune I)")) {
rng = true;
- endermanEnchantRunes++;
- endermanEnchantRunesSession++;
- ConfigHandler.writeIntConfig("enderman", "enchantRunes", endermanEnchantRunes);
+ enchantRunes++;
+ enchantRunesSession++;
+ ConfigHandler.writeIntConfig("enderman", "enchantRunes", enchantRunes);
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)")) {
rng = true;
- endermanEnderBooks++;
- endermanEnderBooksSession++;
- ConfigHandler.writeIntConfig("enderman", "enderBooks", endermanEnderBooks);
+ enderBooks++;
+ enderBooksSession++;
+ ConfigHandler.writeIntConfig("enderman", "enderBooks", enderBooks);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "ENDER SLAYER VII!", 3);
}
if (rng) {
- endermanTime = System.currentTimeMillis() / 1000;
- endermanBosses = 0;
- endermanTimeSession = System.currentTimeMillis() / 1000;
- endermanBossesSession = 0;
- ConfigHandler.writeDoubleConfig("enderman", "timeRNG", endermanTime);
+ time = System.currentTimeMillis() / 1000;
+ bosses = 0;
+ timeSession = System.currentTimeMillis() / 1000;
+ bossesSession = 0;
+ ConfigHandler.writeDoubleConfig("enderman", "timeRNG", time);
ConfigHandler.writeIntConfig("enderman", "bossRNG", 0);
}
}
diff --git a/src/main/java/me/Danker/features/loot/FishingTracker.java b/src/main/java/me/Danker/features/loot/FishingTracker.java
index 95a9040..f8adfa2 100644
--- a/src/main/java/me/Danker/features/loot/FishingTracker.java
+++ b/src/main/java/me/Danker/features/loot/FishingTracker.java
@@ -55,6 +55,7 @@ public class FishingTracker {
public static int lavaPigmen;
public static int zombieMiners;
// Lava fishing
+ public static int plhlegblasts;
public static int magmaSlugs;
public static int moogmas;
public static int lavaLeeches;
@@ -114,6 +115,7 @@ public class FishingTracker {
public static int lavaPigmenSession = 0;
public static int zombieMinersSession = 0;
// Lava fishing
+ public static int plhlegblastsSession = 0;
public static int magmaSlugsSession = 0;
public static int moogmasSession = 0;
public static int lavaLeechesSession = 0;
@@ -320,7 +322,12 @@ public class FishingTracker {
zombieMinersSession++;
ConfigHandler.writeIntConfig("fishing", "zombieMiner", zombieMiners);
increaseSeaCreatures();
- } else if (message.contains("From Beneath the lava appears a Magma Slug")) {
+ } else if (message.contains("WOAH! A Plhlegblast appeared")) {
+ plhlegblasts++;
+ plhlegblastsSession++;
+ ConfigHandler.writeIntConfig("fishing", "plhlegblast", plhlegblasts);
+ increaseSeaCreatures();
+ } else if (message.contains("From beneath the lava appears a Magma Slug")) {
magmaSlugs++;
magmaSlugsSession++;
ConfigHandler.writeIntConfig("fishing", "magmaSlug", magmaSlugs);
diff --git a/src/main/java/me/Danker/features/loot/LootDisplay.java b/src/main/java/me/Danker/features/loot/LootDisplay.java
index e1ddcb0..7832362 100644
--- a/src/main/java/me/Danker/features/loot/LootDisplay.java
+++ b/src/main/java/me/Danker/features/loot/LootDisplay.java
@@ -37,20 +37,20 @@ public class LootDisplay {
switch (display) {
case "wolf":
- if (WolfTracker.wolfTime == -1) {
+ if (WolfTracker.time == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(WolfTracker.wolfTime, timeNow);
+ timeBetween = Utils.getTimeBetween(WolfTracker.time, timeNow);
}
- if (WolfTracker.wolfBosses == -1) {
+ if (WolfTracker.bosses == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(WolfTracker.wolfBosses);
+ bossesBetween = nf.format(WolfTracker.bosses);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(WolfTracker.wolfWheels);
+ drop20 = nf.format(WolfTracker.wheels);
} else {
- drop20 = nf.format(WolfTracker.wolfWheelsDrops) + " times";
+ drop20 = nf.format(WolfTracker.wheelsDrops) + " times";
}
dropsText = EnumChatFormatting.GOLD + "Svens Killed:\n" +
@@ -58,39 +58,41 @@ public class LootDisplay {
EnumChatFormatting.BLUE + "Hamster Wheels:\n" +
EnumChatFormatting.AQUA + "Spirit Runes:\n" +
EnumChatFormatting.WHITE + "Critical VI Books:\n" +
+ EnumChatFormatting.DARK_AQUA + "Furballs:\n" +
EnumChatFormatting.DARK_RED + "Red Claw Eggs:\n" +
EnumChatFormatting.GOLD + "Couture Runes:\n" +
EnumChatFormatting.AQUA + "Grizzly Baits:\n" +
EnumChatFormatting.DARK_PURPLE + "Overfluxes:\n" +
EnumChatFormatting.AQUA + "Time Since RNG:\n" +
EnumChatFormatting.AQUA + "Bosses Since RNG:";
- countText = EnumChatFormatting.GOLD + nf.format(WolfTracker.wolfSvens) + "\n" +
- EnumChatFormatting.GREEN + nf.format(WolfTracker.wolfTeeth) + "\n" +
+ countText = EnumChatFormatting.GOLD + nf.format(WolfTracker.svens) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(WolfTracker.teeth) + "\n" +
EnumChatFormatting.BLUE + drop20 + "\n" +
- EnumChatFormatting.AQUA + WolfTracker.wolfSpirits + "\n" +
- EnumChatFormatting.WHITE + WolfTracker.wolfBooks + "\n" +
- EnumChatFormatting.DARK_RED + WolfTracker.wolfEggs + "\n" +
- EnumChatFormatting.GOLD + WolfTracker.wolfCoutures + "\n" +
- EnumChatFormatting.AQUA + WolfTracker.wolfBaits + "\n" +
- EnumChatFormatting.DARK_PURPLE + WolfTracker.wolfFluxes + "\n" +
+ EnumChatFormatting.AQUA + WolfTracker.spirits + "\n" +
+ EnumChatFormatting.WHITE + WolfTracker.books + "\n" +
+ EnumChatFormatting.DARK_AQUA + WolfTracker.furballs + "\n" +
+ EnumChatFormatting.DARK_RED + WolfTracker.eggs + "\n" +
+ EnumChatFormatting.GOLD + WolfTracker.coutures + "\n" +
+ EnumChatFormatting.AQUA + WolfTracker.baits + "\n" +
+ EnumChatFormatting.DARK_PURPLE + WolfTracker.fluxes + "\n" +
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
case "wolf_session":
- if (WolfTracker.wolfTimeSession == -1) {
+ if (WolfTracker.timeSession == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(WolfTracker.wolfTimeSession, timeNow);
+ timeBetween = Utils.getTimeBetween(WolfTracker.timeSession, timeNow);
}
- if (WolfTracker.wolfBossesSession == -1) {
+ if (WolfTracker.bossesSession == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(WolfTracker.wolfBossesSession);
+ bossesBetween = nf.format(WolfTracker.bossesSession);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(WolfTracker.wolfWheelsSession);
+ drop20 = nf.format(WolfTracker.wheelsSession);
} else {
- drop20 = nf.format(WolfTracker.wolfWheelsDropsSession) + " times";
+ drop20 = nf.format(WolfTracker.wheelsDropsSession) + " times";
}
dropsText = EnumChatFormatting.GOLD + "Svens Killed:\n" +
@@ -98,39 +100,41 @@ public class LootDisplay {
EnumChatFormatting.BLUE + "Hamster Wheels:\n" +
EnumChatFormatting.AQUA + "Spirit Runes:\n" +
EnumChatFormatting.WHITE + "Critical VI Books:\n" +
+ EnumChatFormatting.DARK_AQUA + "Furballs:\n" +
EnumChatFormatting.DARK_RED + "Red Claw Eggs:\n" +
EnumChatFormatting.GOLD + "Couture Runes:\n" +
EnumChatFormatting.AQUA + "Grizzly Baits:\n" +
EnumChatFormatting.DARK_PURPLE + "Overfluxes:\n" +
EnumChatFormatting.AQUA + "Time Since RNG:\n" +
EnumChatFormatting.AQUA + "Bosses Since RNG:";
- countText = EnumChatFormatting.GOLD + nf.format(WolfTracker.wolfSvensSession) + "\n" +
- EnumChatFormatting.GREEN + nf.format(WolfTracker.wolfTeethSession) + "\n" +
+ countText = EnumChatFormatting.GOLD + nf.format(WolfTracker.svensSession) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(WolfTracker.teethSession) + "\n" +
EnumChatFormatting.BLUE + drop20 + "\n" +
- EnumChatFormatting.AQUA + WolfTracker.wolfSpiritsSession + "\n" +
- EnumChatFormatting.WHITE + WolfTracker.wolfBooksSession + "\n" +
- EnumChatFormatting.DARK_RED + WolfTracker.wolfEggsSession + "\n" +
- EnumChatFormatting.GOLD + WolfTracker.wolfCouturesSession + "\n" +
- EnumChatFormatting.AQUA + WolfTracker.wolfBaitsSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + WolfTracker.wolfFluxesSession + "\n" +
+ EnumChatFormatting.AQUA + WolfTracker.spiritsSession + "\n" +
+ EnumChatFormatting.WHITE + WolfTracker.booksSession + "\n" +
+ EnumChatFormatting.DARK_AQUA + WolfTracker.furballsSession + "\n" +
+ EnumChatFormatting.DARK_RED + WolfTracker.eggsSession + "\n" +
+ EnumChatFormatting.GOLD + WolfTracker.couturesSession + "\n" +
+ EnumChatFormatting.AQUA + WolfTracker.baitsSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + WolfTracker.fluxesSession + "\n" +
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
case "spider":
- if (SpiderTracker.spiderTime == -1) {
+ if (SpiderTracker.time == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(SpiderTracker.spiderTime, timeNow);
+ timeBetween = Utils.getTimeBetween(SpiderTracker.time, timeNow);
}
- if (SpiderTracker.spiderBosses == -1) {
+ if (SpiderTracker.bosses == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(SpiderTracker.spiderBosses);
+ bossesBetween = nf.format(SpiderTracker.bosses);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(SpiderTracker.spiderTAP);
+ drop20 = nf.format(SpiderTracker.TAP);
} else {
- drop20 = nf.format(SpiderTracker.spiderTAPDrops) + " times";
+ drop20 = nf.format(SpiderTracker.TAPDrops) + " times";
}
dropsText = EnumChatFormatting.GOLD + "Tarantulas Killed:\n" +
@@ -144,33 +148,33 @@ public class LootDisplay {
EnumChatFormatting.GOLD + "Digested Mosquitos:\n" +
EnumChatFormatting.AQUA + "Time Since RNG:\n" +
EnumChatFormatting.AQUA + "Bosses Since RNG:";
- countText = EnumChatFormatting.GOLD + nf.format(SpiderTracker.spiderTarantulas) + "\n" +
- EnumChatFormatting.GREEN + nf.format(SpiderTracker.spiderWebs) + "\n" +
+ countText = EnumChatFormatting.GOLD + nf.format(SpiderTracker.tarantulas) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(SpiderTracker.webs) + "\n" +
EnumChatFormatting.DARK_GREEN + drop20 + "\n" +
- EnumChatFormatting.DARK_GRAY + SpiderTracker.spiderBites + "\n" +
- EnumChatFormatting.WHITE + SpiderTracker.spiderBooks + "\n" +
- EnumChatFormatting.AQUA + SpiderTracker.spiderCatalysts + "\n" +
- EnumChatFormatting.DARK_PURPLE + SpiderTracker.spiderTalismans + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + SpiderTracker.spiderSwatters + "\n" +
- EnumChatFormatting.GOLD + SpiderTracker.spiderMosquitos + "\n" +
+ EnumChatFormatting.DARK_GRAY + SpiderTracker.bites + "\n" +
+ EnumChatFormatting.WHITE + SpiderTracker.books + "\n" +
+ EnumChatFormatting.AQUA + SpiderTracker.catalysts + "\n" +
+ EnumChatFormatting.DARK_PURPLE + SpiderTracker.talismans + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + SpiderTracker.swatters + "\n" +
+ EnumChatFormatting.GOLD + SpiderTracker.mosquitos + "\n" +
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
case "spider_session":
- if (SpiderTracker.spiderTimeSession == -1) {
+ if (SpiderTracker.timeSession == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(SpiderTracker.spiderTimeSession, timeNow);
+ timeBetween = Utils.getTimeBetween(SpiderTracker.timeSession, timeNow);
}
- if (SpiderTracker.spiderBossesSession == -1) {
+ if (SpiderTracker.bossesSession == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(SpiderTracker.spiderBossesSession);
+ bossesBetween = nf.format(SpiderTracker.bossesSession);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(SpiderTracker.spiderTAPSession);
+ drop20 = nf.format(SpiderTracker.TAPSession);
} else {
- drop20 = nf.format(SpiderTracker.spiderTAPDropsSession) + " times";
+ drop20 = nf.format(SpiderTracker.TAPDropsSession) + " times";
}
dropsText = EnumChatFormatting.GOLD + "Tarantulas Killed:\n" +
@@ -184,33 +188,33 @@ public class LootDisplay {
EnumChatFormatting.GOLD + "Digested Mosquitos:\n" +
EnumChatFormatting.AQUA + "Time Since RNG:\n" +
EnumChatFormatting.AQUA + "Bosses Since RNG:";
- countText = EnumChatFormatting.GOLD + nf.format(SpiderTracker.spiderTarantulasSession) + "\n" +
- EnumChatFormatting.GREEN + nf.format(SpiderTracker.spiderWebsSession) + "\n" +
+ countText = EnumChatFormatting.GOLD + nf.format(SpiderTracker.tarantulasSession) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(SpiderTracker.websSession) + "\n" +
EnumChatFormatting.DARK_GREEN + drop20 + "\n" +
- EnumChatFormatting.DARK_GRAY + SpiderTracker.spiderBitesSession + "\n" +
- EnumChatFormatting.WHITE + SpiderTracker.spiderBooksSession + "\n" +
- EnumChatFormatting.AQUA + SpiderTracker.spiderCatalystsSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + SpiderTracker.spiderTalismansSession + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + SpiderTracker.spiderSwattersSession + "\n" +
- EnumChatFormatting.GOLD + SpiderTracker.spiderMosquitosSession + "\n" +
+ EnumChatFormatting.DARK_GRAY + SpiderTracker.bitesSession + "\n" +
+ EnumChatFormatting.WHITE + SpiderTracker.booksSession + "\n" +
+ EnumChatFormatting.AQUA + SpiderTracker.catalystsSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + SpiderTracker.talismansSession + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + SpiderTracker.swattersSession + "\n" +
+ EnumChatFormatting.GOLD + SpiderTracker.mosquitosSession + "\n" +
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
case "zombie":
- if (ZombieTracker.zombieTime == -1) {
+ if (ZombieTracker.time == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(ZombieTracker.zombieTime, timeNow);
+ timeBetween = Utils.getTimeBetween(ZombieTracker.time, timeNow);
}
- if (ZombieTracker.zombieBosses == -1) {
+ if (ZombieTracker.bosses == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(ZombieTracker.zombieBosses);
+ bossesBetween = nf.format(ZombieTracker.bosses);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(ZombieTracker.zombieFoulFlesh);
+ drop20 = nf.format(ZombieTracker.foulFlesh);
} else {
- drop20 = nf.format(ZombieTracker.zombieFoulFleshDrops) + " times";
+ drop20 = nf.format(ZombieTracker.foulFleshDrops) + " times";
}
dropsText = EnumChatFormatting.GOLD + "Revs Killed:\n" +
@@ -229,38 +233,38 @@ public class LootDisplay {
EnumChatFormatting.RED + "Warden Hearts:\n" +
EnumChatFormatting.AQUA + "Time Since RNG:\n" +
EnumChatFormatting.AQUA + "Bosses Since RNG:";
- countText = EnumChatFormatting.GOLD + nf.format(ZombieTracker.zombieRevs) + "\n" +
- EnumChatFormatting.GREEN + nf.format(ZombieTracker.zombieRevFlesh) + "\n" +
- EnumChatFormatting.GREEN + nf.format(ZombieTracker.zombieRevViscera) + "\n" +
+ countText = EnumChatFormatting.GOLD + nf.format(ZombieTracker.revs) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(ZombieTracker.revFlesh) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(ZombieTracker.revViscera) + "\n" +
EnumChatFormatting.BLUE + drop20 + "\n" +
- EnumChatFormatting.DARK_GREEN + ZombieTracker.zombiePestilences + "\n" +
- EnumChatFormatting.WHITE + ZombieTracker.zombieBooks + "\n" +
- EnumChatFormatting.WHITE + ZombieTracker.zombieBooksT7 + "\n" +
- EnumChatFormatting.AQUA + ZombieTracker.zombieUndeadCatas + "\n" +
- EnumChatFormatting.DARK_PURPLE + ZombieTracker.zombieBeheadeds + "\n" +
- EnumChatFormatting.RED + ZombieTracker.zombieRevCatas + "\n" +
- EnumChatFormatting.DARK_GREEN + ZombieTracker.zombieSnakes + "\n" +
- EnumChatFormatting.GOLD + ZombieTracker.zombieScythes + "\n" +
- EnumChatFormatting.RED + ZombieTracker.zombieShards + "\n" +
- EnumChatFormatting.RED + ZombieTracker.zombieWardenHearts + "\n" +
+ EnumChatFormatting.DARK_GREEN + ZombieTracker.pestilences + "\n" +
+ EnumChatFormatting.WHITE + ZombieTracker.books + "\n" +
+ EnumChatFormatting.WHITE + ZombieTracker.booksT7 + "\n" +
+ EnumChatFormatting.AQUA + ZombieTracker.undeadCatas + "\n" +
+ EnumChatFormatting.DARK_PURPLE + ZombieTracker.beheadeds + "\n" +
+ EnumChatFormatting.RED + ZombieTracker.revCatas + "\n" +
+ EnumChatFormatting.DARK_GREEN + ZombieTracker.snakes + "\n" +
+ EnumChatFormatting.GOLD + ZombieTracker.scythes + "\n" +
+ EnumChatFormatting.RED + ZombieTracker.shards + "\n" +
+ EnumChatFormatting.RED + ZombieTracker.wardenHearts + "\n" +
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
case "zombie_session":
- if (ZombieTracker.zombieTimeSession == -1) {
+ if (ZombieTracker.timeSession == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(ZombieTracker.zombieTimeSession, timeNow);
+ timeBetween = Utils.getTimeBetween(ZombieTracker.timeSession, timeNow);
}
- if (ZombieTracker.zombieBossesSession == -1) {
+ if (ZombieTracker.bossesSession == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(ZombieTracker.zombieBossesSession);
+ bossesBetween = nf.format(ZombieTracker.bossesSession);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(ZombieTracker.zombieFoulFleshSession);
+ drop20 = nf.format(ZombieTracker.foulFleshSession);
} else {
- drop20 = nf.format(ZombieTracker.zombieFoulFleshDropsSession) + " times";
+ drop20 = nf.format(ZombieTracker.foulFleshDropsSession) + " times";
}
dropsText = EnumChatFormatting.GOLD + "Revs Killed:\n" +
@@ -279,38 +283,38 @@ public class LootDisplay {
EnumChatFormatting.RED + "Warden Hearts:\n" +
EnumChatFormatting.AQUA + "Time Since RNG:\n" +
EnumChatFormatting.AQUA + "Bosses Since RNG:";
- countText = EnumChatFormatting.GOLD + nf.format(ZombieTracker.zombieRevsSession) + "\n" +
- EnumChatFormatting.GREEN + nf.format(ZombieTracker.zombieRevFleshSession) + "\n" +
- EnumChatFormatting.GREEN + nf.format(ZombieTracker.zombieRevVisceraSession) + "\n" +
+ countText = EnumChatFormatting.GOLD + nf.format(ZombieTracker.revsSession) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(ZombieTracker.revFleshSession) + "\n" +
+ EnumChatFormatting.GREEN + nf.format(ZombieTracker.revVisceraSession) + "\n" +
EnumChatFormatting.BLUE + drop20 + "\n" +
- EnumChatFormatting.DARK_GREEN + ZombieTracker.zombiePestilencesSession + "\n" +
- EnumChatFormatting.WHITE + ZombieTracker.zombieBooksSession + "\n" +
- EnumChatFormatting.WHITE + ZombieTracker.zombieBooksT7Session + "\n" +
- EnumChatFormatting.AQUA + ZombieTracker.zombieUndeadCatasSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + ZombieTracker.zombieBeheadedsSession + "\n" +
- EnumChatFormatting.RED + ZombieTracker.zombieRevCatasSession + "\n" +
- EnumChatFormatting.DARK_GREEN + ZombieTracker.zombieSnakesSession + "\n" +
- EnumChatFormatting.GOLD + ZombieTracker.zombieScythes + "\n" +
- EnumChatFormatting.RED + ZombieTracker.zombieShardsSession + "\n" +
- EnumChatFormatting.RED + ZombieTracker.zombieWardenHeartsSession + "\n" +
+ EnumChatFormatting.DARK_GREEN + ZombieTracker.pestilencesSession + "\n" +
+ EnumChatFormatting.WHITE + ZombieTracker.booksSession + "\n" +
+ EnumChatFormatting.WHITE + ZombieTracker.booksT7Session + "\n" +
+ EnumChatFormatting.AQUA + ZombieTracker.undeadCatasSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + ZombieTracker.beheadedsSession + "\n" +
+ EnumChatFormatting.RED + ZombieTracker.revCatasSession + "\n" +
+ EnumChatFormatting.DARK_GREEN + ZombieTracker.snakesSession + "\n" +
+ EnumChatFormatting.GOLD + ZombieTracker.scythes + "\n" +
+ EnumChatFormatting.RED + ZombieTracker.shardsSession + "\n" +
+ EnumChatFormatting.RED + ZombieTracker.wardenHeartsSession + "\n" +
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
case "enderman":
- if (EndermanTracker.endermanTime == -1) {
+ if (EndermanTracker.time == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(EndermanTracker.endermanTime, timeNow);
+ timeBetween = Utils.getTimeBetween(EndermanTracker.time, timeNow);
}
- if (EndermanTracker.endermanBosses == -1) {
+ if (EndermanTracker.bosses == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(EndermanTracker.endermanBosses);
+ bossesBetween = nf.format(EndermanTracker.bosses);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(EndermanTracker.endermanTAP);
+ drop20 = nf.format(EndermanTracker.TAP);
} else {
- drop20 = nf.format(EndermanTracker.endermanTAPDrops) + " times";
+ drop20 = nf.format(EndermanTracker.TAPDrops) + " times";
}
dropsText = EnumChatFormatting.GOLD + "Voidglooms Killed:\n" +
@@ -321,6 +325,7 @@ public class LootDisplay {
EnumChatFormatting.AQUA + "Mana Steal Books:\n" +
EnumChatFormatting.BLUE + "Transmission Tuners:\n" +
EnumChatFormatting.YELLOW + "Null Atoms:\n" +
+ EnumChatFormatting.YELLOW + "Hazmat Endermen:\n" +
EnumChatFormatting.AQUA + "Espresso Machines:\n" +
EnumChatFormatting.WHITE + "Smarty Pants Books:\n" +
EnumChatFormatting.LIGHT_PURPLE + "End Runes:\n" +
@@ -334,43 +339,44 @@ public class LootDisplay {
EnumChatFormatting.RED + "Ender Slayer Books:\n" +
EnumChatFormatting.AQUA + "Time Since RNG:\n" +
EnumChatFormatting.AQUA + "Bosses Since RNG:";
- countText = EnumChatFormatting.GOLD + nf.format(EndermanTracker.endermanVoidglooms) + "\n" +
- EnumChatFormatting.DARK_GRAY + nf.format(EndermanTracker.endermanNullSpheres) + "\n" +
+ countText = EnumChatFormatting.GOLD + nf.format(EndermanTracker.voidglooms) + "\n" +
+ EnumChatFormatting.DARK_GRAY + nf.format(EndermanTracker.nullSpheres) + "\n" +
EnumChatFormatting.DARK_PURPLE + drop20 + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + EndermanTracker.endermanEndersnakes + "\n" +
- EnumChatFormatting.DARK_GREEN + EndermanTracker.endermanSummoningEyes + "\n" +
- EnumChatFormatting.AQUA + EndermanTracker.endermanManaBooks + "\n" +
- EnumChatFormatting.BLUE + EndermanTracker.endermanTuners + "\n" +
- EnumChatFormatting.YELLOW + EndermanTracker.endermanAtoms + "\n" +
- EnumChatFormatting.AQUA + EndermanTracker.endermanEspressoMachines + "\n" +
- EnumChatFormatting.WHITE + EndermanTracker.endermanSmartyBooks + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + EndermanTracker.endermanEndRunes + "\n" +
- EnumChatFormatting.RED + EndermanTracker.endermanChalices + "\n" +
- EnumChatFormatting.RED + EndermanTracker.endermanDice + "\n" +
- EnumChatFormatting.DARK_PURPLE + EndermanTracker.endermanArtifacts + "\n" +
- EnumChatFormatting.DARK_PURPLE + EndermanTracker.endermanSkins + "\n" +
- EnumChatFormatting.GRAY + EndermanTracker.endermanEnchantRunes + "\n" +
- EnumChatFormatting.GOLD + EndermanTracker.endermanMergers + "\n" +
- EnumChatFormatting.GOLD + EndermanTracker.endermanCores + "\n" +
- EnumChatFormatting.RED + EndermanTracker.endermanEnderBooks + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + EndermanTracker.endersnakes + "\n" +
+ EnumChatFormatting.DARK_GREEN + EndermanTracker.summoningEyes + "\n" +
+ EnumChatFormatting.AQUA + EndermanTracker.manaBooks + "\n" +
+ EnumChatFormatting.BLUE + EndermanTracker.tuners + "\n" +
+ EnumChatFormatting.YELLOW + EndermanTracker.atoms + "\n" +
+ EnumChatFormatting.YELLOW + EndermanTracker.hazmats + "\n" +
+ EnumChatFormatting.AQUA + EndermanTracker.espressoMachines + "\n" +
+ EnumChatFormatting.WHITE + EndermanTracker.smartyBooks + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + EndermanTracker.endRunes + "\n" +
+ EnumChatFormatting.RED + EndermanTracker.chalices + "\n" +
+ EnumChatFormatting.RED + EndermanTracker.dice + "\n" +
+ EnumChatFormatting.DARK_PURPLE + EndermanTracker.artifacts + "\n" +
+ EnumChatFormatting.DARK_PURPLE + EndermanTracker.skins + "\n" +
+ EnumChatFormatting.GRAY + EndermanTracker.enchantRunes + "\n" +
+ EnumChatFormatting.GOLD + EndermanTracker.mergers + "\n" +
+ EnumChatFormatting.GOLD + EndermanTracker.cores + "\n" +
+ EnumChatFormatting.RED + EndermanTracker.enderBooks + "\n" +
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
case "enderman_session":
- if (EndermanTracker.endermanTimeSession == -1) {
+ if (EndermanTracker.timeSession == -1) {
timeBetween = "Never";
} else {
- timeBetween = Utils.getTimeBetween(EndermanTracker.endermanTimeSession, timeNow);
+ timeBetween = Utils.getTimeBetween(EndermanTracker.timeSession, timeNow);
}
- if (EndermanTracker.endermanBossesSession == -1) {
+ if (EndermanTracker.bossesSession == -1) {
bossesBetween = "Never";
} else {
- bossesBetween = nf.format(EndermanTracker.endermanBossesSession);
+ bossesBetween = nf.format(EndermanTracker.bossesSession);
}
if (ToggleCommand.slayerCountTotal) {
- drop20 = nf.format(EndermanTracker.endermanTAPSession);
+ drop20 = nf.format(EndermanTracker.TAPSession);
} else {
- drop20 = nf.format(EndermanTracker.endermanTAPDropsSession) + " times";
+ drop20 = nf.format(EndermanTracker.TAPDropsSession) + " times";
}
dropsText = EnumChatFormatting.GOLD + "Voidglooms Killed:\n" +
@@ -381,6 +387,7 @@ public class LootDisplay {
EnumChatFormatting.AQUA + "Mana Steal Books:\n" +
EnumChatFormatting.BLUE + "Transmission Tuners:\n" +
EnumChatFormatting.YELLOW + "Null Atoms:\n" +
+ EnumChatFormatting.YELLOW + "Hazmat Endermen:\n" +
EnumChatFormatting.AQUA + "Espresso Machines:\n" +
EnumChatFormatting.WHITE + "Smarty Pants Books:\n" +
EnumChatFormatting.LIGHT_PURPLE + "End Runes:\n" +
@@ -394,25 +401,26 @@ public class LootDisplay {
EnumChatFormatting.RED + "Ender Slayer Books:\n" +
EnumChatFormatting.AQUA + "Time Since RNG:\n" +
EnumChatFormatting.AQUA + "Bosses Since RNG:";
- countText = EnumChatFormatting.GOLD + nf.format(EndermanTracker.endermanVoidgloomsSession) + "\n" +
- EnumChatFormatting.DARK_GRAY + nf.format(EndermanTracker.endermanNullSpheresSession) + "\n" +
+ countText = EnumChatFormatting.GOLD + nf.format(EndermanTracker.voidgloomsSession) + "\n" +
+ EnumChatFormatting.DARK_GRAY + nf.format(EndermanTracker.nullSpheresSession) + "\n" +
EnumChatFormatting.DARK_PURPLE + drop20 + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + EndermanTracker.endermanEndersnakesSession + "\n" +
- EnumChatFormatting.DARK_GREEN + EndermanTracker.endermanSummoningEyesSession + "\n" +
- EnumChatFormatting.AQUA + EndermanTracker.endermanManaBooksSession + "\n" +
- EnumChatFormatting.BLUE + EndermanTracker.endermanTunersSession + "\n" +
- EnumChatFormatting.YELLOW + EndermanTracker.endermanAtomsSession + "\n" +
- EnumChatFormatting.AQUA + EndermanTracker.endermanEspressoMachinesSession + "\n" +
- EnumChatFormatting.WHITE + EndermanTracker.endermanSmartyBooksSession + "\n" +
- EnumChatFormatting.LIGHT_PURPLE + EndermanTracker.endermanEndRunesSession + "\n" +
- EnumChatFormatting.RED + EndermanTracker.endermanChalicesSession + "\n" +
- EnumChatFormatting.RED + EndermanTracker.endermanDiceSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + EndermanTracker.endermanArtifactsSession + "\n" +
- EnumChatFormatting.DARK_PURPLE + EndermanTracker.endermanSkinsSession + "\n" +
- EnumChatFormatting.GRAY + EndermanTracker.endermanEnchantRunesSession + "\n" +
- EnumChatFormatting.GOLD + EndermanTracker.endermanMergersSession + "\n" +
- EnumChatFormatting.GOLD + EndermanTracker.endermanCoresSession + "\n" +
- EnumChatFormatting.RED + EndermanTracker.endermanEnderBooksSession + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + EndermanTracker.endersnakesSession + "\n" +
+ EnumChatFormatting.DARK_GREEN + EndermanTracker.summoningEyesSession + "\n" +
+ EnumChatFormatting.AQUA + EndermanTracker.manaBooksSession + "\n" +
+ EnumChatFormatting.BLUE + EndermanTracker.tunersSession + "\n" +
+ EnumChatFormatting.YELLOW + EndermanTracker.atomsSession + "\n" +
+ EnumChatFormatting.YELLOW + EndermanTracker.hazmatsSession + "\n" +
+ EnumChatFormatting.AQUA + EndermanTracker.espressoMachinesSession + "\n" +
+ EnumChatFormatting.WHITE + EndermanTracker.smartyBooksSession + "\n" +
+ EnumChatFormatting.LIGHT_PURPLE + EndermanTracker.endRunesSession + "\n" +
+ EnumChatFormatting.RED + EndermanTracker.chalicesSession + "\n" +
+ EnumChatFormatting.RED + EndermanTracker.diceSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + EndermanTracker.artifactsSession + "\n" +
+ EnumChatFormatting.DARK_PURPLE + EndermanTracker.skinsSession + "\n" +
+ EnumChatFormatting.GRAY + EndermanTracker.enchantRunesSession + "\n" +
+ EnumChatFormatting.GOLD + EndermanTracker.mergersSession + "\n" +
+ EnumChatFormatting.GOLD + EndermanTracker.coresSession + "\n" +
+ EnumChatFormatting.RED + EndermanTracker.enderBooksSession + "\n" +
EnumChatFormatting.AQUA + timeBetween + "\n" +
EnumChatFormatting.AQUA + bossesBetween;
break;
@@ -864,6 +872,7 @@ public class LootDisplay {
EnumChatFormatting.AQUA + "Fishing Milestone:\n" +
EnumChatFormatting.GOLD + "Good Catches:\n" +
EnumChatFormatting.DARK_PURPLE + "Great Catches:\n" +
+ EnumChatFormatting.BLUE + "Plhlegblasts:\n" +
EnumChatFormatting.DARK_RED + "Magma Slugs:\n" +
EnumChatFormatting.RED + "Moogmas:\n" +
EnumChatFormatting.RED + "Lava Leeches:\n" +
@@ -879,6 +888,7 @@ public class LootDisplay {
EnumChatFormatting.AQUA + nf.format(FishingTracker.fishingMilestone) + "\n" +
EnumChatFormatting.GOLD + nf.format(FishingTracker.goodCatches) + "\n" +
EnumChatFormatting.DARK_PURPLE + nf.format(FishingTracker.greatCatches) + "\n" +
+ EnumChatFormatting.BLUE + nf.format(FishingTracker.plhlegblasts) + "\n" +
EnumChatFormatting.DARK_RED + nf.format(FishingTracker.magmaSlugs) + "\n" +
EnumChatFormatting.RED + nf.format(FishingTracker.moogmas) + "\n" +
EnumChatFormatting.RED + nf.format(FishingTracker.lavaLeeches) + "\n" +
@@ -907,6 +917,7 @@ public class LootDisplay {
EnumChatFormatting.AQUA + "Fishing Milestone:\n" +
EnumChatFormatting.GOLD + "Good Catches:\n" +
EnumChatFormatting.DARK_PURPLE + "Great Catches:\n" +
+ EnumChatFormatting.BLUE + "Plhlegblasts:\n" +
EnumChatFormatting.DARK_RED + "Magma Slugs:\n" +
EnumChatFormatting.RED + "Moogmas:\n" +
EnumChatFormatting.RED + "Lava Leeches:\n" +
@@ -922,6 +933,7 @@ public class LootDisplay {
EnumChatFormatting.AQUA + nf.format(FishingTracker.fishingMilestoneSession) + "\n" +
EnumChatFormatting.GOLD + nf.format(FishingTracker.goodCatchesSession) + "\n" +
EnumChatFormatting.DARK_PURPLE + nf.format(FishingTracker.greatCatchesSession) + "\n" +
+ EnumChatFormatting.BLUE + nf.format(FishingTracker.plhlegblastsSession) + "\n" +
EnumChatFormatting.DARK_RED + nf.format(FishingTracker.magmaSlugsSession) + "\n" +
EnumChatFormatting.RED + nf.format(FishingTracker.moogmasSession) + "\n" +
EnumChatFormatting.RED + nf.format(FishingTracker.lavaLeechesSession) + "\n" +
diff --git a/src/main/java/me/Danker/features/loot/LootTracker.java b/src/main/java/me/Danker/features/loot/LootTracker.java
index 27f0779..7fa223d 100644
--- a/src/main/java/me/Danker/features/loot/LootTracker.java
+++ b/src/main/java/me/Danker/features/loot/LootTracker.java
@@ -8,10 +8,13 @@ import net.minecraftforge.fml.common.eventhandler.EventPriority;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
public class LootTracker {
public static long itemsChecked = 0;
+ static Pattern dropPattern = Pattern.compile(".*? \\((?<amount>\\d+)x .*\\).*");
@SubscribeEvent(priority = EventPriority.HIGHEST)
public void onSound(PlaySoundEvent event) {
@@ -36,21 +39,21 @@ public class LootTracker {
// If no items, are detected, allow check again. Should fix items not being found
if (itemTeeth + itemWebs + itemRev + itemNullSphere + itemDerelictAshe > 0) {
itemsChecked = System.currentTimeMillis() / 1000;
- WolfTracker.wolfTeeth += itemTeeth;
- SpiderTracker.spiderWebs += itemWebs;
- ZombieTracker.zombieRevFlesh += itemRev;
- EndermanTracker.endermanNullSpheres += itemNullSphere;
+ WolfTracker.teeth += itemTeeth;
+ SpiderTracker.webs += itemWebs;
+ ZombieTracker.revFlesh += itemRev;
+ EndermanTracker.nullSpheres += itemNullSphere;
BlazeTracker.derelictAshes += itemDerelictAshe;
- WolfTracker.wolfTeethSession += itemTeeth;
- SpiderTracker.spiderWebsSession += itemWebs;
- ZombieTracker.zombieRevFleshSession += itemRev;
- EndermanTracker.endermanNullSpheresSession += itemNullSphere;
+ WolfTracker.teethSession += itemTeeth;
+ SpiderTracker.websSession += itemWebs;
+ ZombieTracker.revFleshSession += itemRev;
+ EndermanTracker.nullSpheresSession += itemNullSphere;
BlazeTracker.derelictAshesSession += itemDerelictAshe;
- ConfigHandler.writeIntConfig("wolf", "teeth", WolfTracker.wolfTeeth);
- ConfigHandler.writeIntConfig("spider", "web", SpiderTracker.spiderWebs);
- ConfigHandler.writeIntConfig("zombie", "revFlesh", ZombieTracker.zombieRevFlesh);
- ConfigHandler.writeIntConfig("enderman", "nullSpheres", EndermanTracker.endermanNullSpheres);
+ ConfigHandler.writeIntConfig("wolf", "teeth", WolfTracker.teeth);
+ ConfigHandler.writeIntConfig("spider", "web", SpiderTracker.webs);
+ ConfigHandler.writeIntConfig("zombie", "revFlesh", ZombieTracker.revFlesh);
+ ConfigHandler.writeIntConfig("enderman", "nullSpheres", EndermanTracker.nullSpheres);
ConfigHandler.writeIntConfig("blaze", "derelictAshe", BlazeTracker.derelictAshes);
}
}
@@ -59,11 +62,11 @@ public class LootTracker {
}
public static int getAmountfromMessage(String message) {
- if (message.charAt(message.indexOf("(") + 2) == 'x' || message.charAt(message.indexOf("(") + 3) == 'x') {
- return Integer.parseInt(message.substring(message.indexOf("(") + 1, message.indexOf("x")));
- } else {
- return 1;
+ Matcher matcher = dropPattern.matcher(message);
+ if (matcher.find()) {
+ return Integer.parseInt(matcher.group("amount"));
}
+ return 1;
}
}
diff --git a/src/main/java/me/Danker/features/loot/SpiderTracker.java b/src/main/java/me/Danker/features/loot/SpiderTracker.java
index 34ee695..05a8e75 100644
--- a/src/main/java/me/Danker/features/loot/SpiderTracker.java
+++ b/src/main/java/me/Danker/features/loot/SpiderTracker.java
@@ -10,31 +10,31 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
public class SpiderTracker {
- public static int spiderTarantulas;
- public static int spiderWebs;
- public static int spiderTAP;
- public static int spiderTAPDrops;
- public static int spiderBites;
- public static int spiderCatalysts;
- public static int spiderBooks;
- public static int spiderSwatters;
- public static int spiderTalismans;
- public static int spiderMosquitos;
- public static double spiderTime;
- public static int spiderBosses;
+ public static int tarantulas;
+ public static int webs;
+ public static int TAP;
+ public static int TAPDrops;
+ public static int bites;
+ public static int catalysts;
+ public static int books;
+ public static int swatters;
+ public static int talismans;
+ public static int mosquitos;
+ public static double time;
+ public static int bosses;
- public static int spiderTarantulasSession = 0;
- public static int spiderWebsSession = 0;
- public static int spiderTAPSession = 0;
- public static int spiderTAPDropsSession = 0;
- public static int spiderBitesSession = 0;
- public static int spiderCatalystsSession = 0;
- public static int spiderBooksSession = 0;
- public static int spiderSwattersSession = 0;
- public static int spiderTalismansSession = 0;
- public static int spiderMosquitosSession = 0;
- public static double spiderTimeSession = -1;
- public static int spiderBossesSession = -1;
+ public static int tarantulasSession = 0;
+ public static int websSession = 0;
+ public static int TAPSession = 0;
+ public static int TAPDropsSession = 0;
+ public static int bitesSession = 0;
+ public static int catalystsSession = 0;
+ public static int booksSession = 0;
+ public static int swattersSession = 0;
+ public static int talismansSession = 0;
+ public static int mosquitosSession = 0;
+ public static double timeSession = -1;
+ public static int bossesSession = -1;
@SubscribeEvent
public void onChat(ClientChatReceivedEvent event) {
@@ -47,62 +47,62 @@ public class SpiderTracker {
boolean rng = false;
if (message.contains(" Spider Slayer LVL ")) { // Spider
- spiderTarantulas++;
- spiderTarantulasSession++;
- if (spiderBosses != -1) {
- spiderBosses++;
+ tarantulas++;
+ tarantulasSession++;
+ if (bosses != -1) {
+ bosses++;
}
- if (spiderBossesSession != -1) {
- spiderBossesSession++;
+ if (bossesSession != -1) {
+ bossesSession++;
}
- ConfigHandler.writeIntConfig("spider", "tarantulas", spiderTarantulas);
- ConfigHandler.writeIntConfig("spider", "bossRNG", spiderBosses);
+ ConfigHandler.writeIntConfig("spider", "tarantulas", tarantulas);
+ ConfigHandler.writeIntConfig("spider", "bossRNG", bosses);
} else if (message.contains("RARE DROP! (") && message.contains("Toxic Arrow Poison)")) {
int amount = LootTracker.getAmountfromMessage(message);
- spiderTAP += amount;
- spiderTAPSession += amount;
- spiderTAPDrops++;
- spiderTAPDropsSession++;
- ConfigHandler.writeIntConfig("spider", "tap", spiderTAP);
- ConfigHandler.writeIntConfig("spider", "tapDrops", spiderTAPDrops);
+ TAP += amount;
+ TAPSession += amount;
+ TAPDrops++;
+ TAPDropsSession++;
+ ConfigHandler.writeIntConfig("spider", "tap", TAP);
+ ConfigHandler.writeIntConfig("spider", "tapDrops", TAPDrops);
} else if (message.contains("VERY RARE DROP! (") && message.contains(" Bite Rune I)")) {
- spiderBites++;
- spiderBitesSession++;
- ConfigHandler.writeIntConfig("spider", "bite", spiderBites);
+ bites++;
+ bitesSession++;
+ ConfigHandler.writeIntConfig("spider", "bite", bites);
} else if (message.contains("VERY RARE DROP! (Bane of Arthropods VI)")) {
- spiderBooks++;
- spiderBooksSession++;
- ConfigHandler.writeIntConfig("spider", "book", spiderBooks);
+ books++;
+ booksSession++;
+ ConfigHandler.writeIntConfig("spider", "book", books);
} else if (message.contains("VERY RARE DROP! (Spider Catalyst)")) {
- spiderCatalysts++;
- spiderCatalystsSession++;
- ConfigHandler.writeIntConfig("spider", "catalyst", spiderCatalysts);
+ catalysts++;
+ catalystsSession++;
+ ConfigHandler.writeIntConfig("spider", "catalyst", catalysts);
} else if (message.contains("CRAZY RARE DROP! (Fly Swatter)")) {
rng = true;
- spiderSwatters++;
- spiderSwattersSession++;
- ConfigHandler.writeIntConfig("spider", "swatter", spiderSwatters);
+ swatters++;
+ swattersSession++;
+ ConfigHandler.writeIntConfig("spider", "swatter", swatters);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.LIGHT_PURPLE + "FLY SWATTER!", 3);
} else if (message.contains("CRAZY RARE DROP! (Tarantula Talisman")) {
rng = true;
- spiderTalismans++;
- spiderTalismansSession++;
- ConfigHandler.writeIntConfig("spider", "talisman", spiderTalismans);
+ talismans++;
+ talismansSession++;
+ ConfigHandler.writeIntConfig("spider", "talisman", talismans);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "TARANTULA TALISMAN!", 3);
} else if (message.contains("CRAZY RARE DROP! (Digested Mosquito)")) {
rng = true;
- spiderMosquitos++;
- spiderMosquitosSession++;
- ConfigHandler.writeIntConfig("spider", "mosquito", spiderMosquitos);
+ mosquitos++;
+ mosquitosSession++;
+ ConfigHandler.writeIntConfig("spider", "mosquito", mosquitos);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "DIGESTED MOSQUITO!", 5);
}
if (rng) {
- spiderTime = System.currentTimeMillis() / 1000;
- spiderBosses = 0;
- spiderTimeSession = System.currentTimeMillis() / 1000;
- spiderBossesSession = 0;
- ConfigHandler.writeDoubleConfig("spider", "timeRNG", spiderTime);
+ time = System.currentTimeMillis() / 1000;
+ bosses = 0;
+ timeSession = System.currentTimeMillis() / 1000;
+ bossesSession = 0;
+ ConfigHandler.writeDoubleConfig("spider", "timeRNG", time);
ConfigHandler.writeIntConfig("spider", "bossRNG", 0);
}
}
diff --git a/src/main/java/me/Danker/features/loot/WolfTracker.java b/src/main/java/me/Danker/features/loot/WolfTracker.java
index 449a3b4..906f507 100644
--- a/src/main/java/me/Danker/features/loot/WolfTracker.java
+++ b/src/main/java/me/Danker/features/loot/WolfTracker.java
@@ -10,31 +10,33 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
public class WolfTracker {
- public static int wolfSvens;
- public static int wolfTeeth;
- public static int wolfWheels;
- public static int wolfWheelsDrops;
- public static int wolfSpirits;
- public static int wolfBooks;
- public static int wolfEggs;
- public static int wolfCoutures;
- public static int wolfBaits;
- public static int wolfFluxes;
- public static double wolfTime;
- public static int wolfBosses;
+ public static int svens;
+ public static int teeth;
+ public static int wheels;
+ public static int wheelsDrops;
+ public static int spirits;
+ public static int books;
+ public static int furballs;
+ public static int eggs;
+ public static int coutures;
+ public static int baits;
+ public static int fluxes;
+ public static double time;
+ public static int bosses;
- public static int wolfSvensSession = 0;
- public static int wolfTeethSession = 0;
- public static int wolfWheelsSession = 0;
- public static int wolfWheelsDropsSession = 0;
- public static int wolfSpiritsSession = 0;
- public static int wolfBooksSession = 0;
- public static int wolfEggsSession = 0;
- public static int wolfCouturesSession = 0;
- public static int wolfBaitsSession = 0;
- public static int wolfFluxesSession = 0;
- public static double wolfTimeSession = -1;
- public static int wolfBossesSession = -1;
+ public static int svensSession = 0;
+ public static int teethSession = 0;
+ public static int wheelsSession = 0;
+ public static int wheelsDropsSession = 0;
+ public static int spiritsSession = 0;
+ public static int booksSession = 0;
+ public static int furballsSession = 0;
+ public static int eggsSession = 0;
+ public static int couturesSession = 0;
+ public static int baitsSession = 0;
+ public static int fluxesSession = 0;
+ public static double timeSession = -1;
+ public static int bossesSession = -1;
@SubscribeEvent
public void onChat(ClientChatReceivedEvent event) {
@@ -47,64 +49,68 @@ public class WolfTracker {
boolean rng = false;
if (message.contains(" Wolf Slayer LVL ")) {
- wolfSvens++;
- wolfSvensSession++;
- if (wolfBosses != -1) {
- wolfBosses++;
+ svens++;
+ svensSession++;
+ if (bosses != -1) {
+ bosses++;
}
- if (wolfBossesSession != -1) {
- wolfBossesSession++;
+ if (bossesSession != -1) {
+ bossesSession++;
}
- ConfigHandler.writeIntConfig("wolf", "svens", wolfSvens);
- ConfigHandler.writeIntConfig("wolf", "bossRNG", wolfBosses);
+ ConfigHandler.writeIntConfig("wolf", "svens", svens);
+ ConfigHandler.writeIntConfig("wolf", "bossRNG", bosses);
} else if (message.contains("RARE DROP! (") && message.contains("Hamster Wheel)")) {
int amount = LootTracker.getAmountfromMessage(message);
- wolfWheels += amount;
- wolfWheelsSession += amount;
- wolfWheelsDrops++;
- wolfWheelsDropsSession++;
- ConfigHandler.writeIntConfig("wolf", "wheel", wolfWheels);
- ConfigHandler.writeIntConfig("wolf", "wheelDrops", wolfWheelsDrops);
+ wheels += amount;
+ wheelsSession += amount;
+ wheelsDrops++;
+ wheelsDropsSession++;
+ ConfigHandler.writeIntConfig("wolf", "wheel", wheels);
+ ConfigHandler.writeIntConfig("wolf", "wheelDrops", wheelsDrops);
} else if (message.contains("VERY RARE DROP! (") && message.contains(" Spirit Rune I)")) { // Removing the unicode here *should* fix rune drops not counting
- wolfSpirits++;
- wolfSpiritsSession++;
- ConfigHandler.writeIntConfig("wolf", "spirit", wolfSpirits);
+ spirits++;
+ spiritsSession++;
+ ConfigHandler.writeIntConfig("wolf", "spirit", spirits);
} else if (message.contains("VERY RARE DROP! (Critical VI)")) {
- wolfBooks++;
- wolfBooksSession++;
- ConfigHandler.writeIntConfig("wolf", "book", wolfBooks);
+ books++;
+ booksSession++;
+ ConfigHandler.writeIntConfig("wolf", "book", books);
+ } else if (message.contains("VERY RARE DROP! (Furball)")) {
+ furballs++;
+ furballsSession++;
+ ConfigHandler.writeIntConfig("wolf", "furball", furballs);
} else if (message.contains("CRAZY RARE DROP! (Red Claw Egg)")) {
rng = true;
- wolfEggs++;
- wolfEggsSession++;
- ConfigHandler.writeIntConfig("wolf", "egg", wolfEggs);
+ eggs++;
+ eggsSession++;
+ ConfigHandler.writeIntConfig("wolf", "egg", eggs);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_RED + "RED CLAW EGG!", 3);
} else if (message.contains("CRAZY RARE DROP! (") && message.contains(" Couture Rune I)")) {
rng = true;
- wolfCoutures++;
- wolfCouturesSession++;
- ConfigHandler.writeIntConfig("wolf", "couture", wolfCoutures);
+ coutures++;
+ couturesSession++;
+ ConfigHandler.writeIntConfig("wolf", "couture", coutures);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "COUTURE RUNE!", 3);
} else if (message.contains("CRAZY RARE DROP! (Grizzly Bait)") || message.contains("CRAZY RARE DROP! (Rename Me)")) { // How did Skyblock devs even manage to make this item Rename Me
rng = true;
- wolfBaits++;
- wolfBaitsSession++;
- ConfigHandler.writeIntConfig("wolf", "bait", wolfBaits);
+ baits++;
+ baitsSession++;
+ ConfigHandler.writeIntConfig("wolf", "bait", baits);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.AQUA + "GRIZZLY BAIT!", 3);
} else if (message.contains("CRAZY RARE DROP! (Overflux Capacitor)")) {
rng = true;
- wolfFluxes++;
- wolfFluxesSession++;
- ConfigHandler.writeIntConfig("wolf", "flux", wolfFluxes);
+ fluxes++;
+ fluxesSession++;
+ ConfigHandler.writeIntConfig("wolf", "flux", fluxes);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "OVERFLUX CAPACITOR!", 5);
}
if (rng) {
- wolfTime = System.currentTimeMillis() / 1000;
- wolfBosses = 0;
- wolfTimeSession = System.currentTimeMillis() / 1000;
- wolfBossesSession = 0;
- ConfigHandler.writeDoubleConfig("wolf", "timeRNG", wolfTime);
+ time = System.currentTimeMillis() / 1000;
+ bosses = 0;
+ timeSession = System.currentTimeMillis() / 1000;
+ bossesSession = 0;
+ ConfigHandler.writeDoubleConfig("wolf", "timeRNG", time);
ConfigHandler.writeIntConfig("wolf", "bossRNG", 0);
}
}
diff --git a/src/main/java/me/Danker/features/loot/ZombieTracker.java b/src/main/java/me/Danker/features/loot/ZombieTracker.java
index 1d71222..922e1f4 100644
--- a/src/main/java/me/Danker/features/loot/ZombieTracker.java
+++ b/src/main/java/me/Danker/features/loot/ZombieTracker.java
@@ -10,41 +10,41 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
public class ZombieTracker {
- public static int zombieRevs;
- public static int zombieRevFlesh;
- public static int zombieRevViscera;
- public static int zombieFoulFlesh;
- public static int zombieFoulFleshDrops;
- public static int zombiePestilences;
- public static int zombieUndeadCatas;
- public static int zombieBooks;
- public static int zombieBooksT7;
- public static int zombieBeheadeds;
- public static int zombieRevCatas;
- public static int zombieSnakes;
- public static int zombieScythes;
- public static int zombieShards;
- public static int zombieWardenHearts;
- public static double zombieTime;
- public static int zombieBosses;
+ public static int revs;
+ public static int revFlesh;
+ public static int revViscera;
+ public static int foulFlesh;
+ public static int foulFleshDrops;
+ public static int pestilences;
+ public static int undeadCatas;
+ public static int books;
+ public static int booksT7;
+ public static int beheadeds;
+ public static int revCatas;
+ public static int snakes;
+ public static int scythes;
+ public static int shards;
+ public static int wardenHearts;
+ public static double time;
+ public static int bosses;
- public static int zombieRevsSession = 0;
- public static int zombieRevFleshSession = 0;
- public static int zombieRevVisceraSession = 0;
- public static int zombieFoulFleshSession = 0;
- public static int zombieFoulFleshDropsSession = 0;
- public static int zombiePestilencesSession = 0;
- public static int zombieUndeadCatasSession = 0;
- public static int zombieBooksSession = 0;
- public static int zombieBooksT7Session = 0;
- public static int zombieBeheadedsSession = 0;
- public static int zombieRevCatasSession = 0;
- public static int zombieSnakesSession = 0;
- public static int zombieScythesSession = 0;
- public static int zombieShardsSession = 0;
- public static int zombieWardenHeartsSession = 0;
- public static double zombieTimeSession = -1;
- public static int zombieBossesSession = -1;
+ public static int revsSession = 0;
+ public static int revFleshSession = 0;
+ public static int revVisceraSession = 0;
+ public static int foulFleshSession = 0;
+ public static int foulFleshDropsSession = 0;
+ public static int pestilencesSession = 0;
+ public static int undeadCatasSession = 0;
+ public static int booksSession = 0;
+ public static int booksT7Session = 0;
+ public static int beheadedsSession = 0;
+ public static int revCatasSession = 0;
+ public static int snakesSession = 0;
+ public static int scythesSession = 0;
+ public static int shardsSession = 0;
+ public static int wardenHeartsSession = 0;
+ public static double timeSession = -1;
+ public static int bossesSession = -1;
@SubscribeEvent
public void onChat(ClientChatReceivedEvent event) {
@@ -57,87 +57,87 @@ public class ZombieTracker {
boolean rng = false;
if (message.contains(" Zombie Slayer LVL ")) { // Zombie
- zombieRevs++;
- zombieRevsSession++;
- if (zombieBosses != -1) {
- zombieBosses++;
+ revs++;
+ revsSession++;
+ if (bosses != -1) {
+ bosses++;
}
- if (zombieBossesSession != 1) {
- zombieBossesSession++;
+ if (bossesSession != 1) {
+ bossesSession++;
}
- ConfigHandler.writeIntConfig("zombie", "revs", zombieRevs);
- ConfigHandler.writeIntConfig("zombie", "bossRNG", zombieBosses);
+ ConfigHandler.writeIntConfig("zombie", "revs", revs);
+ ConfigHandler.writeIntConfig("zombie", "bossRNG", bosses);
} else if (message.contains("RARE DROP! (") && message.contains("Revenant Viscera)")) {
int amount = LootTracker.getAmountfromMessage(message);
- zombieRevViscera += amount;
- zombieRevVisceraSession += amount;
- ConfigHandler.writeIntConfig("zombie", "revViscera", zombieRevViscera);
+ revViscera += amount;
+ revVisceraSession += amount;
+ ConfigHandler.writeIntConfig("zombie", "revViscera", revViscera);
} else if (message.contains("RARE DROP! (") && message.contains("Foul Flesh)")) {
int amount = LootTracker.getAmountfromMessage(message);
- zombieFoulFlesh += amount;
- zombieFoulFleshSession += amount;
- zombieFoulFleshDrops++;
- zombieFoulFleshDropsSession++;
- ConfigHandler.writeIntConfig("zombie", "foulFlesh", zombieFoulFlesh);
- ConfigHandler.writeIntConfig("zombie", "foulFleshDrops", zombieFoulFleshDrops);
+ foulFlesh += amount;
+ foulFleshSession += amount;
+ foulFleshDrops++;
+ foulFleshDropsSession++;
+ ConfigHandler.writeIntConfig("zombie", "foulFlesh", foulFlesh);
+ ConfigHandler.writeIntConfig("zombie", "foulFleshDrops", foulFleshDrops);
} else if (message.contains("VERY RARE DROP! (Revenant Catalyst)")) {
- zombieRevCatas++;
- zombieRevCatasSession++;
- ConfigHandler.writeIntConfig("zombie", "revCatalyst", zombieRevCatas);
+ revCatas++;
+ revCatasSession++;
+ ConfigHandler.writeIntConfig("zombie", "revCatalyst", revCatas);
} else if (message.contains("VERY RARE DROP! (") && message.contains(" Pestilence Rune I)")) {
- zombiePestilences++;
- zombiePestilencesSession++;
- ConfigHandler.writeIntConfig("zombie", "pestilence", zombiePestilences);
+ pestilences++;
+ pestilencesSession++;
+ ConfigHandler.writeIntConfig("zombie", "pestilence", pestilences);
} else if (message.contains("VERY RARE DROP! (Smite VI)")) {
- zombieBooks++;
- zombieBooksSession++;
- ConfigHandler.writeIntConfig("zombie", "book", zombieBooks);
+ books++;
+ booksSession++;
+ ConfigHandler.writeIntConfig("zombie", "book", books);
} else if (message.contains("VERY RARE DROP! (Smite VII)")) {
- zombieBooksT7++;
- zombieBooksT7Session++;
- ConfigHandler.writeIntConfig("zombie", "bookT7", zombieBooksT7);
+ booksT7++;
+ booksT7Session++;
+ ConfigHandler.writeIntConfig("zombie", "bookT7", booksT7);
} else if (message.contains("VERY RARE DROP! (Undead Catalyst)")) {
- zombieUndeadCatas++;
- zombieUndeadCatasSession++;
- ConfigHandler.writeIntConfig("zombie", "undeadCatalyst", zombieUndeadCatas);
+ undeadCatas++;
+ undeadCatasSession++;
+ ConfigHandler.writeIntConfig("zombie", "undeadCatalyst", undeadCatas);
} else if (message.contains("CRAZY RARE DROP! (Beheaded Horror)")) {
rng = true;
- zombieBeheadeds++;
- zombieBeheadedsSession++;
- ConfigHandler.writeIntConfig("zombie", "beheaded", zombieBeheadeds);
+ beheadeds++;
+ beheadedsSession++;
+ ConfigHandler.writeIntConfig("zombie", "beheaded", beheadeds);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_PURPLE + "BEHEADED HORROR!", 3);
} else if (message.contains("CRAZY RARE DROP! (") && message.contains(" Snake Rune I)")) {
rng = true;
- zombieSnakes++;
- zombieSnakesSession++;
- ConfigHandler.writeIntConfig("zombie", "snake", zombieSnakes);
+ snakes++;
+ snakesSession++;
+ ConfigHandler.writeIntConfig("zombie", "snake", snakes);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.DARK_GREEN + "SNAKE RUNE!", 3);
} else if (message.contains("CRAZY RARE DROP! (Scythe Blade)")) {
rng = true;
- zombieScythes++;
- zombieScythesSession++;
- ConfigHandler.writeIntConfig("zombie", "scythe", zombieScythes);
+ scythes++;
+ scythesSession++;
+ ConfigHandler.writeIntConfig("zombie", "scythe", scythes);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.GOLD + "SCYTHE BLADE!", 5);
} else if (message.contains("CRAZY RARE DROP! (Shard of the Shredded)")) {
rng = true;
- zombieShards++;
- zombieShardsSession++;
- ConfigHandler.writeIntConfig("zombie", "shard", zombieShards);
+ shards++;
+ shardsSession++;
+ ConfigHandler.writeIntConfig("zombie", "shard", shards);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "SHARD OF THE SHREDDED!", 5);
} else if (message.contains("INSANE DROP! (Warden Heart)") || message.contains("CRAZY RARE DROP! (Warden Heart)")) {
rng = true;
- zombieWardenHearts++;
- zombieWardenHeartsSession++;
- ConfigHandler.writeIntConfig("zombie", "heart", zombieWardenHearts);
+ wardenHearts++;
+ wardenHeartsSession++;
+ ConfigHandler.writeIntConfig("zombie", "heart", wardenHearts);
if (ToggleCommand.rngesusAlerts) Utils.createTitle(EnumChatFormatting.RED + "WARDEN HEART!", 5);
}
if (rng) {
- zombieTime = System.currentTimeMillis() / 1000;
- zombieBosses = 0;
- zombieTimeSession = System.currentTimeMillis() / 1000;
- zombieBossesSession = 0;
- ConfigHandler.writeDoubleConfig("zombie", "timeRNG", zombieTime);
+ time = System.currentTimeMillis() / 1000;
+ bosses = 0;
+ timeSession = System.currentTimeMillis() / 1000;
+ bossesSession = 0;
+ ConfigHandler.writeDoubleConfig("zombie", "timeRNG", time);
ConfigHandler.writeIntConfig("zombie", "bossRNG", 0);
}
}
diff --git a/src/main/java/me/Danker/gui/DankerGui.java b/src/main/java/me/Danker/gui/DankerGui.java
index 95c0629..f4319a8 100644
--- a/src/main/java/me/Danker/gui/DankerGui.java
+++ b/src/main/java/me/Danker/gui/DankerGui.java
@@ -2,6 +2,7 @@ package me.Danker.gui;
import me.Danker.commands.ToggleCommand;
import me.Danker.gui.alerts.AlertsGui;
+import me.Danker.gui.aliases.AliasesGui;
import me.Danker.gui.buttons.FeatureButton;
import me.Danker.gui.crystalhollowwaypoints.CrystalHollowWaypointsGui;
import me.Danker.handlers.ConfigHandler;
@@ -46,6 +47,7 @@ public class DankerGui extends GuiScreen {
private GuiButton customMusic;
private GuiButton crystalHollowWaypoints;
private GuiButton alerts;
+ private GuiButton aliases;
// Toggles
private GuiButton gparty;
private GuiButton coords;
@@ -89,6 +91,7 @@ public class DankerGui extends GuiScreen {
private GuiButton dungeonScore;
private GuiButton hideArmour;
private GuiButton autoJoinSkyblock;
+ private GuiButton firePillar;
// Chat Messages
private GuiButton sceptreMessages;
private GuiButton midasStaffMessages;
@@ -133,6 +136,7 @@ public class DankerGui extends GuiScreen {
customMusic = new GuiButton(0, 0, 0, "Custom Music");
crystalHollowWaypoints = new GuiButton(0, 0, 0, "Crystal Hollows Waypoints");
alerts = new GuiButton(0, 0, 0, "Alerts");
+ aliases = new GuiButton(0, 0, 0, "Aliases");
outlineText = new FeatureButton("Outline Displayed Text: " + Utils.getColouredBoolean(ToggleCommand.outlineTextToggled), "Adds bold outline to on-screen text.");
pickBlock = new FeatureButton("Auto-Swap to Pick Block: " + Utils.getColouredBoolean(ToggleCommand.swapToPickBlockToggled), "Automatically changes left clicks to middle clicks.\nHelpful when lagging.");
coords = new FeatureButton("Coordinate/Angle Display: " + Utils.getColouredBoolean(ToggleCommand.coordsToggled), "Displays coordinates and angle.");
@@ -182,6 +186,7 @@ public class DankerGui extends GuiScreen {
dungeonScore = new FeatureButton("Dungeon Score Display: " + Utils.getColouredBoolean(ToggleCommand.dungeonScore), "Displays an estimated dungeon score with secrets.");
hideArmour = new FeatureButton("Hide Player Armour: " + Utils.getColouredBoolean(ToggleCommand.hideArmour), "Makes player armour invisible, showing their skin.");
autoJoinSkyblock = new FeatureButton("Automatically Join Skyblock: " + Utils.getColouredBoolean(ToggleCommand.autoJoinSkyblock), "Automatically join Skyblock when you join Hypixel.\nYou have an addiction.");
+ firePillar = new FeatureButton("Fire Pillar Display: " + Utils.getColouredBoolean(ToggleCommand.firePillar), "Displays blaze fire pillar text on screen");
allButtons.clear();
allButtons.add(changeDisplay);
@@ -192,6 +197,7 @@ public class DankerGui extends GuiScreen {
allButtons.add(customMusic);
allButtons.add(crystalHollowWaypoints);
allButtons.add(alerts);
+ allButtons.add(aliases);
allButtons.add(outlineText);
allButtons.add(pickBlock);
allButtons.add(coords);
@@ -241,6 +247,7 @@ public class DankerGui extends GuiScreen {
allButtons.add(dungeonScore);
allButtons.add(hideArmour);
allButtons.add(autoJoinSkyblock);
+ allButtons.add(firePillar);
search.setText(initSearchText);
search.setVisible(true);
@@ -336,6 +343,8 @@ public class DankerGui extends GuiScreen {
mc.displayGuiScreen(new CrystalHollowWaypointsGui(1));
} else if (button == alerts) {
mc.displayGuiScreen(new AlertsGui(1));
+ } else if (button == aliases) {
+ mc.displayGuiScreen(new AliasesGui(1));
} else if (button == outlineText) {
ToggleCommand.outlineTextToggled = !ToggleCommand.outlineTextToggled;
ConfigHandler.writeBooleanConfig("toggles", "OutlineText", ToggleCommand.outlineTextToggled);
@@ -532,6 +541,10 @@ public class DankerGui extends GuiScreen {
ToggleCommand.autoJoinSkyblock = !ToggleCommand.autoJoinSkyblock;
ConfigHandler.writeBooleanConfig("toggles", "AutoJoinSkyblock", ToggleCommand.autoJoinSkyblock);
autoJoinSkyblock.displayString = "Automatically Join Skyblock: " + Utils.getColouredBoolean(ToggleCommand.autoJoinSkyblock);
+ } else if (button == firePillar) {
+ ToggleCommand.firePillar = !ToggleCommand.firePillar;
+ ConfigHandler.writeBooleanConfig("toggles", "FirePillar", ToggleCommand.firePillar);
+ firePillar.displayString = "Fire Pillar Display: " + Utils.getColouredBoolean(ToggleCommand.firePillar);
}
}
diff --git a/src/main/java/me/Danker/gui/EditLocationsGui.java b/src/main/java/me/Danker/gui/EditLocationsGui.java
index b7f4b02..24f0908 100644
--- a/src/main/java/me/Danker/gui/EditLocationsGui.java
+++ b/src/main/java/me/Danker/gui/EditLocationsGui.java
@@ -33,6 +33,7 @@ public class EditLocationsGui extends GuiScreen {
private LocationButton giantHP;
private LocationButton abilityCooldown;
private LocationButton dungeonScore;
+ private LocationButton firePillar;
@Override
public boolean doesGuiPauseGame() {
@@ -120,18 +121,19 @@ public class EditLocationsGui extends GuiScreen {
display = new LocationButton(MoveCommand.displayXY[0], MoveCommand.displayXY[1], ScaleCommand.displayScale, displayText, displayNums, 110);
dungeonTimer = new LocationButton(MoveCommand.dungeonTimerXY[0], MoveCommand.dungeonTimerXY[1], ScaleCommand.dungeonTimerScale, dungeonTimerText, dungeonTimerNums, 80);
- coords = new LocationButton(MoveCommand.coordsXY[0], MoveCommand.coordsXY[1], ScaleCommand.coordsScale, NoF3Coords.COORDS_COLOUR + "74 / 14 / -26 (141.1 / 6.7)", null, null);
- skill50 = new LocationButton(MoveCommand.skill50XY[0], MoveCommand.skill50XY[1], ScaleCommand.skill50Scale, Skill50Display.SKILL_50_COLOUR + "+3.5 Farming (28,882,117.7/55,172,425) 52.34%", null, null);
- lividHP = new LocationButton(MoveCommand.lividHpXY[0], MoveCommand.lividHpXY[1], ScaleCommand.lividHpScale, EnumChatFormatting.WHITE + "﴾ Livid " + EnumChatFormatting.YELLOW + "6.9M" + EnumChatFormatting.RED + "❤ " + EnumChatFormatting.WHITE + "﴿", null, null);
- cakeTimer = new LocationButton(MoveCommand.cakeTimerXY[0], MoveCommand.cakeTimerXY[1] + 5, ScaleCommand.cakeTimerScale, CakeTimer.CAKE_COLOUR + " 11h16m", null, null);
- skillTracker = new LocationButton(MoveCommand.skillTrackerXY[0], MoveCommand.skillTrackerXY[1], ScaleCommand.skillTrackerScale, skillTrackerText, null, null);
- waterAnswer = new LocationButton(MoveCommand.waterAnswerXY[0], MoveCommand.waterAnswerXY[1], ScaleCommand.waterAnswerScale, waterAnswerText, null, null);
- bonzoTimer = new LocationButton(MoveCommand.bonzoTimerXY[0], MoveCommand.bonzoTimerXY[1] + 5, ScaleCommand.bonzoTimerScale, BonzoMaskTimer.BONZO_COLOR + " 3m30s", null, null);
- golemTimer = new LocationButton(MoveCommand.golemTimerXY[0], MoveCommand.golemTimerXY[1] + 5, ScaleCommand.golemTimerScale, GolemSpawningAlert.GOLEM_COLOUR + " 20s", null, null);
- teammatesInRadius = new LocationButton(MoveCommand.teammatesInRadiusXY[0], MoveCommand.teammatesInRadiusXY[1], ScaleCommand.teammatesInRadiusScale, teammatesInRadiusText, null, null);
- giantHP = new LocationButton(MoveCommand.giantHPXY[0], MoveCommand.giantHPXY[1], ScaleCommand.giantHPScale, giantHPText, null, null);
- abilityCooldown = new LocationButton(MoveCommand.abilityCooldownsXY[0], MoveCommand.abilityCooldownsXY[1], ScaleCommand.abilityCooldownsScale, abilityCooldownText, null, null);
+ coords = new LocationButton(MoveCommand.coordsXY[0], MoveCommand.coordsXY[1], ScaleCommand.coordsScale, NoF3Coords.COORDS_COLOUR + "74 / 14 / -26 (141.1 / 6.7)");
+ skill50 = new LocationButton(MoveCommand.skill50XY[0], MoveCommand.skill50XY[1], ScaleCommand.skill50Scale, Skill50Display.SKILL_50_COLOUR + "+3.5 Farming (28,882,117.7/55,172,425) 52.34%");
+ lividHP = new LocationButton(MoveCommand.lividHpXY[0], MoveCommand.lividHpXY[1], ScaleCommand.lividHpScale, EnumChatFormatting.WHITE + "﴾ Livid " + EnumChatFormatting.YELLOW + "6.9M" + EnumChatFormatting.RED + "❤ " + EnumChatFormatting.WHITE + "﴿");
+ cakeTimer = new LocationButton(MoveCommand.cakeTimerXY[0], MoveCommand.cakeTimerXY[1] + 5, ScaleCommand.cakeTimerScale, CakeTimer.CAKE_COLOUR + " 11h16m");
+ skillTracker = new LocationButton(MoveCommand.skillTrackerXY[0], MoveCommand.skillTrackerXY[1], ScaleCommand.skillTrackerScale, skillTrackerText);
+ waterAnswer = new LocationButton(MoveCommand.waterAnswerXY[0], MoveCommand.waterAnswerXY[1], ScaleCommand.waterAnswerScale, waterAnswerText);
+ bonzoTimer = new LocationButton(MoveCommand.bonzoTimerXY[0], MoveCommand.bonzoTimerXY[1] + 5, ScaleCommand.bonzoTimerScale, BonzoMaskTimer.BONZO_COLOR + " 3m30s");
+ golemTimer = new LocationButton(MoveCommand.golemTimerXY[0], MoveCommand.golemTimerXY[1] + 5, ScaleCommand.golemTimerScale, GolemSpawningAlert.GOLEM_COLOUR + " 20s");
+ teammatesInRadius = new LocationButton(MoveCommand.teammatesInRadiusXY[0], MoveCommand.teammatesInRadiusXY[1], ScaleCommand.teammatesInRadiusScale, teammatesInRadiusText);
+ giantHP = new LocationButton(MoveCommand.giantHPXY[0], MoveCommand.giantHPXY[1], ScaleCommand.giantHPScale, giantHPText);
+ abilityCooldown = new LocationButton(MoveCommand.abilityCooldownsXY[0], MoveCommand.abilityCooldownsXY[1], ScaleCommand.abilityCooldownsScale, abilityCooldownText);
dungeonScore = new LocationButton(MoveCommand.dungeonScoreXY[0], MoveCommand.dungeonScoreXY[1], ScaleCommand.dungeonScoreScale, dungeonScoreText, dungeonScoreNums, 80);
+ firePillar = new LocationButton(MoveCommand.firePillarXY[0], MoveCommand.firePillarXY[1], ScaleCommand.firePillarScale, EnumChatFormatting.GOLD + "3s " + EnumChatFormatting.RED + "8 hits");
this.buttonList.add(coords);
this.buttonList.add(dungeonTimer);
@@ -147,6 +149,7 @@ public class EditLocationsGui extends GuiScreen {
this.buttonList.add(giantHP);
this.buttonList.add(abilityCooldown);
this.buttonList.add(dungeonScore);
+ this.buttonList.add(firePillar);
}
@Override
@@ -267,6 +270,12 @@ public class EditLocationsGui extends GuiScreen {
MoveCommand.dungeonScoreXY[1] += yMoved;
dungeonScore.xPosition = MoveCommand.dungeonScoreXY[0];
dungeonScore.yPosition = MoveCommand.dungeonScoreXY[1];
+ break;
+ case "firePillar":
+ MoveCommand.firePillarXY[0] += xMoved;
+ MoveCommand.firePillarXY[1] += yMoved;
+ firePillar.xPosition = MoveCommand.firePillarXY[0];
+ firePillar.yPosition = MoveCommand.firePillarXY[1];
}
this.buttonList.clear();
initGui();
@@ -307,6 +316,8 @@ public class EditLocationsGui extends GuiScreen {
moving = "abilityCooldown";
} else if (button == dungeonScore) {
moving = "dungeonScore";
+ } else if (button == firePillar) {
+ moving = "firePillar";
}
}
}
@@ -343,6 +354,8 @@ public class EditLocationsGui extends GuiScreen {
ConfigHandler.writeIntConfig("locations", "abilityCooldownsY", MoveCommand.abilityCooldownsXY[1]);
ConfigHandler.writeIntConfig("locations", "dungeonScoreX", MoveCommand.dungeonScoreXY[0]);
ConfigHandler.writeIntConfig("locations", "dungeonScoreY", MoveCommand.dungeonScoreXY[1]);
+ ConfigHandler.writeIntConfig("locations", "firePillarX", MoveCommand.firePillarXY[0]);
+ ConfigHandler.writeIntConfig("locations", "firePillarY", MoveCommand.firePillarXY[1]);
}
}
diff --git a/src/main/java/me/Danker/gui/alerts/AlertActionGui.java b/src/main/java/me/Danker/gui/alerts/AlertActionGui.java
index 7a73f5a..4853ac1 100644
--- a/src/main/java/me/Danker/gui/alerts/AlertActionGui.java
+++ b/src/main/java/me/Danker/gui/alerts/AlertActionGui.java
@@ -60,9 +60,6 @@ public class AlertActionGui extends GuiScreen {
Alerts.Alert alert = Alerts.alerts.get(id);
RenderUtils.drawCenteredText(alert.alert, width, 10, 1D);
- String alertText = alert.alert;
- int textWidth = mc.fontRendererObj.getStringWidth(alertText);
- new TextRenderer(mc, alertText, width / 2 - textWidth / 2, 10, 1D);
}
@Override
@@ -80,12 +77,12 @@ public class AlertActionGui extends GuiScreen {
mc.displayGuiScreen(new AlertAddGui(alert, id));
} else if (button == delete) {
Alerts.alerts.remove(id);
- Alerts.saveToFile();
+ Alerts.save();
mc.displayGuiScreen(new AlertsGui(1));
return;
}
Alerts.alerts.set(id, alert);
- Alerts.saveToFile();
+ Alerts.save();
}
}
diff --git a/src/main/java/me/Danker/gui/alerts/AlertAddGui.java b/src/main/java/me/Danker/gui/alerts/AlertAddGui.java
index 5f01d6d..304c77a 100644
--- a/src/main/java/me/Danker/gui/alerts/AlertAddGui.java
+++ b/src/main/java/me/Danker/gui/alerts/AlertAddGui.java
@@ -25,6 +25,7 @@ public class AlertAddGui extends GuiScreen {
private GuiButton startsWith;
private GuiButton contains;
private GuiButton endsWith;
+ private GuiButton regex;
private GuiButton everywhere;
private GuiButton skyblock;
private GuiButton dungeons;
@@ -57,9 +58,10 @@ public class AlertAddGui extends GuiScreen {
cancel = new GuiButton(0, 2, height - 30, 100, 20, "Cancel");
- startsWith = new GuiButton(0, width / 2 - 200, (int) (height * 0.2), 120, 20, "Starts With");
- contains = new GuiButton(0, width / 2 - 60, (int) (height * 0.2), 120, 20, "Contains");
- endsWith = new GuiButton(0, width / 2 + 80, (int) (height * 0.2), 120, 20, "Ends With");
+ startsWith = new GuiButton(0, width / 2 - 260, (int) (height * 0.2), 120, 20, "Starts With");
+ contains = new GuiButton(0, width / 2 - 130, (int) (height * 0.2), 120, 20, "Contains");
+ endsWith = new GuiButton(0, width / 2 + 10, (int) (height * 0.2), 120, 20, "Ends With");
+ regex = new GuiButton(0, width / 2 + 140, (int) (height * 0.2), 120, 20, "Regex");
everywhere = new GuiButton(0, width / 2 - 200, (int) (height * 0.3), 120, 20, "Everywhere");
skyblock = new GuiButton(0, width / 2 - 60, (int) (height * 0.3), 120, 20, "Skyblock");
dungeons = new GuiButton(0, width / 2 + 80, (int) (height * 0.3), 120, 20, "Dungeons");
@@ -80,13 +82,16 @@ public class AlertAddGui extends GuiScreen {
message.setVisible(true);
message.setEnabled(true);
+ message.setMaxStringLength(100);
alert.setVisible(true);
alert.setEnabled(true);
+ alert.setMaxStringLength(100);
this.buttonList.add(cancel);
this.buttonList.add(startsWith);
this.buttonList.add(contains);
this.buttonList.add(endsWith);
+ this.buttonList.add(regex);
this.buttonList.add(everywhere);
this.buttonList.add(skyblock);
this.buttonList.add(dungeons);
@@ -119,6 +124,8 @@ public class AlertAddGui extends GuiScreen {
mode = "Contains";
} else if (button == endsWith) {
mode = "Ends With";
+ } else if (button == regex) {
+ mode = "Regex";
} else if (button == everywhere) {
location = "Everywhere";
} else if (button == skyblock) {
@@ -132,7 +139,7 @@ public class AlertAddGui extends GuiScreen {
} else {
Alerts.alerts.add(newAlert);
}
- Alerts.saveToFile();
+ Alerts.save();
mc.displayGuiScreen(new AlertsGui(1));
}
}
diff --git a/src/main/java/me/Danker/gui/aliases/AliasesActionGui.java b/src/main/java/me/Danker/gui/aliases/AliasesActionGui.java
new file mode 100644
index 0000000..d2c7a6a
--- /dev/null
+++ b/src/main/java/me/Danker/gui/aliases/AliasesActionGui.java
@@ -0,0 +1,81 @@
+package me.Danker.gui.aliases;
+
+import me.Danker.features.ChatAliases;
+import me.Danker.utils.RenderUtils;
+import me.Danker.utils.Utils;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.GuiButton;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.client.gui.ScaledResolution;
+import net.minecraft.util.EnumChatFormatting;
+
+public class AliasesActionGui extends GuiScreen {
+
+ private final int id;
+
+ private GuiButton goBack;
+ private GuiButton toggle;
+ private GuiButton edit;
+ private GuiButton delete;
+
+ public AliasesActionGui(int id) {
+ this.id = id;
+ }
+
+ @Override
+ public boolean doesGuiPauseGame() {
+ return false;
+ }
+
+ @Override
+ public void initGui() {
+ super.initGui();
+
+ ScaledResolution sr = new ScaledResolution(Minecraft.getMinecraft());
+ int height = sr.getScaledHeight();
+ int width = sr.getScaledWidth();
+
+ ChatAliases.Alias alias = ChatAliases.aliases.get(id);
+
+ goBack = new GuiButton(0, 2, height - 30, 100, 20, "Go Back");
+ toggle = new GuiButton(0, width / 2 - 100, (int) (height * 0.1), "Enabled: " + Utils.getColouredBoolean(alias.toggled));
+ edit = new GuiButton(0, width / 2 - 100, (int) (height * 0.2), "Edit >");
+ delete = new GuiButton(0, width / 2 - 100, (int) (height * 0.8), EnumChatFormatting.RED + "Delete Alias");
+
+ this.buttonList.add(toggle);
+ this.buttonList.add(edit);
+ this.buttonList.add(delete);
+ this.buttonList.add(goBack);
+ }
+
+ @Override
+ public void drawScreen(int mouseX, int mouseY, float partialTicks) {
+ this.drawDefaultBackground();
+ super.drawScreen(mouseX, mouseY, partialTicks);
+
+ ChatAliases.Alias alias = ChatAliases.aliases.get(id);
+
+ RenderUtils.drawCenteredText(alias.text, width, 10, 1D);
+ }
+
+ @Override
+ public void actionPerformed(GuiButton button) {
+ ChatAliases.Alias alias = ChatAliases.aliases.get(id);
+ if (button == goBack) {
+ mc.displayGuiScreen(new AliasesGui(1));
+ } else if (button == toggle) {
+ alias.toggle();
+ toggle.displayString = "Enabled: " + Utils.getColouredBoolean(alias.toggled);
+ } else if (button == edit) {
+ mc.displayGuiScreen(new AliasesAddGui(alias, id));
+ } else if (button == delete) {
+ ChatAliases.aliases.remove(id);
+ ChatAliases.save();
+ mc.displayGuiScreen(new AliasesGui(1));
+ return;
+ }
+ ChatAliases.aliases.set(id, alias);
+ ChatAliases.save();
+ }
+
+}
diff --git a/src/main/java/me/Danker/gui/aliases/AliasesAddGui.java b/src/main/java/me/Danker/gui/aliases/AliasesAddGui.java
new file mode 100644
index 0000000..610354a
--- /dev/null
+++ b/src/main/java/me/Danker/gui/aliases/AliasesAddGui.java
@@ -0,0 +1,115 @@
+package me.Danker.gui.aliases;
+
+import me.Danker.features.ChatAliases;
+import me.Danker.handlers.TextRenderer;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.GuiButton;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.client.gui.GuiTextField;
+import net.minecraft.client.gui.ScaledResolution;
+import net.minecraftforge.fml.client.config.GuiCheckBox;
+
+import java.io.IOException;
+
+public class AliasesAddGui extends GuiScreen {
+
+ private boolean editing;
+ private ChatAliases.Alias base = null;
+ private int id;
+
+ private GuiButton cancel;
+
+ private GuiTextField text;
+ private GuiTextField alias;
+ private GuiCheckBox toggled;
+ private GuiButton add;
+
+ public AliasesAddGui() {}
+
+ public AliasesAddGui(ChatAliases.Alias alias, int id) {
+ editing = true;
+ base = alias;
+ this.id = id;
+ }
+
+ @Override
+ public boolean doesGuiPauseGame() {
+ return false;
+ }
+
+ @Override
+ public void initGui() {
+ super.initGui();
+
+ ScaledResolution sr = new ScaledResolution(Minecraft.getMinecraft());
+ int height = sr.getScaledHeight();
+ int width = sr.getScaledWidth();
+
+ cancel = new GuiButton(0, 2, height - 30, 100, 20, "Cancel");
+
+
+ text = new GuiTextField(0, this.fontRendererObj, width / 2 - 100, (int) (height * 0.2), 200, 20);
+ alias = new GuiTextField(0, this.fontRendererObj, width / 2 - 100, (int) (height * 0.3), 200, 20);
+ toggled = new GuiCheckBox(0, width / 2 - 26, (int) (height * 0.4), "Toggled", true);
+ add = new GuiButton(0, width / 2 - 25, (int) (height * 0.8), 50, 20, "Add");
+
+ if (editing) {
+ text.setText(base.text);
+ alias.setText(base.alias);
+ toggled.setIsChecked(base.toggled);
+ }
+
+ text.setVisible(true);
+ text.setEnabled(true);
+ alias.setVisible(true);
+ alias.setEnabled(true);
+ alias.setMaxStringLength(100);
+
+ this.buttonList.add(cancel);
+ this.buttonList.add(toggled);
+ this.buttonList.add(add);
+ }
+
+ @Override
+ public void drawScreen(int mouseX, int mouseY, float partialTicks) {
+ this.drawDefaultBackground();
+ super.drawScreen(mouseX, mouseY, partialTicks);
+
+ text.drawTextBox();
+ alias.drawTextBox();
+
+ new TextRenderer(mc, "Text:", width / 2 - 135, (int) (height * 0.22), 1D);
+ new TextRenderer(mc, "Alias:", width / 2 - 137, (int) (height * 0.32), 1D);
+ }
+
+ @Override
+ public void actionPerformed(GuiButton button) {
+ if (button == cancel) {
+ mc.displayGuiScreen(new AliasesGui(1));
+ } else if (button == add) {
+ ChatAliases.Alias newAlias = new ChatAliases.Alias(text.getText(), alias.getText(), toggled.isChecked());
+ if (editing) {
+ ChatAliases.aliases.set(id, newAlias);
+ } else {
+ ChatAliases.aliases.add(newAlias);
+ }
+ ChatAliases.save();
+ mc.displayGuiScreen(new AliasesGui(1));
+ }
+ }
+
+ @Override
+ protected void mouseClicked(int mouseX, int mouseY, int mouseButton) throws IOException {
+ super.mouseClicked(mouseX, mouseY, mouseButton);
+ text.mouseClicked(mouseX, mouseY, mouseButton);
+ alias.mouseClicked(mouseX, mouseY, mouseButton);
+ }
+
+ @Override
+ protected void keyTyped(char typedChar, int keyCode) throws IOException {
+ super.keyTyped(typedChar, keyCode);
+ text.textboxKeyTyped(typedChar, keyCode);
+ alias.textboxKeyTyped(typedChar, keyCode);
+ }
+
+}
diff --git a/src/main/java/me/Danker/gui/aliases/AliasesGui.java b/src/main/java/me/Danker/gui/aliases/AliasesGui.java
new file mode 100644
index 0000000..f5b863a
--- /dev/null
+++ b/src/main/java/me/Danker/gui/aliases/AliasesGui.java
@@ -0,0 +1,108 @@
+package me.Danker.gui.aliases;
+
+import me.Danker.commands.ToggleCommand;
+import me.Danker.features.ChatAliases;
+import me.Danker.gui.DankerGui;
+import me.Danker.gui.buttons.FeatureButton;
+import me.Danker.handlers.ConfigHandler;
+import me.Danker.utils.RenderUtils;
+import me.Danker.utils.Utils;
+import net.minecraft.client.Minecraft;
+import net.minecraft.client.gui.GuiButton;
+import net.minecraft.client.gui.GuiScreen;
+import net.minecraft.client.gui.ScaledResolution;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class AliasesGui extends GuiScreen {
+
+ private final int page;
+ private final List<GuiButton> allButtons = new ArrayList<>();
+
+ private GuiButton goBack;
+ private GuiButton backPage;
+ private GuiButton nextPage;
+ private GuiButton add;
+ private GuiButton aliases;
+
+ public AliasesGui(int page) {
+ this.page = page;
+ }
+
+ @Override
+ public boolean doesGuiPauseGame() {
+ return false;
+ }
+
+ @Override
+ public void initGui() {
+ super.initGui();
+
+ ScaledResolution sr = new ScaledResolution(Minecraft.getMinecraft());
+ int height = sr.getScaledHeight();
+ int width = sr.getScaledWidth();
+
+ goBack = new GuiButton(0, 2, height - 30, 100, 20, "Go Back");
+ backPage = new GuiButton(0, width / 2 - 100, (int) (height * 0.8), 80, 20, "< Back");
+ nextPage = new GuiButton(0, width / 2 + 20, (int) (height * 0.8), 80, 20, "Next >");
+ aliases = new FeatureButton("Aliases: " + Utils.getColouredBoolean(ToggleCommand.aliases), "Replaces text in chat with an alias");
+ add = new GuiButton(0, 0, 0, "Add Alias");
+
+ allButtons.clear();
+ allButtons.add(aliases);
+ allButtons.add(add);
+ for (int i = 0; i < ChatAliases.aliases.size(); i++) {
+ ChatAliases.Alias alias = ChatAliases.aliases.get(i);
+ GuiButton button = new GuiButton(i, 0, 0, alias.text + " >");
+ allButtons.add(button);
+ }
+
+ reInit();
+ }
+
+ public void reInit() {
+ this.buttonList.clear();
+
+ for (int i = (page - 1) * 7, iteration = 0; iteration < 7 && i < allButtons.size(); i++, iteration++) {
+ GuiButton button = allButtons.get(i);
+ button.xPosition = width / 2 - 100;
+ button.yPosition = (int) (height * (0.1 * (iteration + 1)));
+ this.buttonList.add(button);
+ }
+
+ if (page > 1) this.buttonList.add(backPage);
+ if (page < Math.ceil(allButtons.size() / 7D)) this.buttonList.add(nextPage);
+
+ this.buttonList.add(goBack);
+ }
+
+ @Override
+ public void drawScreen(int mouseX, int mouseY, float partialTicks) {
+ this.drawDefaultBackground();
+ super.drawScreen(mouseX, mouseY, partialTicks);
+
+ String pageText = "Page: " + page + "/" + (int) Math.ceil(allButtons.size() / 7D);
+ RenderUtils.drawCenteredText(pageText, width, 10, 1D);
+ }
+
+ @Override
+ public void actionPerformed(GuiButton button) {
+ if (button == goBack) {
+ mc.displayGuiScreen(new DankerGui(1, ""));
+ } else if (button == nextPage) {
+ mc.displayGuiScreen(new AliasesGui(page + 1));
+ } else if (button == backPage) {
+ mc.displayGuiScreen(new AliasesGui(page - 1));
+ } else if (button == add) {
+ mc.displayGuiScreen(new AliasesAddGui());
+ } else if (button == aliases) {
+ ToggleCommand.aliases = !ToggleCommand.aliases;
+ ConfigHandler.writeBooleanConfig("toggles", "Aliases", ToggleCommand.aliases);
+ aliases.displayString = "Aliases: " + Utils.getColouredBoolean(ToggleCommand.aliases);
+ } else {
+ mc.displayGuiScreen(new AliasesActionGui(button.id));
+ }
+ }
+
+}
diff --git a/src/main/java/me/Danker/gui/buttons/LocationButton.java b/src/main/java/me/Danker/gui/buttons/LocationButton.java
index 8da1ab9..533bf83 100644
--- a/src/main/java/me/Danker/gui/buttons/LocationButton.java
+++ b/src/main/java/me/Danker/gui/buttons/LocationButton.java
@@ -44,6 +44,10 @@ public class LocationButton extends GuiButton {
this.height = (int) ((splitText.length * 9 + 3) * scale);
this.width = (int) ((this.longestText + offset + 3) * scale);
}
+
+ public LocationButton(int x, int y, double scale, String text) {
+ this(x, y, scale, text, null, null);
+ }
@Override
public void drawButton(Minecraft mc, int mouseX, int mouseY) {
diff --git a/src/main/java/me/Danker/gui/crystalhollowwaypoints/CrystalHollowAddWaypointGui.java b/src/main/java/me/Danker/gui/crystalhollowwaypoints/CrystalHollowAddWaypointGui.java
index df91f04..52c0fba 100644
--- a/src/main/java/me/Danker/gui/crystalhollowwaypoints/CrystalHollowAddWaypointGui.java
+++ b/src/main/java/me/Danker/gui/crystalhollowwaypoints/CrystalHollowAddWaypointGui.java
@@ -23,6 +23,18 @@ public class CrystalHollowAddWaypointGui extends GuiScreen {
private GuiTextField z;
private GuiButton add;
+ private int xPos = -1;
+ private int yPos = -1;
+ private int zPos = -1;
+
+ public CrystalHollowAddWaypointGui() {}
+
+ public CrystalHollowAddWaypointGui(int x, int y, int z) {
+ xPos = x;
+ yPos = y;
+ zPos = z;
+ }
+
@Override
public boolean doesGuiPauseGame() {
return false;
@@ -49,10 +61,13 @@ public class CrystalHollowAddWaypointGui extends GuiScreen {
name.setEnabled(true);
x.setVisible(true);
x.setEnabled(true);
+ if (xPos != -1) x.setText(xPos + "");
y.setVisible(true);
y.setEnabled(true);
+ if (yPos != -1) y.setText(yPos + "");
z.setVisible(true);
z.setEnabled(true);
+ if (zPos != -1) z.setText(zPos + "");
this.buttonList.add(cancel);
this.buttonList.add(curPos);
diff --git a/src/main/java/me/Danker/handlers/ConfigHandler.java b/src/main/java/me/Danker/handlers/ConfigHandler.java
index f5e2706..4880041 100644
--- a/src/main/java/me/Danker/handlers/ConfigHandler.java
+++ b/src/main/java/me/Danker/handlers/ConfigHandler.java
@@ -9,6 +9,7 @@ import me.Danker.commands.ToggleCommand;
import me.Danker.features.*;
import me.Danker.features.loot.*;
import me.Danker.features.puzzlesolvers.*;
+import me.Danker.utils.Utils;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.util.EnumChatFormatting;
@@ -245,6 +246,8 @@ public class ConfigHandler {
ToggleCommand.dungeonScore = initBoolean("toggles", "DungeonScore", false);
ToggleCommand.hideArmour = initBoolean("toggles", "HideArmour", false);
ToggleCommand.autoJoinSkyblock = initBoolean("toggles", "AutoJoinSkyblock", false);
+ ToggleCommand.firePillar = initBoolean("toggles", "FirePillar", false);
+ ToggleCommand.aliases = initBoolean("toggles", "Aliases", false);
// Chat Messages
ToggleCommand.sceptreMessages = initBoolean("toggles", "SceptreMessages", true);
ToggleCommand.midasStaffMessages = initBoolean("toggles", "MidasStaffMessages", true);
@@ -295,6 +298,10 @@ public class ConfigHandler {
CustomMusic.dungeonbossVolume = initInt("music", "DungeonBossVolume", 50);
CustomMusic.bloodroomVolume = initInt("music", "BloodRoomVolume", 50);
CustomMusic.dungeonVolume = initInt("music", "DungeonVolume", 50);
+ CustomMusic.phase2Volume = initInt("music", "Phase2Volume", 50);
+ CustomMusic.phase3Volume = initInt("music", "Phase3Volume", 50);
+ CustomMusic.phase4Volume = initInt("music", "Phase4Volume", 50);
+ CustomMusic.phase5Volume = initInt("music", "Phase5Volume", 50);
CustomMusic.hubVolume = initInt("music", "HubVolume", 50);
CustomMusic.islandVolume = initInt("music", "IslandVolume", 50);
CustomMusic.dungeonHubVolume = initInt("music", "DungeonHubVolume", 50);
@@ -320,71 +327,73 @@ public class ConfigHandler {
}
// Wolf
- 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);
+ WolfTracker.svens = initInt("wolf", "svens", 0);
+ WolfTracker.teeth = initInt("wolf", "teeth", 0);
+ WolfTracker.wheels = initInt("wolf", "wheel", 0);
+ WolfTracker.wheelsDrops = initInt("wolf", "wheelDrops", 0);
+ WolfTracker.spirits = initInt("wolf", "spirit", 0);
+ WolfTracker.books = initInt("wolf", "book", 0);
+ WolfTracker.furballs = initInt("wolf", "furball", 0);
+ WolfTracker.eggs = initInt("wolf", "egg", 0);
+ WolfTracker.coutures = initInt("wolf", "couture", 0);
+ WolfTracker.baits = initInt("wolf", "bait", 0);
+ WolfTracker.fluxes = initInt("wolf", "flux", 0);
+ WolfTracker.time = initDouble("wolf", "timeRNG", -1);
+ WolfTracker.bosses = initInt("wolf", "bossRNG", -1);
// Spider
- 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);
+ SpiderTracker.tarantulas = initInt("spider", "tarantulas", 0);
+ SpiderTracker.webs = initInt("spider", "web", 0);
+ SpiderTracker.TAP = initInt("spider", "tap", 0);
+ SpiderTracker.TAPDrops = initInt("spider", "tapDrops", 0);
+ SpiderTracker.bites = initInt("spider", "bite", 0);
+ SpiderTracker.catalysts = initInt("spider", "catalyst", 0);
+ SpiderTracker.books = initInt("spider", "book", 0);
+ SpiderTracker.swatters = initInt("spider", "swatter", 0);
+ SpiderTracker.talismans = initInt("spider", "talisman", 0);
+ SpiderTracker.mosquitos = initInt("spider", "mosquito", 0);
+ SpiderTracker.time = initDouble("spider", "timeRNG", -1);
+ SpiderTracker.bosses = initInt("spider", "bossRNG", -1);
// Zombie
- 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);
+ ZombieTracker.revs = initInt("zombie", "revs", 0);
+ ZombieTracker.revFlesh = initInt("zombie", "revFlesh", 0);
+ ZombieTracker.revViscera = initInt("zombie", "revViscera", 0);
+ ZombieTracker.foulFlesh = initInt("zombie", "foulFlesh", 0);
+ ZombieTracker.foulFleshDrops = initInt("zombie", "foulFleshDrops", 0);
+ ZombieTracker.pestilences = initInt("zombie", "pestilence", 0);
+ ZombieTracker.undeadCatas = initInt("zombie", "undeadCatalyst", 0);
+ ZombieTracker.books = initInt("zombie", "book", 0);
+ ZombieTracker.beheadeds = initInt("zombie", "beheaded", 0);
+ ZombieTracker.revCatas = initInt("zombie", "revCatalyst", 0);
+ ZombieTracker.snakes = initInt("zombie", "snake", 0);
+ ZombieTracker.scythes = initInt("zombie", "scythe", 0);
+ ZombieTracker.shards = initInt("zombie", "shard", 0);
+ ZombieTracker.wardenHearts = initInt("zombie", "heart", 0);
+ ZombieTracker.time = initDouble("zombie", "timeRNG", -1);
+ ZombieTracker.bosses = initInt("zombie", "bossRNG", -1);
// Enderman
- 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);
+ EndermanTracker.voidglooms = initInt("enderman", "voidglooms", 0);
+ EndermanTracker.nullSpheres = initInt("enderman", "nullSpheres", 0);
+ EndermanTracker.TAP = initInt("enderman", "tap", 0);
+ EndermanTracker.TAPDrops = initInt("enderman", "tapDrops", 0);
+ EndermanTracker.endersnakes = initInt("enderman", "endersnakes", 0);
+ EndermanTracker.summoningEyes = initInt("enderman", "summoningEyes", 0);
+ EndermanTracker.manaBooks = initInt("enderman", "manaBooks", 0);
+ EndermanTracker.tuners = initInt("enderman", "tuners", 0);
+ EndermanTracker.atoms = initInt("enderman", "atoms", 0);
+ EndermanTracker.hazmats = initInt("enderman", "hazmats", 0);
+ EndermanTracker.espressoMachines = initInt("enderman", "espressoMachines", 0);
+ EndermanTracker.smartyBooks = initInt("enderman", "smartyBooks", 0);
+ EndermanTracker.endRunes = initInt("enderman", "endRunes", 0);
+ EndermanTracker.chalices = initInt("enderman", "chalices", 0);
+ EndermanTracker.dice = initInt("enderman", "dice", 0);
+ EndermanTracker.artifacts = initInt("enderman", "artifacts", 0);
+ EndermanTracker.skins = initInt("enderman", "skins", 0);
+ EndermanTracker.mergers = initInt("enderman", "mergers", 0);
+ EndermanTracker.cores = initInt("enderman", "cores", 0);
+ EndermanTracker.enchantRunes = initInt("enderman", "enchantRunes", 0);
+ EndermanTracker.enderBooks = initInt("enderman", "enderBooks", 0);
+ EndermanTracker.time = initDouble("enderman", "timeRNG", -1);
+ EndermanTracker.bosses = initInt("enderman", "bossRNG", -1);
// Blaze
BlazeTracker.demonlords = initInt("blaze", "demonlords", 0);
BlazeTracker.derelictAshes = initInt("blaze", "derelictAshes", 0);
@@ -458,6 +467,7 @@ public class ConfigHandler {
FishingTracker.lavaPigmen = initInt("fishing", "lavaPigman", 0);
FishingTracker.zombieMiners = initInt("fishing", "zombieMiner", 0);
// Lava Fishing
+ FishingTracker.plhlegblasts = initInt("fishing", "plhlegblast", 0);
FishingTracker.magmaSlugs = initInt("fishing", "magmaSlug", 0);
FishingTracker.moogmas = initInt("fishing", "moogma", 0);
FishingTracker.lavaLeeches = initInt("fishing", "lavaLeech", 0);
@@ -598,6 +608,7 @@ public class ConfigHandler {
DankersSkyblockMod.firstLaunch = initBoolean("misc", "firstLaunch", true);
EndOfFarmAlert.min = initDouble("misc", "farmMin", -78.5);
EndOfFarmAlert.max = initDouble("misc", "farmMax", 79.5);
+ Utils.TITLE_SOUND = initString("misc", "titleSound", "random.orb");
// Locations
ScaledResolution scaled = new ScaledResolution(Minecraft.getMinecraft());
@@ -630,6 +641,8 @@ public class ConfigHandler {
MoveCommand.abilityCooldownsXY[1] = initInt("locations", "abilityCooldownsY", 150);
MoveCommand.dungeonScoreXY[0] = initInt("locations", "dungeonScoreX", 150);
MoveCommand.dungeonScoreXY[1] = initInt("locations", "dungeonScoreY", 150);
+ MoveCommand.firePillarXY[0] = initInt("locations", "firePillarX", 200);
+ MoveCommand.firePillarXY[1] = initInt("locations", "firePillarY", 200);
// Scales
ScaleCommand.coordsScale = initDouble("scales", "coordsScale", 1);
@@ -646,6 +659,7 @@ public class ConfigHandler {
ScaleCommand.giantHPScale = initDouble("scales", "giantHPScale", 1);
ScaleCommand.abilityCooldownsScale = initDouble("scales", "abilityCooldownsScale", 1);
ScaleCommand.dungeonScoreScale = initDouble("scales", "dungeonScoreScale", 1);
+ ScaleCommand.firePillarScale = initDouble("scales", "firePillarScale", 1);
// Skills
DankersSkyblockMod.farmingLevel = initInt("skills", "farming", -1);
@@ -708,6 +722,7 @@ public class ConfigHandler {
Gson gson = new Gson();
try {
+ // Alerts
if (!(new File(Alerts.configFile).exists())) {
FileWriter file = new FileWriter(Alerts.configFile);
file.write(new JsonArray().toString());
@@ -715,6 +730,15 @@ public class ConfigHandler {
}
Alerts.Alert[] alerts = gson.fromJson(new FileReader(Alerts.configFile), Alerts.Alert[].class);
if (alerts != null) Alerts.alerts = new ArrayList<>(Arrays.asList(alerts));
+
+ // Aliases
+ if (!(new File(ChatAliases.configFile).exists())) {
+ FileWriter file = new FileWriter(ChatAliases.configFile);
+ file.write(new JsonArray().toString());
+ file.close();
+ }
+ ChatAliases.Alias[] aliases = gson.fromJson(new FileReader(ChatAliases.configFile), ChatAliases.Alias[].class);
+ if (aliases != null) ChatAliases.aliases = new ArrayList<>(Arrays.asList(aliases));
} catch (IOException ex) {
ex.printStackTrace();
}
diff --git a/src/main/java/me/Danker/utils/Utils.java b/src/main/java/me/Danker/utils/Utils.java
index 0fa2d0a..bc02d9e 100644
--- a/src/main/java/me/Danker/utils/Utils.java
+++ b/src/main/java/me/Danker/utils/Utils.java
@@ -22,7 +22,9 @@ import net.minecraft.scoreboard.ScoreObjective;
import net.minecraft.util.*;
import org.lwjgl.opengl.GL11;
+import java.awt.*;
import java.util.*;
+import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
@@ -53,6 +55,7 @@ public class Utils {
put('D', 500);
put('M', 1000);
}};
+ public static String TITLE_SOUND;
public static int getItems(String item) {
Minecraft mc = Minecraft.getMinecraft();
@@ -100,7 +103,7 @@ public class Utils {
}
public static void createTitle(String text, int seconds) {
- Minecraft.getMinecraft().thePlayer.playSound("random.orb", 1, (float) 0.5);
+ Minecraft.getMinecraft().thePlayer.playSound(TITLE_SOUND, 1, (float) 0.5);
DankersSkyblockMod.titleTimer = seconds * 20;
DankersSkyblockMod.showTitle = true;
DankersSkyblockMod.titleText = text;
@@ -506,6 +509,20 @@ public class Utils {
GL11.glTranslated(0, 0, 1);
Gui.drawRect(x, y, x + 16, y + 16, colour);
GL11.glTranslated(0, 0, -1);
+
+ public static void desktopNotification(String name, String title, String text, TrayIcon.MessageType messageType) {
+ try {
+ final SystemTray tray = SystemTray.getSystemTray();
+ final Image image = Toolkit.getDefaultToolkit().createImage("icon.png");
+ final TrayIcon trayIcon = new TrayIcon(image, name);
+ trayIcon.setImageAutoSize(true);
+ trayIcon.setToolTip(name);
+ tray.add(trayIcon);
+ trayIcon.displayMessage(title, text, messageType);
+ tray.remove(trayIcon);
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ }
}
public enum DungeonFloor {