summaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/features/mining
diff options
context:
space:
mode:
authorCalMWolfs <94038482+CalMWolfs@users.noreply.github.com>2024-06-06 11:49:47 +1000
committerGitHub <noreply@github.com>2024-06-06 11:49:47 +1000
commitdc619eea46194955ede129b6a7125be2c1e8fa74 (patch)
treefaa23cfef9c0da8e9870fef0c7c1e71e13d9f74d /src/main/java/at/hannibal2/skyhanni/features/mining
parent4ef946f824817e91bdf9c2e0ae4f201e5c669f63 (diff)
downloadskyhanni-dc619eea46194955ede129b6a7125be2c1e8fa74.tar.gz
skyhanni-dc619eea46194955ede129b6a7125be2c1e8fa74.tar.bz2
skyhanni-dc619eea46194955ede129b6a7125be2c1e8fa74.zip
Backend: Classes -> Objects with annotation (#1982)
Co-authored-by: ThatGravyBoat <thatgravyboat@gmail.com>
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/features/mining')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/ColdOverlay.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/DeepCavernsGuide.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/GoldenGoblinHighlight.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/HighlightMiningCommissionMobs.kt9
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/HotmFeatures.kt8
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/TunnelsMaps.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsNamesInCore.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsWalls.kt97
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/GlacitePowderFeatures.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ProfitPerExcavation.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/CorpseAPI.kt4
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/MineshaftCorpseProfitPer.kt4
13 files changed, 90 insertions, 64 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/ColdOverlay.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/ColdOverlay.kt
index f29337b12..8af757f6e 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/ColdOverlay.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/ColdOverlay.kt
@@ -4,6 +4,7 @@ import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.data.MiningAPI.inColdIsland
import at.hannibal2.skyhanni.events.ColdUpdateEvent
import at.hannibal2.skyhanni.events.GuiRenderEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.DelayedRun
import at.hannibal2.skyhanni.utils.NumberUtil
import at.hannibal2.skyhanni.utils.RenderUtils
@@ -15,7 +16,8 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import org.lwjgl.opengl.GL11
import kotlin.time.Duration.Companion.seconds
-class ColdOverlay {
+@SkyHanniModule
+object ColdOverlay {
private val config get() = SkyHanniMod.feature.mining.coldOverlay
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/DeepCavernsGuide.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/DeepCavernsGuide.kt
index 52549bee6..29cecd5f9 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/DeepCavernsGuide.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/DeepCavernsGuide.kt
@@ -12,6 +12,7 @@ import at.hannibal2.skyhanni.events.IslandChangeEvent
import at.hannibal2.skyhanni.events.LorenzRenderWorldEvent
import at.hannibal2.skyhanni.events.RepositoryReloadEvent
import at.hannibal2.skyhanni.events.render.gui.ReplaceItemEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.ChatUtils
import at.hannibal2.skyhanni.utils.ColorUtils.toChromaColor
import at.hannibal2.skyhanni.utils.ConditionalUtils
@@ -25,7 +26,8 @@ import net.minecraft.client.player.inventory.ContainerLocalMenu
import net.minecraftforge.fml.common.eventhandler.EventPriority
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class DeepCavernsGuide {
+@SkyHanniModule
+object DeepCavernsGuide {
private val config get() = SkyHanniMod.feature.mining.deepCavernsGuide
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/GoldenGoblinHighlight.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/GoldenGoblinHighlight.kt
index 85453e6c7..1d8880cde 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/GoldenGoblinHighlight.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/GoldenGoblinHighlight.kt
@@ -4,6 +4,7 @@ import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.data.mob.Mob
import at.hannibal2.skyhanni.events.LorenzChatEvent
import at.hannibal2.skyhanni.events.MobEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.LorenzColor
import at.hannibal2.skyhanni.utils.LorenzUtils
import at.hannibal2.skyhanni.utils.RegexUtils.matches
@@ -12,7 +13,8 @@ import at.hannibal2.skyhanni.utils.repopatterns.RepoPattern
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import kotlin.time.Duration.Companion.seconds
-class GoldenGoblinHighlight {
+@SkyHanniModule
+object GoldenGoblinHighlight {
private val config get() = SkyHanniMod.feature.mining.highlightYourGoldenGoblin
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/HighlightMiningCommissionMobs.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/HighlightMiningCommissionMobs.kt
index 7268c1925..fd8362d95 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/HighlightMiningCommissionMobs.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/HighlightMiningCommissionMobs.kt
@@ -7,6 +7,7 @@ import at.hannibal2.skyhanni.events.EntityMaxHealthUpdateEvent
import at.hannibal2.skyhanni.events.SecondPassedEvent
import at.hannibal2.skyhanni.events.TabListUpdateEvent
import at.hannibal2.skyhanni.mixins.hooks.RenderLivingEntityHelper
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.ColorUtils.withAlpha
import at.hannibal2.skyhanni.utils.EntityUtils
import at.hannibal2.skyhanni.utils.EntityUtils.hasMaxHealth
@@ -20,13 +21,15 @@ import net.minecraft.entity.monster.EntityMagmaCube
import net.minecraft.entity.monster.EntitySlime
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class HighlightMiningCommissionMobs {
+@SkyHanniModule
+object HighlightMiningCommissionMobs {
private val config get() = SkyHanniMod.feature.mining
- // TODO Commissin API
+
+ // TODO Commission API
private var active = listOf<MobType>()
- // TODO Commissin API
+ // TODO Commission API
enum class MobType(val commissionName: String, val isMob: (EntityLivingBase) -> Boolean) {
// Dwarven Mines
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/HotmFeatures.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/HotmFeatures.kt
index c594312a3..3933e097b 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/HotmFeatures.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/HotmFeatures.kt
@@ -4,14 +4,16 @@ import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.data.HotmData
import at.hannibal2.skyhanni.events.GuiContainerEvent
import at.hannibal2.skyhanni.events.RenderItemTipEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.LorenzColor
import at.hannibal2.skyhanni.utils.LorenzUtils
import at.hannibal2.skyhanni.utils.RenderUtils.highlight
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class HotmFeatures {
+@SkyHanniModule
+object HotmFeatures {
- val config get() = SkyHanniMod.feature.mining.hotm
+ private val config get() = SkyHanniMod.feature.mining.hotm
fun isEnabled() = LorenzUtils.inSkyBlock && HotmData.inInventory
@@ -35,7 +37,7 @@ class HotmFeatures {
private fun handleLevelStackSize(event: RenderItemTipEvent) {
if (!config.levelStackSize) return
- HotmData.entries.firstOrNull() {
+ HotmData.entries.firstOrNull {
event.stack == it.slot?.stack
}?.let {
event.stackTip = if (it.activeLevel == 0 || it.activeLevel == it.maxLevel) "" else
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/TunnelsMaps.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/TunnelsMaps.kt
index 7aed4e607..18d4c250e 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/TunnelsMaps.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/TunnelsMaps.kt
@@ -16,6 +16,7 @@ import at.hannibal2.skyhanni.events.LorenzTickEvent
import at.hannibal2.skyhanni.events.LorenzToolTipEvent
import at.hannibal2.skyhanni.events.LorenzWarpEvent
import at.hannibal2.skyhanni.events.RepositoryReloadEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.test.command.ErrorManager
import at.hannibal2.skyhanni.utils.CollectionUtils.filterNotNullKeys
import at.hannibal2.skyhanni.utils.ColorUtils.getFirstColorCode
@@ -50,7 +51,8 @@ import java.awt.Color
import kotlin.math.roundToInt
import kotlin.time.Duration.Companion.seconds
-class TunnelsMaps {
+@SkyHanniModule
+object TunnelsMaps {
private val config get() = SkyHanniMod.feature.mining.tunnelMaps
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsNamesInCore.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsNamesInCore.kt
index 80b979087..6e17c3006 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsNamesInCore.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsNamesInCore.kt
@@ -4,6 +4,7 @@ import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.data.IslandType
import at.hannibal2.skyhanni.events.LorenzRenderWorldEvent
import at.hannibal2.skyhanni.events.LorenzTickEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.LocationUtils
import at.hannibal2.skyhanni.utils.LocationUtils.distanceToPlayerSqIgnoreY
import at.hannibal2.skyhanni.utils.LorenzUtils.isInIsland
@@ -11,7 +12,8 @@ import at.hannibal2.skyhanni.utils.LorenzVec
import at.hannibal2.skyhanni.utils.RenderUtils.drawDynamicText
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class CrystalHollowsNamesInCore {
+@SkyHanniModule
+object CrystalHollowsNamesInCore {
private val config get() = SkyHanniMod.feature.mining
private val coreLocations = mapOf(
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsWalls.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsWalls.kt
index ef6a66386..cde1e9ccb 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsWalls.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/crystalhollows/CrystalHollowsWalls.kt
@@ -3,6 +3,7 @@ package at.hannibal2.skyhanni.features.mining.crystalhollows
import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.data.IslandType
import at.hannibal2.skyhanni.events.LorenzRenderWorldEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.LorenzColor
import at.hannibal2.skyhanni.utils.LorenzUtils.getCorners
import at.hannibal2.skyhanni.utils.LorenzUtils.isInIsland
@@ -15,12 +16,11 @@ import net.minecraft.util.AxisAlignedBB
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import java.awt.Color
-class CrystalHollowsWalls {
+@SkyHanniModule
+object CrystalHollowsWalls {
private val config get() = SkyHanniMod.feature.mining.crystalHollowsAreaWalls
- fun isEnabled() = config.enabled && IslandType.CRYSTAL_HOLLOWS.isInIsland()
-
private enum class Areas(val color: Color) {
MITHRIL(LorenzColor.GREEN.addOpacity(60)),
PRECURSOR(LorenzColor.BLUE.addOpacity(60)),
@@ -31,58 +31,58 @@ class CrystalHollowsWalls {
;
}
- private val expandTimes = 20
+ private const val EXPAND_TIMES = 20
- private val heatHeight = 64.0
- private val maxHeight = 190.0
+ private const val HEAT_HEIGHT = 64.0
+ private const val MAX_HEIGHT = 190.0
- private val minX = 0.0
- private val middleX = 513.0
- private val maxX = 1024.0
+ private const val MIN_X = 0.0
+ private const val MIDDLE_X = 513.0
+ private const val MAX_X = 1024.0
- private val minZ = 0.0
- private val middleZ = 513.0
- private val maxZ = 1024.0
+ private const val MIN_Z = 0.0
+ private const val MIDDLE_Z = 513.0
+ private const val MAX_Z = 1024.0
private val yViewOffset get() = -Minecraft.getMinecraft().thePlayer.getEyeHeight().toDouble()
// Yes Hypixel has misaligned the nucleus
private val nucleusBB = AxisAlignedBB(
- 463.0, heatHeight, 460.0,
- 560.0, maxHeight, 563.0
+ 463.0, HEAT_HEIGHT, 460.0,
+ 560.0, MAX_HEIGHT, 563.0
)
- private val nucleusBBInflate = nucleusBB.inflateBlock(expandTimes)
- private val nucleusBBExpand = nucleusBB.expandBlock(expandTimes)
+ private val nucleusBBInflate = nucleusBB.inflateBlock(EXPAND_TIMES)
+ private val nucleusBBExpand = nucleusBB.expandBlock(EXPAND_TIMES)
private val nucleusBBOffsetY get() = nucleusBB.offset(0.0, yViewOffset, 0.0)
- private fun Double.shiftPX() = this + LorenzVec.expandVector.x * expandTimes
- private fun Double.shiftNX() = this - LorenzVec.expandVector.x * expandTimes
+ private fun Double.shiftPX() = this + LorenzVec.expandVector.x * EXPAND_TIMES
+ private fun Double.shiftNX() = this - LorenzVec.expandVector.x * EXPAND_TIMES
- private fun Double.shiftPY() = this + LorenzVec.expandVector.y * expandTimes
- private fun Double.shiftNY() = this - LorenzVec.expandVector.y * expandTimes
+ private fun Double.shiftPY() = this + LorenzVec.expandVector.y * EXPAND_TIMES
+ private fun Double.shiftNY() = this - LorenzVec.expandVector.y * EXPAND_TIMES
- private fun Double.shiftPZ() = this + LorenzVec.expandVector.z * expandTimes
- private fun Double.shiftNZ() = this - LorenzVec.expandVector.z * expandTimes
+ private fun Double.shiftPZ() = this + LorenzVec.expandVector.z * EXPAND_TIMES
+ private fun Double.shiftNZ() = this - LorenzVec.expandVector.z * EXPAND_TIMES
@SubscribeEvent
fun onRender(event: LorenzRenderWorldEvent) {
if (!isEnabled()) return
val position = RenderUtils.getViewerPos(event.partialTicks)
- if (position.y < heatHeight + yViewOffset) {
+ if (position.y < HEAT_HEIGHT + yViewOffset) {
drawHeat(event)
} else if (nucleusBBOffsetY.isVecInside(position.toVec3())) {
if (!config.nucleus) return
drawNucleus(event)
- } else if (position.x > middleX) {
- if (position.z > middleZ) {
+ } else if (position.x > MIDDLE_X) {
+ if (position.z > MIDDLE_Z) {
drawPrecursor(event)
} else {
drawMithril((event))
}
} else {
- if (position.z > middleZ) {
+ if (position.z > MIDDLE_Z) {
drawGoblin(event)
} else {
drawJungle(event)
@@ -107,7 +107,7 @@ class CrystalHollowsWalls {
}
private fun drawHeat(event: LorenzRenderWorldEvent) = RenderUtils.QuadDrawer.draw3D(event.partialTicks) {
- val heatHeight = heatHeight.shiftNY()
+ val heatHeight = HEAT_HEIGHT.shiftNY()
draw(
LorenzVec(nucleusBB.minX, heatHeight, nucleusBB.minZ),
LorenzVec(nucleusBB.maxX, heatHeight, nucleusBB.minZ),
@@ -137,49 +137,49 @@ class CrystalHollowsWalls {
draw(
southEastCorner,
southEastTopCorner,
- LorenzVec(nucleusBBInflate.minX, nucleusBBInflate.minY, middleZ),
+ LorenzVec(nucleusBBInflate.minX, nucleusBBInflate.minY, MIDDLE_Z),
Areas.JUNGLE.color
)
draw(
southEastCorner,
southEastTopCorner,
- LorenzVec(middleX, nucleusBBInflate.minY, nucleusBBInflate.minZ),
+ LorenzVec(MIDDLE_X, nucleusBBInflate.minY, nucleusBBInflate.minZ),
Areas.JUNGLE.color
)
draw(
northWestCorner,
northWestTopCorner,
- LorenzVec(nucleusBBInflate.maxX, nucleusBBInflate.minY, middleZ),
+ LorenzVec(nucleusBBInflate.maxX, nucleusBBInflate.minY, MIDDLE_Z),
Areas.PRECURSOR.color
)
draw(
northWestCorner,
northWestTopCorner,
- LorenzVec(middleX, nucleusBBInflate.minY, nucleusBBInflate.maxZ),
+ LorenzVec(MIDDLE_X, nucleusBBInflate.minY, nucleusBBInflate.maxZ),
Areas.PRECURSOR.color
)
draw(
southWestCorner,
southWestTopCorner,
- LorenzVec(nucleusBBInflate.minX, nucleusBBInflate.minY, middleZ),
+ LorenzVec(nucleusBBInflate.minX, nucleusBBInflate.minY, MIDDLE_Z),
Areas.GOBLIN.color,
)
draw(
southWestCorner,
southWestTopCorner,
- LorenzVec(middleX, nucleusBBInflate.minY, nucleusBBInflate.maxZ),
+ LorenzVec(MIDDLE_X, nucleusBBInflate.minY, nucleusBBInflate.maxZ),
Areas.GOBLIN.color
)
draw(
northEastCorner,
northEastTopCorner,
- LorenzVec(nucleusBBInflate.maxX, nucleusBBInflate.minY, middleZ),
+ LorenzVec(nucleusBBInflate.maxX, nucleusBBInflate.minY, MIDDLE_Z),
Areas.MITHRIL.color
)
draw(
northEastCorner,
northEastTopCorner,
- LorenzVec(middleX, nucleusBBInflate.minY, nucleusBBInflate.minZ),
+ LorenzVec(MIDDLE_X, nucleusBBInflate.minY, nucleusBBInflate.minZ),
Areas.MITHRIL.color
)
}
@@ -192,14 +192,14 @@ class CrystalHollowsWalls {
color2: Color,
) {
val nucleusX = if (isMinXEsleMaxX) nucleusBBExpand.minX else nucleusBBExpand.maxX
- val middleX = if (isMinXEsleMaxX) middleX.shiftNX() else middleX.shiftPX()
- val x = if (isMinXEsleMaxX) minX else maxX
+ val middleX = if (isMinXEsleMaxX) MIDDLE_X.shiftNX() else MIDDLE_X.shiftPX()
+ val x = if (isMinXEsleMaxX) MIN_X else MAX_X
val nucleusZ = if (isMinZElseMaxZ) nucleusBBExpand.minZ else nucleusBBExpand.maxZ
- val middleZ = if (isMinZElseMaxZ) middleZ.shiftNZ() else middleZ.shiftPZ()
- val z = if (isMinZElseMaxZ) minZ else maxZ
+ val middleZ = if (isMinZElseMaxZ) MIDDLE_Z.shiftNZ() else MIDDLE_Z.shiftPZ()
+ val z = if (isMinZElseMaxZ) MIN_Z else MAX_Z
- val heatHeight = heatHeight.shiftPY()
+ val heatHeight = HEAT_HEIGHT.shiftPY()
val nucleusBase = LorenzVec(nucleusX, heatHeight, nucleusZ)
@@ -218,26 +218,26 @@ class CrystalHollowsWalls {
)
draw(
nucleusXSideBase,
- LorenzVec(nucleusX, maxHeight, middleZ),
+ LorenzVec(nucleusX, MAX_HEIGHT, middleZ),
LorenzVec(x, heatHeight, middleZ),
color1,
)
draw(
nucleusZSideBase,
- LorenzVec(middleX, maxHeight, nucleusZ),
+ LorenzVec(middleX, MAX_HEIGHT, nucleusZ),
LorenzVec(middleX, heatHeight, z),
color2,
)
draw(
nucleusXSideBase,
nucleusBase,
- LorenzVec(nucleusX, maxHeight, middleZ),
+ LorenzVec(nucleusX, MAX_HEIGHT, middleZ),
Areas.NUCLEUS.color,
)
draw(
nucleusZSideBase,
nucleusBase,
- LorenzVec(middleX, maxHeight, nucleusZ),
+ LorenzVec(middleX, MAX_HEIGHT, nucleusZ),
Areas.NUCLEUS.color,
)
}
@@ -251,11 +251,11 @@ class CrystalHollowsWalls {
color,
heatHeight,
nucleusX = if (isMinXEsleMaxX) nucleusBB.minX else nucleusBB.maxX,
- middleX = if (isMinXEsleMaxX) middleX else middleX,
- x = if (isMinXEsleMaxX) minX else maxX,
+ middleX = if (isMinXEsleMaxX) MIDDLE_X else MIDDLE_X,
+ x = if (isMinXEsleMaxX) MIN_X else MAX_X,
nucleusZ = if (isMinZElseMaxZ) nucleusBB.minZ else nucleusBB.maxZ,
- middleZ = if (isMinZElseMaxZ) middleX else middleX,
- z = if (isMinZElseMaxZ) minZ else maxZ,
+ middleZ = if (isMinZElseMaxZ) MIDDLE_X else MIDDLE_X,
+ z = if (isMinZElseMaxZ) MIN_Z else MAX_Z,
)
private fun RenderUtils.QuadDrawer.drawHeatArea(
@@ -290,4 +290,5 @@ class CrystalHollowsWalls {
)
}
+ private fun isEnabled() = config.enabled && IslandType.CRYSTAL_HOLLOWS.isInIsland()
}
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt
index 2586f2257..fb6e9054a 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ExcavatorProfitTracker.kt
@@ -5,6 +5,7 @@ import at.hannibal2.skyhanni.data.IslandType
import at.hannibal2.skyhanni.events.GuiRenderEvent
import at.hannibal2.skyhanni.events.IslandChangeEvent
import at.hannibal2.skyhanni.events.mining.FossilExcavationEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.ChatUtils
import at.hannibal2.skyhanni.utils.CollectionUtils.addAsSingletonList
import at.hannibal2.skyhanni.utils.ItemUtils.itemName
@@ -23,7 +24,8 @@ import net.minecraft.client.Minecraft
import net.minecraft.client.gui.inventory.GuiChest
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class ExcavatorProfitTracker {
+@SkyHanniModule
+object ExcavatorProfitTracker {
private val config get() = SkyHanniMod.feature.mining.fossilExcavator.profitTracker
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/GlacitePowderFeatures.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/GlacitePowderFeatures.kt
index 568c1d985..161330da5 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/GlacitePowderFeatures.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/GlacitePowderFeatures.kt
@@ -2,6 +2,7 @@ package at.hannibal2.skyhanni.features.mining.fossilexcavator
import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.events.RenderItemTipEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.ItemUtils.cleanName
import at.hannibal2.skyhanni.utils.NumberUtil
import at.hannibal2.skyhanni.utils.NumberUtil.formatLong
@@ -9,7 +10,8 @@ import at.hannibal2.skyhanni.utils.RegexUtils.matchMatcher
import at.hannibal2.skyhanni.utils.repopatterns.RepoPattern
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class GlacitePowderFeatures {
+@SkyHanniModule
+object GlacitePowderFeatures {
private val config get() = SkyHanniMod.feature.mining.fossilExcavator
private val patternGroup = RepoPattern.group("inventory.item.overlay")
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ProfitPerExcavation.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ProfitPerExcavation.kt
index 74fb3be55..ee2b5fab2 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ProfitPerExcavation.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/fossilexcavator/ProfitPerExcavation.kt
@@ -2,6 +2,7 @@ package at.hannibal2.skyhanni.features.mining.fossilexcavator
import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.events.mining.FossilExcavationEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.ChatUtils
import at.hannibal2.skyhanni.utils.CollectionUtils.sortedDesc
import at.hannibal2.skyhanni.utils.ItemUtils.itemName
@@ -11,7 +12,8 @@ import at.hannibal2.skyhanni.utils.NumberUtil
import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class ProfitPerExcavation {
+@SkyHanniModule
+object ProfitPerExcavation {
private val config get() = SkyHanniMod.feature.mining.fossilExcavator
@SubscribeEvent
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/CorpseAPI.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/CorpseAPI.kt
index e8fc4509d..e49ca462f 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/CorpseAPI.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/CorpseAPI.kt
@@ -3,6 +3,7 @@ package at.hannibal2.skyhanni.features.mining.mineshaft
import at.hannibal2.skyhanni.data.IslandType
import at.hannibal2.skyhanni.events.LorenzChatEvent
import at.hannibal2.skyhanni.events.mining.CorpseLootedEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.ItemUtils
import at.hannibal2.skyhanni.utils.LorenzUtils.isInIsland
import at.hannibal2.skyhanni.utils.RegexUtils.matchMatcher
@@ -10,7 +11,8 @@ import at.hannibal2.skyhanni.utils.RegexUtils.matches
import at.hannibal2.skyhanni.utils.repopatterns.RepoPattern
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class CorpseAPI {
+@SkyHanniModule
+object CorpseAPI {
private val patternGroup = RepoPattern.group("mining.mineshaft")
private val chatPatternGroup = patternGroup.group("chat")
diff --git a/src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/MineshaftCorpseProfitPer.kt b/src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/MineshaftCorpseProfitPer.kt
index d8dbe9e28..73771d354 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/MineshaftCorpseProfitPer.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/mining/mineshaft/MineshaftCorpseProfitPer.kt
@@ -2,6 +2,7 @@ package at.hannibal2.skyhanni.features.mining.mineshaft
import at.hannibal2.skyhanni.SkyHanniMod
import at.hannibal2.skyhanni.events.mining.CorpseLootedEvent
+import at.hannibal2.skyhanni.skyhannimodule.SkyHanniModule
import at.hannibal2.skyhanni.utils.ChatUtils
import at.hannibal2.skyhanni.utils.CollectionUtils.sortedDesc
import at.hannibal2.skyhanni.utils.ItemUtils.itemName
@@ -11,7 +12,8 @@ import at.hannibal2.skyhanni.utils.NumberUtil
import at.hannibal2.skyhanni.utils.NumberUtil.addSeparators
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
-class MineshaftCorpseProfitPer {
+@SkyHanniModule
+object MineshaftCorpseProfitPer {
private val config get() = SkyHanniMod.feature.mining.mineshaft
@SubscribeEvent