From 6281b9fe15b3d807cd2e2fdba2b7649544f17658 Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Sat, 23 Apr 2022 23:24:13 -0400 Subject: Fix some drops not counting in blaze tracker Also make multidrops work with any amount of digits --- src/main/java/me/Danker/features/loot/LootTracker.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src/main/java/me/Danker/features/loot/LootTracker.java') diff --git a/src/main/java/me/Danker/features/loot/LootTracker.java b/src/main/java/me/Danker/features/loot/LootTracker.java index 27f0779..d654109 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(".*? \\((?\\d+)x .*\\).*"); @SubscribeEvent(priority = EventPriority.HIGHEST) public void onSound(PlaySoundEvent event) { @@ -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; } } -- cgit From e20025121af75e505aa154f304339fab7beddf6e Mon Sep 17 00:00:00 2001 From: bowser0000 Date: Thu, 28 Apr 2022 03:22:39 -0400 Subject: Add new slayer drops Add furball to wolf tracker and hazmat enderman to enderman tracket Also make variable names less redudant --- .../java/me/Danker/features/loot/LootTracker.java | 24 +++++++++++----------- 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'src/main/java/me/Danker/features/loot/LootTracker.java') diff --git a/src/main/java/me/Danker/features/loot/LootTracker.java b/src/main/java/me/Danker/features/loot/LootTracker.java index d654109..7fa223d 100644 --- a/src/main/java/me/Danker/features/loot/LootTracker.java +++ b/src/main/java/me/Danker/features/loot/LootTracker.java @@ -39,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); } } -- cgit