summaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/features/bingo
diff options
context:
space:
mode:
authorThunderblade73 <85900443+Thunderblade73@users.noreply.github.com>2024-02-10 00:24:52 +0100
committerGitHub <noreply@github.com>2024-02-10 00:24:52 +0100
commit4559e5ff05e19817a21ae49f1c0d8a97d273f6a1 (patch)
treee72dac91d07fc84bea80548c89e13276caa68b81 /src/main/java/at/hannibal2/skyhanni/features/bingo
parentd3a7cc4ab970b457b7950489da781539e45e0dce (diff)
downloadskyhanni-4559e5ff05e19817a21ae49f1c0d8a97d273f6a1.tar.gz
skyhanni-4559e5ff05e19817a21ae49f1c0d8a97d273f6a1.tar.bz2
skyhanni-4559e5ff05e19817a21ae49f1c0d8a97d273f6a1.zip
Splitting many utils functions from LorenzUtils up into other classes: ChatUtils, CollectionUtils, ConditionalUtils. And code cleanup #978
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/features/bingo')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/BingoAPI.kt1
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/CompactBingoChat.kt6
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/FirstMinionTier.kt8
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/MinionCraftHelper.kt2
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardDisplay.kt8
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardReader.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardTips.kt1
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/goals/BingoGoal.kt1
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/BingoNextStepHelper.kt9
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/CollectionStep.kt1
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/ItemsStep.kt1
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/NextStep.kt2
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/SkillLevelStep.kt2
13 files changed, 30 insertions, 16 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/BingoAPI.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/BingoAPI.kt
index 282791154..a86a05c60 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/BingoAPI.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/BingoAPI.kt
@@ -18,6 +18,7 @@ import java.time.OffsetDateTime
import java.time.ZoneOffset
object BingoAPI {
+
private var ranks = mapOf<String, Int>()
private var data: Map<String, BingoJson.BingoData> = emptyMap()
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/CompactBingoChat.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/CompactBingoChat.kt
index eb130b06b..7c0e74cae 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/CompactBingoChat.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/CompactBingoChat.kt
@@ -2,19 +2,21 @@ package at.hannibal2.skyhanni.features.bingo
import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.events.LorenzChatEvent
+import at.hannibal2.skyhanni.utils.ChatUtils
import at.hannibal2.skyhanni.utils.LorenzUtils
import at.hannibal2.skyhanni.utils.StringUtils.matchMatcher
import at.hannibal2.skyhanni.utils.StringUtils.removeColor
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
class CompactBingoChat {
+
private val config get() = SkyHanniMod.feature.event.bingo.compactChat
private var inSkillLevelUp = false
private var inSkyBlockLevelUp = false
private var inCollectionLevelUp = false
private var collectionLevelUpLastLine: String? = null
- private var newArea = 0//0 = nothing, 1 = after first message, 2 = after second message
+ private var newArea = 0// 0 = nothing, 1 = after first message, 2 = after second message
private val healthPattern = " {3}§r§7§8\\+§a.* §c❤ Health".toPattern()
private val strengthPattern = " {3}§r§7§8\\+§a. §c❁ Strength".toPattern()
@@ -93,7 +95,7 @@ class CompactBingoChat {
if (message.contains("Trade") || message.contains("Recipe")) {
val text = message.removeColor().replace(" ", "")
if (text == "Trade" || text == "Recipe") {
- collectionLevelUpLastLine?.let { LorenzUtils.chat(it, false) }
+ collectionLevelUpLastLine?.let { ChatUtils.chat(it, false) }
}
} else {
collectionLevelUpLastLine = message
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/FirstMinionTier.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/FirstMinionTier.kt
index f7366235c..ab5e2f3bf 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/FirstMinionTier.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/FirstMinionTier.kt
@@ -25,7 +25,7 @@ object FirstMinionTier {
private fun addMoreMinions(
tierOneMinionsFiltered: List<NEUInternalName>,
help: Map<NEUInternalName, Int>,
- minions: MutableMap<String, NEUInternalName>
+ minions: MutableMap<String, NEUInternalName>,
) {
for (minionId in tierOneMinionsFiltered) {
for (recipe in NEUItems.getRecipes(minionId)) {
@@ -39,7 +39,7 @@ object FirstMinionTier {
recipe: CraftingRecipe,
help: Map<NEUInternalName, Int>,
minions: MutableMap<String, NEUInternalName>,
- minionId: NEUInternalName
+ minionId: NEUInternalName,
) {
if (recipe.getCachedIngredients().any { help.contains(it.internalItemId.asInternalName()) }) {
val name = recipe.output.itemStack.name!!.removeColor()
@@ -51,7 +51,7 @@ object FirstMinionTier {
private fun addMinion(
tierOneMinionsFiltered: List<NEUInternalName>,
minions: MutableMap<String, NEUInternalName>,
- tierOneMinionsDone: MutableList<NEUInternalName>
+ tierOneMinionsDone: MutableList<NEUInternalName>,
) {
for (minionId in tierOneMinionsFiltered) {
val prefix = minionId.asString().dropLast(1)
@@ -63,7 +63,7 @@ object FirstMinionTier {
private fun getTierOneMinionsFiltered(
tierOneMinions: MutableList<NEUInternalName>,
- tierOneMinionsDone: MutableList<NEUInternalName>
+ tierOneMinionsDone: MutableList<NEUInternalName>,
) = tierOneMinions.filter { it !in tierOneMinionsDone }
private fun helpMap(otherItems: Map<NEUInternalName, Int>) =
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/MinionCraftHelper.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/MinionCraftHelper.kt
index dd060aa9b..930ea6883 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/MinionCraftHelper.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/MinionCraftHelper.kt
@@ -28,6 +28,7 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import kotlin.time.Duration.Companion.seconds
class MinionCraftHelper {
+
private val config get() = SkyHanniMod.feature.event.bingo
// TODO USE SH-REPO
@@ -296,5 +297,4 @@ class MinionCraftHelper {
}
data.add("tierOneMinionsDone", newList)
}
-
}
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardDisplay.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardDisplay.kt
index 94490b1d8..f7c166d37 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardDisplay.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardDisplay.kt
@@ -9,10 +9,11 @@ import at.hannibal2.skyhanni.events.bingo.BingoCardUpdateEvent
import at.hannibal2.skyhanni.features.bingo.BingoAPI
import at.hannibal2.skyhanni.features.bingo.card.goals.BingoGoal
import at.hannibal2.skyhanni.features.bingo.card.nextstephelper.BingoNextStepHelper
+import at.hannibal2.skyhanni.utils.ChatUtils
+import at.hannibal2.skyhanni.utils.ConditionalUtils.onToggle
import at.hannibal2.skyhanni.utils.InventoryUtils
import at.hannibal2.skyhanni.utils.ItemUtils
import at.hannibal2.skyhanni.utils.LorenzUtils
-import at.hannibal2.skyhanni.utils.LorenzUtils.onToggle
import at.hannibal2.skyhanni.utils.RenderUtils.renderRenderables
import at.hannibal2.skyhanni.utils.RenderUtils.renderStrings
import at.hannibal2.skyhanni.utils.SimpleTimeMark
@@ -34,6 +35,7 @@ class BingoCardDisplay {
private var hasHiddenPersonalGoals = false
companion object {
+
private const val MAX_PERSONAL_GOALS = 20
private const val MAX_COMMUNITY_GOALS = 5
@@ -50,11 +52,11 @@ class BingoCardDisplay {
fun toggleCommand() {
if (!LorenzUtils.isBingoProfile) {
- LorenzUtils.userError("This command only works on a bingo profile!")
+ ChatUtils.userError("This command only works on a bingo profile!")
return
}
if (!config.enabled) {
- LorenzUtils.userError("Bingo Card is disabled in the config!")
+ ChatUtils.userError("Bingo Card is disabled in the config!")
return
}
toggleMode()
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardReader.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardReader.kt
index 9dc7ee907..be27e25a2 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardReader.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardReader.kt
@@ -10,6 +10,7 @@ import at.hannibal2.skyhanni.features.bingo.BingoAPI
import at.hannibal2.skyhanni.features.bingo.card.goals.BingoGoal
import at.hannibal2.skyhanni.features.bingo.card.goals.GoalType
import at.hannibal2.skyhanni.features.bingo.card.goals.HiddenGoalData
+import at.hannibal2.skyhanni.utils.ChatUtils
import at.hannibal2.skyhanni.utils.ItemUtils.getLore
import at.hannibal2.skyhanni.utils.ItemUtils.name
import at.hannibal2.skyhanni.utils.LorenzUtils
@@ -22,6 +23,7 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import kotlin.time.Duration
class BingoCardReader {
+
private val config get() = SkyHanniMod.feature.event.bingo.bingoCard
private val percentagePattern by RepoPattern.pattern("bingo.card.percentage", " {2}§8Top §.(?<percentage>.*)%")
@@ -97,7 +99,7 @@ class BingoCardReader {
val oldFormat = BingoAPI.getCommunityPercentageColor(old)
val newFormat = BingoAPI.getCommunityPercentageColor(new)
val color = if (new > old) "§c" else "§a"
- LorenzUtils.chat("$color${bingoGoal.displayName}: $oldFormat §b->" + " $newFormat")
+ ChatUtils.chat("$color${bingoGoal.displayName}: $oldFormat §b->" + " $newFormat")
}
private fun readCommuntyGoalPercentage(lore: List<String>): Double? {
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardTips.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardTips.kt
index b219f7d44..6148848b6 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardTips.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/BingoCardTips.kt
@@ -16,6 +16,7 @@ import net.minecraft.inventory.ContainerChest
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
class BingoCardTips {
+
private val config get() = SkyHanniMod.feature.event.bingo.bingoCard
@SubscribeEvent
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/goals/BingoGoal.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/goals/BingoGoal.kt
index f6758360b..120e66112 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/goals/BingoGoal.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/goals/BingoGoal.kt
@@ -3,6 +3,7 @@ package at.hannibal2.skyhanni.features.bingo.card.goals
import com.google.gson.annotations.Expose
class BingoGoal {
+
@Expose
lateinit var type: GoalType
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/BingoNextStepHelper.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/BingoNextStepHelper.kt
index 0cd5df65a..6987edb82 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/BingoNextStepHelper.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/BingoNextStepHelper.kt
@@ -17,15 +17,17 @@ import at.hannibal2.skyhanni.features.bingo.card.nextstephelper.steps.ObtainCrys
import at.hannibal2.skyhanni.features.bingo.card.nextstephelper.steps.PartialProgressItemsStep
import at.hannibal2.skyhanni.features.bingo.card.nextstephelper.steps.ProgressionStep
import at.hannibal2.skyhanni.features.bingo.card.nextstephelper.steps.SkillLevelStep
+import at.hannibal2.skyhanni.utils.ChatUtils
+import at.hannibal2.skyhanni.utils.CollectionUtils.editCopy
import at.hannibal2.skyhanni.utils.InventoryUtils
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.StringUtils.matchMatcher
import at.hannibal2.skyhanni.utils.StringUtils.removeColor
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
class BingoNextStepHelper {
+
private val config get() = SkyHanniMod.feature.event.bingo.bingoCard
private var dirty = true
@@ -41,6 +43,7 @@ class BingoNextStepHelper {
private val rhysTaskName = "30x Enchanted Minerals (Redstone, Lapis Lazuli, Coal) (for Rhys)"
companion object {
+
private val finalSteps = mutableListOf<NextStep>()
private var currentSteps = emptyList<NextStep>()
var currentHelp = emptyList<String>()
@@ -152,7 +155,7 @@ class BingoNextStepHelper {
currentStep.amountHavingHidden -= 10
}
}
- //TODO add thys message
+ // TODO add thys message
// if (event.message == "thys message") {
// thys.done()
// }
@@ -202,7 +205,7 @@ class BingoNextStepHelper {
done = true
updateResult()
if (!silent && config.stepHelper) {
- LorenzUtils.chat("A bingo goal step is done! ($displayName)")
+ ChatUtils.chat("A bingo goal step is done! ($displayName)")
}
}
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/CollectionStep.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/CollectionStep.kt
index e6bb7075b..d3f33a27d 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/CollectionStep.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/CollectionStep.kt
@@ -5,5 +5,6 @@ import at.hannibal2.skyhanni.utils.NumberUtil
class CollectionStep(collectionName: String, amountNeeded: Int) :
ProgressionStep(NumberUtil.format(amountNeeded) + " $collectionName Collection", amountNeeded.toLong()) {
+
val internalName by lazy { NEUInternalName.fromItemName(if (collectionName == "Mushroom") "Red Mushroom" else collectionName) }
}
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/ItemsStep.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/ItemsStep.kt
index 548318a20..cf856f001 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/ItemsStep.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/ItemsStep.kt
@@ -5,6 +5,7 @@ open class ItemsStep(displayName: String, val itemName: String, amountNeeded: Lo
class PartialProgressItemsStep(displayName: String, itemName: String, amountNeeded: Long, variants: Map<String, Int>) :
ItemsStep(displayName, itemName, amountNeeded, variants) {
+
var amountHavingHidden: Int = 0
override val amountNeeded: Long
get() = super.amountNeeded - amountHavingHidden
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/NextStep.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/NextStep.kt
index d0a73926a..b9e9b574e 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/NextStep.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/NextStep.kt
@@ -3,5 +3,5 @@ package at.hannibal2.skyhanni.features.bingo.card.nextstephelper.steps
abstract class NextStep(
val displayName: String,
var done: Boolean = false,
- val requirements: MutableList<NextStep> = mutableListOf()
+ val requirements: MutableList<NextStep> = mutableListOf(),
)
diff --git a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/SkillLevelStep.kt b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/SkillLevelStep.kt
index e93aa24b0..c87a8683c 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/SkillLevelStep.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/bingo/card/nextstephelper/steps/SkillLevelStep.kt
@@ -5,6 +5,6 @@ import at.hannibal2.skyhanni.data.SkillExperience
class SkillLevelStep(
val skillName: String,
private val skillLevelNeeded: Int,
- skillExpNeeded: Long = SkillExperience.getExpForLevel(skillLevelNeeded)
+ skillExpNeeded: Long = SkillExperience.getExpForLevel(skillLevelNeeded),
) :
ProgressionStep("$skillName $skillLevelNeeded", skillExpNeeded)