diff options
author | hannibal2 <24389977+hannibal00212@users.noreply.github.com> | 2023-04-13 05:23:39 +0200 |
---|---|---|
committer | hannibal2 <24389977+hannibal00212@users.noreply.github.com> | 2023-04-13 05:23:39 +0200 |
commit | 274bd74d397da5b43b900d0f766ce7825e079061 (patch) | |
tree | 3659a15112bc9dfb6b99b37f7a771f6d66928c26 | |
parent | 127a719e84e866a15a626a39f261da26946aa6fb (diff) | |
download | skyhanni-274bd74d397da5b43b900d0f766ce7825e079061.tar.gz skyhanni-274bd74d397da5b43b900d0f766ce7825e079061.tar.bz2 skyhanni-274bd74d397da5b43b900d0f766ce7825e079061.zip |
code cleanup
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) { } } } |