aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhannibal2 <24389977+hannibal00212@users.noreply.github.com>2023-04-13 05:23:39 +0200
committerhannibal2 <24389977+hannibal00212@users.noreply.github.com>2023-04-13 05:23:39 +0200
commit274bd74d397da5b43b900d0f766ce7825e079061 (patch)
tree3659a15112bc9dfb6b99b37f7a771f6d66928c26
parent127a719e84e866a15a626a39f261da26946aa6fb (diff)
downloadskyhanni-274bd74d397da5b43b900d0f766ce7825e079061.tar.gz
skyhanni-274bd74d397da5b43b900d0f766ce7825e079061.tar.bz2
skyhanni-274bd74d397da5b43b900d0f766ce7825e079061.zip
code cleanup
-rw-r--r--src/main/java/at/hannibal2/skyhanni/data/MayorElectionData.kt3
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/SkyBlockItemModifierUtils.kt33
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/renderables/Renderable.kt104
3 files changed, 52 insertions, 88 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/data/MayorElectionData.kt b/src/main/java/at/hannibal2/skyhanni/data/MayorElectionData.kt
index 2dd8e19cd..634958217 100644
--- a/src/main/java/at/hannibal2/skyhanni/data/MayorElectionData.kt
+++ b/src/main/java/at/hannibal2/skyhanni/data/MayorElectionData.kt
@@ -3,7 +3,6 @@ package at.hannibal2.skyhanni.data
import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.utils.APIUtil
import at.hannibal2.skyhanni.utils.LorenzUtils
-import at.hannibal2.skyhanni.utils.LorenzUtils.sorted
import at.hannibal2.skyhanni.utils.MayorData
import at.hannibal2.skyhanni.utils.MayorData.Candidate
import com.google.gson.GsonBuilder
@@ -79,5 +78,5 @@ class MayorElectionData {
private fun MayorData.Election.getPairs() = year + 1 to candidates.bestCandidate()
- private fun List<MayorData.Candidate>.bestCandidate() = map { it to it.votes }.sorted().last().first
+ private fun List<MayorData.Candidate>.bestCandidate() = maxBy { it.votes }
} \ No newline at end of file
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/SkyBlockItemModifierUtils.kt b/src/main/java/at/hannibal2/skyhanni/utils/SkyBlockItemModifierUtils.kt
index bb1c8705e..14a691fa8 100644
--- a/src/main/java/at/hannibal2/skyhanni/utils/SkyBlockItemModifierUtils.kt
+++ b/src/main/java/at/hannibal2/skyhanni/utils/SkyBlockItemModifierUtils.kt
@@ -15,23 +15,9 @@ object SkyBlockItemModifierUtils {
fun ItemStack.getHoeCounter() = getAttributeInt("mined_crops")
- fun ItemStack.getSilexCount(): Int? {
- val enchantments = getEnchantments() ?: return null
- var silexTier = 0
- for ((name, amount) in enchantments) {
- if (name == "efficiency") {
- if (amount > 5) {
- silexTier = amount - 5
- }
- }
- }
-
- if (getInternalName() == "STONK_PICKAXE") {
- silexTier--
- }
-
- return silexTier
- }
+ fun ItemStack.getSilexCount() = getEnchantments()?.get("efficiency")?.let {
+ it - 5 - if (getInternalName() == "STONK_PICKAXE") 1 else 0
+ }?.takeIf { it > 0 }
fun ItemStack.getTransmissionTunerCount() = getAttributeInt("tuned_transmission")
@@ -105,16 +91,9 @@ object SkyBlockItemModifierUtils {
fun ItemStack.hasArtOfPiece() = getAttributeBoolean("artOfPeaceApplied")
- fun ItemStack.getEnchantments() = getExtraAttributes()?.let {
- val map = mutableMapOf<String, Int>()
- for (attributes in it.keySet) {
- if (attributes != "enchantments") continue
- val enchantments = it.getCompoundTag(attributes)
- for (key in enchantments.keySet) {
- map[key] = enchantments.getInteger(key)
- }
- }
- map
+ fun ItemStack.getEnchantments() = getExtraAttributes()?.takeIf { it.hasKey("enchantments") }?.run {
+ val enchantments = this.getCompoundTag("enchantments")
+ enchantments.keySet.associateWith { enchantments.getInteger(it) }
}
fun ItemStack.getGemstones() = getExtraAttributes()?.let {
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/renderables/Renderable.kt b/src/main/java/at/hannibal2/skyhanni/utils/renderables/Renderable.kt
index 415cc0f2e..ce531846e 100644
--- a/src/main/java/at/hannibal2/skyhanni/utils/renderables/Renderable.kt
+++ b/src/main/java/at/hannibal2/skyhanni/utils/renderables/Renderable.kt
@@ -22,14 +22,12 @@ interface Renderable {
fun render(posX: Int, posY: Int)
companion object {
- fun fromAny(any: Any?, itemScale: Double = 1.0): Renderable? {
- return when (any) {
- null -> placeholder(12)
- is Renderable -> any
- is String -> string(any)
- is ItemStack -> itemStack(any, itemScale)
- else -> null
- }
+ fun fromAny(any: Any?, itemScale: Double = 1.0): Renderable? = when (any) {
+ null -> placeholder(12)
+ is Renderable -> any
+ is String -> string(any)
+ is ItemStack -> itemStack(any, itemScale)
+ else -> null
}
fun link(text: String, onClick: () -> Unit): Renderable = link(string(text), onClick)
@@ -37,80 +35,68 @@ interface Renderable {
return clickable(hoverable(underlined(renderable), renderable), onClick)
}
- fun clickable(render: Renderable, onClick: () -> Unit, button: Int = 0): Renderable {
- return object : Renderable {
- override val width: Int
- get() = render.width
+ fun clickable(render: Renderable, onClick: () -> Unit, button: Int = 0) = object : Renderable {
+ override val width: Int
+ get() = render.width
- private var wasDown = false
+ private var wasDown = false
- override fun render(posX: Int, posY: Int) {
- val isDown = Mouse.isButtonDown(button)
- if (isDown > wasDown && isHovered(posX, posY)) {
- onClick()
- }
- wasDown = isDown
- render.render(posX, posY)
+ override fun render(posX: Int, posY: Int) {
+ val isDown = Mouse.isButtonDown(button)
+ if (isDown > wasDown && isHovered(posX, posY)) {
+ onClick()
}
-
+ wasDown = isDown
+ render.render(posX, posY)
}
+
}
- fun underlined(renderable: Renderable): Renderable {
- return object : Renderable {
- override val width: Int
- get() = renderable.width
+ fun underlined(renderable: Renderable) = object : Renderable {
+ override val width: Int
+ get() = renderable.width
- override fun render(posX: Int, posY: Int) {
- Gui.drawRect(0, 10, width, 11, 0xFFFFFFFF.toInt())
- GlStateManager.color(1F, 1F, 1F, 1F)
- renderable.render(posX, posY)
- }
+ override fun render(posX: Int, posY: Int) {
+ Gui.drawRect(0, 10, width, 11, 0xFFFFFFFF.toInt())
+ GlStateManager.color(1F, 1F, 1F, 1F)
+ renderable.render(posX, posY)
}
}
- fun hoverable(hovered: Renderable, unhovered: Renderable): Renderable {
- return object : Renderable {
- override val width: Int
- get() = max(hovered.width, unhovered.width)
+ fun hoverable(hovered: Renderable, unhovered: Renderable) = object : Renderable {
+ override val width: Int
+ get() = max(hovered.width, unhovered.width)
- override fun render(posX: Int, posY: Int) {
- if (isHovered(posX, posY))
- hovered.render(posX, posY)
- else
- unhovered.render(posX, posY)
- }
+ override fun render(posX: Int, posY: Int) {
+ if (isHovered(posX, posY))
+ hovered.render(posX, posY)
+ else
+ unhovered.render(posX, posY)
}
}
- fun itemStack(any: ItemStack, scale: Double = 1.0): Renderable {
- return object : Renderable {
- override val width: Int
- get() = 12
+ fun itemStack(any: ItemStack, scale: Double = 1.0) = object : Renderable {
+ override val width: Int
+ get() = 12
- override fun render(posX: Int, posY: Int) {
- any.renderOnScreen(0F, 0F, scaleMultiplier = scale)
- }
+ override fun render(posX: Int, posY: Int) {
+ any.renderOnScreen(0F, 0F, scaleMultiplier = scale)
}
}
- fun string(string: String): Renderable {
- return object : Renderable {
- override val width: Int
- get() = Minecraft.getMinecraft().fontRendererObj.getStringWidth(string)
+ fun string(string: String) = object : Renderable {
+ override val width: Int
+ get() = Minecraft.getMinecraft().fontRendererObj.getStringWidth(string)
- override fun render(posX: Int, posY: Int) {
- Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow("§f$string", 1f, 1f, 0)
- }
+ override fun render(posX: Int, posY: Int) {
+ Minecraft.getMinecraft().fontRendererObj.drawStringWithShadow("§f$string", 1f, 1f, 0)
}
}
- fun placeholder(width: Int): Renderable {
- return object : Renderable {
- override val width: Int = width
+ fun placeholder(width: Int) = object : Renderable {
+ override val width: Int = width
- override fun render(posX: Int, posY: Int) {
- }
+ override fun render(posX: Int, posY: Int) {
}
}
}