diff options
| author | HiZe_ <superhize@hotmail.com> | 2023-10-26 12:29:43 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-26 12:29:43 +0200 |
| commit | 2c061eb7fc7c6f8f4e5889504e6b390c71e6a269 (patch) | |
| tree | 1191375f0e1a463e3f2d8ac82cbba3b67dfa8c85 /src/main/java/at/hannibal2/skyhanni/data | |
| parent | d75c1ced1eb024cc216febd7676e851aa5d434a4 (diff) | |
| download | skyhanni-2c061eb7fc7c6f8f4e5889504e6b390c71e6a269.tar.gz skyhanni-2c061eb7fc7c6f8f4e5889504e6b390c71e6a269.tar.bz2 skyhanni-2c061eb7fc7c6f8f4e5889504e6b390c71e6a269.zip | |
Update: Sack display (#587)
highlight full sacks and price+amount of trophy sacks #587
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/data')
| -rw-r--r-- | src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt b/src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt index 35e664cd7..7db58cd62 100644 --- a/src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt +++ b/src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt @@ -10,12 +10,14 @@ import at.hannibal2.skyhanni.features.fishing.trophy.TrophyFishManager.getFillet import at.hannibal2.skyhanni.features.fishing.trophy.TrophyRarity import at.hannibal2.skyhanni.features.inventory.SackDisplay import at.hannibal2.skyhanni.utils.ItemUtils.getInternalName +import at.hannibal2.skyhanni.utils.ItemUtils.getInternalName_old import at.hannibal2.skyhanni.utils.ItemUtils.getLore import at.hannibal2.skyhanni.utils.ItemUtils.name import at.hannibal2.skyhanni.utils.LorenzUtils import at.hannibal2.skyhanni.utils.LorenzUtils.editCopy import at.hannibal2.skyhanni.utils.NEUInternalName import at.hannibal2.skyhanni.utils.NEUInternalName.Companion.asInternalName +import at.hannibal2.skyhanni.utils.NEUItems import at.hannibal2.skyhanni.utils.NEUItems.getNpcPriceOrNull import at.hannibal2.skyhanni.utils.NEUItems.getPrice import at.hannibal2.skyhanni.utils.NumberUtil.formatNumber @@ -153,15 +155,24 @@ object SackAPI { item.colorCode = group("color") item.stored = stored item.total = group("total") + if (savingSacks) setSackItem(item.internalName, item.stored.formatNumber()) - item.price = if (isTrophySack) { - val trophyName = - internalName.asString().lowercase().substringBeforeLast("_").replace("_", "") - val filletValue = - TrophyFishManager.getInfoByName(trophyName)?.getFilletValue(sackRarity!!) ?: 0 - val storedNumber = stored.formatNumber() - "MAGMA_FISH".asInternalName().sackPrice((filletValue * storedNumber).toString()) - } else internalName.sackPrice(stored).coerceAtLeast(0) + val price: Long + if (isTrophySack) { + val internal = stack.getInternalName_old() + val trophyFishName = internal.substringBeforeLast("_") + .replace("_", "").lowercase() + val trophyRarityName = internal.substringAfterLast("_") + val info = TrophyFishManager.getInfo(trophyFishName) + val rarity = TrophyRarity.getByName(trophyRarityName) ?: TrophyRarity.BRONZE + val filletValue = (info?.getFilletValue(rarity) ?: 0) * stored.toLong() + price = "MAGMA_FISH".asInternalName().sackPrice(filletValue.toString()) + item.magmaFish = filletValue.toString() + } else { + price = internalName.sackPrice(stored).coerceAtLeast(0) + } + item.price = price + if (isRuneSack) { val level = group("level") @@ -320,6 +331,7 @@ object SackAPI { var stored: String = "0", var total: String = "0", var price: Long = 0, + var magmaFish: String = "0", ) } @@ -331,6 +343,7 @@ data class SackItem( fun getStatus() = status ?: SackStatus.MISSING } + private val gemstoneMap = mapOf( "Jade Gemstones" to "ROUGH_JADE_GEM".asInternalName(), "Amber Gemstones" to "ROUGH_AMBER_GEM".asInternalName(), |
