From 30ad6049a0f84e2e7be6fe9c4e6ade9dcf159bf7 Mon Sep 17 00:00:00 2001 From: saga <45262877+saga-00@users.noreply.github.com> Date: Sun, 21 Jul 2024 07:30:44 -0300 Subject: Feature: Bestiary Level as Stack Size (#1945) Co-authored-by: Cal Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com> --- .../config/features/inventory/InventoryConfig.java | 3 ++- .../features/inventory/ItemDisplayOverlayFeatures.kt | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) (limited to 'src/main') diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/inventory/InventoryConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/inventory/InventoryConfig.java index 37201d64c..684e2bb79 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/inventory/InventoryConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/inventory/InventoryConfig.java @@ -142,7 +142,8 @@ public class InventoryConfig { DARK_CACAO_TRUFFLE("§bDark Cacao Truffle"), EDITION_NUMBER("§bEdition Number", 16), BINGO_GOAL_RANK("§bBingo Goal Rank"), - SKYBLOCK_LEVEL("§bSkyblock Level") + SKYBLOCK_LEVEL("§bSkyblock Level"), + BESTIARY_LEVEL("§bBestiary Level") ; private final String str; diff --git a/src/main/java/at/hannibal2/skyhanni/features/inventory/ItemDisplayOverlayFeatures.kt b/src/main/java/at/hannibal2/skyhanni/features/inventory/ItemDisplayOverlayFeatures.kt index 204cf0b6d..2cb5632f1 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/inventory/ItemDisplayOverlayFeatures.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/inventory/ItemDisplayOverlayFeatures.kt @@ -23,6 +23,7 @@ import at.hannibal2.skyhanni.config.features.inventory.InventoryConfig.ItemNumbe import at.hannibal2.skyhanni.config.features.inventory.InventoryConfig.ItemNumberEntry.SKILL_LEVEL import at.hannibal2.skyhanni.config.features.inventory.InventoryConfig.ItemNumberEntry.SKYBLOCK_LEVEL import at.hannibal2.skyhanni.config.features.inventory.InventoryConfig.ItemNumberEntry.VACUUM_GARDEN +import at.hannibal2.skyhanni.config.features.inventory.InventoryConfig.ItemNumberEntry.BESTIARY_LEVEL import at.hannibal2.skyhanni.data.PetAPI import at.hannibal2.skyhanni.events.RenderItemTipEvent import at.hannibal2.skyhanni.features.garden.GardenAPI @@ -93,6 +94,10 @@ object ItemDisplayOverlayFeatures { "skyblocklevel", "§7Your SkyBlock Level: §8\\[(?§.\\d+)§8]", ) + private val bestiaryStackPattern by patternGroup.pattern( + "bestiarystack", + "§7Progress to Tier (?[\\dIVXC]+): §b[\\d.]+%" + ) @SubscribeEvent fun onRenderItemTip(event: RenderItemTipEvent) { @@ -283,6 +288,17 @@ object ItemDisplayOverlayFeatures { } } + if (BESTIARY_LEVEL.isSelected() && (chestName.contains("Bestiary ➜") || chestName.contains("Fishing ➜")) && lore.any { it.contains("Deaths: ") }) { + lore.matchFirst(bestiaryStackPattern) { + val tier = (group("tier").romanToDecimalIfNecessary() - 1) + return tier.toString() + } ?: run { + val tier = itemName.split(" ") + + return tier.last().romanToDecimalIfNecessary().toString() + } + } + return null } -- cgit