aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/data
diff options
context:
space:
mode:
authorCalMWolfs <94038482+CalMWolfs@users.noreply.github.com>2024-04-07 21:36:08 +1000
committerGitHub <noreply@github.com>2024-04-07 13:36:08 +0200
commitfcd404d862b4b051474898076fcc06b406d1ea91 (patch)
tree7659d22a41d1529a8d4ebaa62958bc0934596431 /src/main/java/at/hannibal2/skyhanni/data
parent03c416202ccdec17cc46f6d07aae111fa977771a (diff)
downloadskyhanni-fcd404d862b4b051474898076fcc06b406d1ea91.tar.gz
skyhanni-fcd404d862b4b051474898076fcc06b406d1ea91.tar.bz2
skyhanni-fcd404d862b4b051474898076fcc06b406d1ea91.zip
Backend: Remove a lot of deprecated code (#1371)
Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com>
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/data')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/data/QuiverAPI.kt8
-rw-r--r--src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt180
-rw-r--r--src/main/java/at/hannibal2/skyhanni/data/jsonobjects/repo/SacksJson.java12
3 files changed, 90 insertions, 110 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/data/QuiverAPI.kt b/src/main/java/at/hannibal2/skyhanni/data/QuiverAPI.kt
index 2297b3cf5..4fbe0be37 100644
--- a/src/main/java/at/hannibal2/skyhanni/data/QuiverAPI.kt
+++ b/src/main/java/at/hannibal2/skyhanni/data/QuiverAPI.kt
@@ -17,7 +17,7 @@ import at.hannibal2.skyhanni.utils.LorenzUtils
import at.hannibal2.skyhanni.utils.LorenzUtils.round
import at.hannibal2.skyhanni.utils.NEUInternalName
import at.hannibal2.skyhanni.utils.NEUInternalName.Companion.asInternalName
-import at.hannibal2.skyhanni.utils.NumberUtil.formatNumber
+import at.hannibal2.skyhanni.utils.NumberUtil.formatFloat
import at.hannibal2.skyhanni.utils.SkyBlockItemModifierUtils.getEnchantments
import at.hannibal2.skyhanni.utils.StringUtils.matchMatcher
import at.hannibal2.skyhanni.utils.StringUtils.matches
@@ -97,7 +97,7 @@ object QuiverAPI {
fillUpJaxPattern.matchMatcher(message) {
val type = group("type")
- val amount = group("amount").formatNumber().toFloat()
+ val amount = group("amount").formatFloat()
val filledUpType = getArrowByNameOrNull(type)
?: return ErrorManager.logErrorWithData(
UnknownArrowType("Unknown arrow type: $type"),
@@ -110,7 +110,7 @@ object QuiverAPI {
}
fillUpPattern.matchMatcher(message) {
- val flintAmount = group("flintAmount").formatNumber().toFloat()
+ val flintAmount = group("flintAmount").formatFloat()
FLINT_ARROW_TYPE?.let { arrowAmount.addOrPut(it.internalName, flintAmount) }
return
@@ -118,7 +118,7 @@ object QuiverAPI {
addedToQuiverPattern.matchMatcher(message) {
val type = group("type")
- val amount = group("amount").formatNumber().toFloat()
+ val amount = group("amount").formatFloat()
val filledUpType = getArrowByNameOrNull(type)
?: return ErrorManager.logErrorWithData(
diff --git a/src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt b/src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt
index 6f96cafc1..fe7c388f4 100644
--- a/src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt
+++ b/src/main/java/at/hannibal2/skyhanni/data/SackAPI.kt
@@ -20,7 +20,8 @@ import at.hannibal2.skyhanni.utils.NEUInternalName.Companion.asInternalName
import at.hannibal2.skyhanni.utils.NEUItems.getNpcPriceOrNull
import at.hannibal2.skyhanni.utils.NEUItems.getPrice
import at.hannibal2.skyhanni.utils.NumberUtil.formatInt
-import at.hannibal2.skyhanni.utils.NumberUtil.formatLong
+import at.hannibal2.skyhanni.utils.NumberUtil.romanToDecimal
+import at.hannibal2.skyhanni.utils.StringUtils.matchFirst
import at.hannibal2.skyhanni.utils.StringUtils.matchMatcher
import at.hannibal2.skyhanni.utils.StringUtils.matches
import at.hannibal2.skyhanni.utils.StringUtils.removeColor
@@ -99,18 +100,12 @@ object SackAPI {
else null
}
- private fun NEUInternalName.sackPrice(stored: String) = when (sackDisplayConfig.priceFrom) {
- PriceFrom.BAZAAR -> (getPrice(true) * stored.formatLong()).toLong()
- .let { if (it < 0) 0L else it }
-
- PriceFrom.NPC -> try {
- val npcPrice = getNpcPriceOrNull() ?: 0.0
- (npcPrice * stored.formatLong()).toLong()
- } catch (e: Exception) {
- 0L
+ private fun NEUInternalName.sackPrice(stored: Int): Long {
+ return when (sackDisplayConfig.priceFrom) {
+ PriceFrom.BAZAAR -> (getPrice() * stored).toLong().coerceAtLeast(0)
+ PriceFrom.NPC -> (getNpcPriceOrNull() ?: 0.0).toLong() * stored
+ else -> 0L
}
-
- else -> 0L
}
fun getSacksData(savingSacks: Boolean) {
@@ -118,82 +113,79 @@ object SackAPI {
for ((_, stack) in stackList) {
val name = stack.name
val lore = stack.getLore()
- val gem = SackGemstone()
- val rune = SackRune()
- val item = SackOtherItem()
- loop@ for (line in lore) {
- if (isGemstoneSack) {
- gemstonePattern.matchMatcher(line) {
- val rarity = group("gemrarity")
- val stored = group("stored")
- gem.internalName = gemstoneMap[name.removeColor()] ?: NEUInternalName.NONE
- if (gemstoneMap.containsKey(name.removeColor())) {
- val internalName = "${rarity.uppercase()}_${
- name.uppercase().split(" ")[0].removeColor()
- }_GEM".asInternalName()
-
- when (rarity) {
- "Rough" -> {
- gem.rough = stored
- gem.roughPrice = internalName.sackPrice(stored)
- if (savingSacks) setSackItem(internalName, stored.formatLong())
- }
-
- "Flawed" -> {
- gem.flawed = stored
- gem.flawedPrice = internalName.sackPrice(stored)
- if (savingSacks) setSackItem(internalName, stored.formatLong())
- }
-
- "Fine" -> {
- gem.fine = stored
- gem.finePrice = internalName.sackPrice(stored)
- if (savingSacks) setSackItem(internalName, stored.formatLong())
- }
- }
- gemstoneItem[name] = gem
- }
- }
- } else {
- numPattern.matchMatcher(line) {
- val stored = group("stored")
- val internalName = stack.getInternalName()
- item.internalName = internalName
- item.colorCode = group("color")
- item.stored = stored
- item.total = group("total")
-
- if (savingSacks) setSackItem(item.internalName, item.stored.formatLong())
- item.price = if (isTrophySack) {
- val filletPerTrophy = FishingAPI.getFilletPerTrophy(stack.getInternalName())
- val filletValue = filletPerTrophy * stored.formatLong()
- item.magmaFish = filletValue
- "MAGMA_FISH".asInternalName().sackPrice(filletValue.toString())
- } else {
- internalName.sackPrice(stored).coerceAtLeast(0)
- }
+ if (isGemstoneSack) {
+ lore.matchFirst(gemstonePattern) {
+ val gem = SackGemstone()
+ val rarity = group("gemrarity")
+ val stored = group("stored").formatInt()
+ gem.internalName = gemstoneMap[name.removeColor()] ?: NEUInternalName.NONE
+ if (gemstoneMap.containsKey(name.removeColor())) {
+ val internalName = "${rarity.uppercase()}_${
+ name.uppercase().split(" ")[0].removeColor()
+ }_GEM".asInternalName()
+
+ when (rarity) {
+ "Rough" -> {
+ gem.rough = stored
+ gem.roughPrice = internalName.sackPrice(stored)
+ if (savingSacks) setSackItem(internalName, stored)
+ }
- if (isRuneSack) {
- val level = group("level")
- rune.stack = stack
- if (level == "I") {
- rune.lvl1 = stored
- continue@loop
+ "Flawed" -> {
+ gem.flawed = stored
+ gem.flawedPrice = internalName.sackPrice(stored)
+ if (savingSacks) setSackItem(internalName, stored)
}
- if (level == "II") {
- rune.lvl2 = stored
- continue@loop
+
+ "Fine" -> {
+ gem.fine = stored
+ gem.finePrice = internalName.sackPrice(stored)
+ if (savingSacks) setSackItem(internalName, stored)
}
- if (level == "III") {
+ }
+ gemstoneItem[name] = gem
+ }
+ }
+ } else if (isRuneSack) {
+ val rune = SackRune()
+ for (line in lore) {
+ numPattern.matchMatcher(line) {
+ val level = group("level").romanToDecimal()
+ val stored = group("stored").formatInt()
+ rune.stack = stack
+
+ when (level) {
+ 1 -> rune.lvl1 = stored
+ 2 -> rune.lvl2 = stored
+ 3 -> {
rune.lvl3 = stored
+ runeItem[name] = rune
}
- runeItem.put(name, rune)
- } else {
- sackItem.put(name, item)
}
}
}
+ } else {
+ lore.matchFirst(numPattern) {
+ val item = SackOtherItem()
+ val stored = group("stored").formatInt()
+ val internalName = stack.getInternalName()
+ item.internalName = internalName
+ item.colorCode = group("color")
+ item.stored = group("stored").formatInt()
+ item.total = group("total").formatInt()
+
+ if (savingSacks) setSackItem(item.internalName, item.stored)
+ item.price = if (isTrophySack) {
+ val filletPerTrophy = FishingAPI.getFilletPerTrophy(stack.getInternalName())
+ val filletValue = filletPerTrophy * stored
+ item.magmaFish = filletValue
+ "MAGMA_FISH".asInternalName().sackPrice(filletValue)
+ } else {
+ internalName.sackPrice(stored).coerceAtLeast(0)
+ }
+ sackItem[name] = item
+ }
}
}
if (savingSacks) saveSackData()
@@ -261,7 +253,7 @@ object SackAPI {
if (sackData.containsKey(item.key)) {
val oldData = sackData[item.key]
var newAmount = oldData!!.amount + item.value
- var changed = (newAmount - oldData.amount).toInt()
+ var changed = (newAmount - oldData.amount)
if (newAmount < 0) {
newAmount = 0
changed = 0
@@ -270,7 +262,7 @@ object SackAPI {
} else {
val newAmount = if (item.value > 0) item.value else 0
sackData =
- sackData.editCopy { this[item.key] = SackItem(newAmount.toLong(), newAmount, SackStatus.OUTDATED) }
+ sackData.editCopy { this[item.key] = SackItem(newAmount, newAmount, SackStatus.OUTDATED) }
}
}
@@ -284,7 +276,7 @@ object SackAPI {
saveSackData()
}
- private fun setSackItem(item: NEUInternalName, amount: Long) {
+ private fun setSackItem(item: NEUInternalName, amount: Int) {
sackData = sackData.editCopy { this[item] = SackItem(amount, 0, SackStatus.CORRECT) }
}
@@ -308,9 +300,9 @@ object SackAPI {
data class SackGemstone(
var internalName: NEUInternalName = NEUInternalName.NONE,
- var rough: String = "0",
- var flawed: String = "0",
- var fine: String = "0",
+ var rough: Int = 0,
+ var flawed: Int = 0,
+ var fine: Int = 0,
var roughPrice: Long = 0,
var flawedPrice: Long = 0,
var finePrice: Long = 0,
@@ -318,28 +310,28 @@ object SackAPI {
data class SackRune(
var stack: ItemStack? = null,
- var lvl1: String = "0",
- var lvl2: String = "0",
- var lvl3: String = "0",
+ var lvl1: Int = 0,
+ var lvl2: Int = 0,
+ var lvl3: Int = 0,
)
data class SackOtherItem(
var internalName: NEUInternalName = NEUInternalName.NONE,
var colorCode: String = "",
- var stored: String = "0",
- var total: String = "0",
+ var stored: Int = 0,
+ var total: Int = 0,
var price: Long = 0,
- var magmaFish: Long = 0,
+ var magmaFish: Int = 0,
)
- fun NEUInternalName.getAmountInSacksOrNull(): Long? =
+ fun NEUInternalName.getAmountInSacksOrNull(): Int? =
fetchSackItem(this).takeIf { it.statusIsCorrectOrAlright() }?.amount
- fun NEUInternalName.getAmountInSacks(): Long = getAmountInSacksOrNull() ?: 0
+ fun NEUInternalName.getAmountInSacks(): Int = getAmountInSacksOrNull() ?: 0
}
data class SackItem(
- @Expose val amount: Long,
+ @Expose val amount: Int,
@Expose val lastChange: Int,
@Expose private val status: SackStatus?,
) {
diff --git a/src/main/java/at/hannibal2/skyhanni/data/jsonobjects/repo/SacksJson.java b/src/main/java/at/hannibal2/skyhanni/data/jsonobjects/repo/SacksJson.java
deleted file mode 100644
index e8bb83a79..000000000
--- a/src/main/java/at/hannibal2/skyhanni/data/jsonobjects/repo/SacksJson.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package at.hannibal2.skyhanni.data.jsonobjects.repo;
-
-import com.google.gson.annotations.Expose;
-
-import java.util.List;
-
-public class SacksJson {
-
- @Deprecated
- @Expose
- public List<String> sackList;
-}