Skip to content

Commit

Permalink
Cleanup calculate() (hannibal002#689)
Browse files Browse the repository at this point in the history
Cleanup calculate() in Estimated Item Value. hannibal002#689
  • Loading branch information
walkerselby authored and RayDeeUx committed Jan 20, 2024
1 parent 0cab608 commit 83ec871
Showing 1 changed file with 33 additions and 34 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -56,48 +56,47 @@ import java.util.Locale

object EstimatedItemValueCalculator {
private val config get() = SkyHanniMod.feature.misc.estimatedItemValues

fun calculate(stack: ItemStack, list: MutableList<String>): Pair<Double, Double> {
var totalPrice = 0.0
val basePrice = addBaseItem(stack, list)
totalPrice += basePrice

totalPrice += addAttributeCost(stack, list)

totalPrice += addReforgeStone(stack, list)
private val additionalCostFunctions = listOf(
::addAttributeCost,
::addReforgeStone,

// once
totalPrice += addRecomb(stack, list)
totalPrice += addArtOfWar(stack, list)
totalPrice += addArtOfPeace(stack, list)
totalPrice += addEtherwarp(stack, list)
totalPrice += addPowerScrolls(stack, list)
totalPrice += addWoodSingularity(stack, list)
totalPrice += addJalapenoBook(stack, list)
totalPrice += addStatsBook(stack, list)
totalPrice += addEnrichment(stack, list)
::addRecomb,
::addArtOfWar,
::addArtOfPeace,
::addEtherwarp,
::addPowerScrolls,
::addWoodSingularity,
::addJalapenoBook,
::addStatsBook,
::addEnrichment,

// counted
totalPrice += addMasterStars(stack, list)
totalPrice += addHotPotatoBooks(stack, list)
totalPrice += addFarmingForDummies(stack, list)
totalPrice += addSilex(stack, list)
totalPrice += addTransmissionTuners(stack, list)
totalPrice += addManaDisintegrators(stack, list)
totalPrice += addPolarvoidBook(stack, list)
totalPrice += addBookwormBook(stack, list)
::addMasterStars,
::addHotPotatoBooks,
::addFarmingForDummies,
::addSilex,
::addTransmissionTuners,
::addManaDisintegrators,
::addPolarvoidBook,
::addBookwormBook,

// cosmetic
totalPrice += addHelmetSkin(stack, list)
totalPrice += addArmorDye(stack, list)
totalPrice += addRune(stack, list)
::addHelmetSkin,
::addArmorDye,
::addRune,

// dynamic
totalPrice += addAbilityScrolls(stack, list)
totalPrice += addDrillUpgrades(stack, list)
totalPrice += addGemstoneSlotUnlockCost(stack, list)
totalPrice += addGemstones(stack, list)
totalPrice += addEnchantments(stack, list)
::addAbilityScrolls,
::addDrillUpgrades,
::addGemstoneSlotUnlockCost,
::addGemstones,
::addEnchantments
)

fun calculate(stack: ItemStack, list: MutableList<String>): Pair<Double, Double> {
val basePrice = addBaseItem(stack, list)
val totalPrice = additionalCostFunctions.fold(basePrice) { total, function -> total + function(stack, list) }
return Pair(totalPrice, basePrice)
}

Expand Down

0 comments on commit 83ec871

Please sign in to comment.