diff --git a/src/main/kotlin/gg/skytils/skytilsmod/core/Config.kt b/src/main/kotlin/gg/skytils/skytilsmod/core/Config.kt index f54ee1eab..4d9fac2b9 100644 --- a/src/main/kotlin/gg/skytils/skytilsmod/core/Config.kt +++ b/src/main/kotlin/gg/skytils/skytilsmod/core/Config.kt @@ -2189,6 +2189,13 @@ object Config : Vigilant( ) var lavaBobber = false + @Property( + type = PropertyType.SWITCH, name = "Fishing Hook Age", + description = "Shows how long your fishing hook has been cast", + category = "Miscellaneous", subcategory = "Quality of Life" + ) + var fishingHookAge = false + @Property( type = PropertyType.SELECTOR, name = "Autopet Message Hider", description = "Removes autopet messages from your chat.", diff --git a/src/main/kotlin/gg/skytils/skytilsmod/features/impl/misc/MiscFeatures.kt b/src/main/kotlin/gg/skytils/skytilsmod/features/impl/misc/MiscFeatures.kt index 83d3c288c..dc1bafd4d 100644 --- a/src/main/kotlin/gg/skytils/skytilsmod/features/impl/misc/MiscFeatures.kt +++ b/src/main/kotlin/gg/skytils/skytilsmod/features/impl/misc/MiscFeatures.kt @@ -19,10 +19,12 @@ package gg.skytils.skytilsmod.features.impl.misc import gg.essential.elementa.utils.withAlpha import gg.essential.universal.UChat +import gg.essential.universal.UMatrixStack import gg.skytils.skytilsmod.Skytils import gg.skytils.skytilsmod.Skytils.Companion.failPrefix import gg.skytils.skytilsmod.Skytils.Companion.mc import gg.skytils.skytilsmod.Skytils.Companion.prefix +import gg.skytils.skytilsmod.core.Config import gg.skytils.skytilsmod.core.GuiManager.createTitle import gg.skytils.skytilsmod.core.structure.GuiElement import gg.skytils.skytilsmod.core.tickTimer @@ -56,6 +58,7 @@ import net.minecraft.entity.effect.EntityLightningBolt import net.minecraft.entity.item.EntityArmorStand import net.minecraft.entity.item.EntityFallingBlock import net.minecraft.entity.item.EntityItem +import net.minecraft.entity.projectile.EntityFishHook import net.minecraft.event.ClickEvent import net.minecraft.event.HoverEvent import net.minecraft.init.Blocks @@ -71,6 +74,7 @@ import net.minecraft.util.ResourceLocation import net.minecraftforge.client.event.ClientChatReceivedEvent import net.minecraftforge.client.event.RenderBlockOverlayEvent import net.minecraftforge.client.event.RenderGameOverlayEvent +import net.minecraftforge.client.event.RenderWorldLastEvent import net.minecraftforge.event.entity.EntityJoinWorldEvent import net.minecraftforge.event.entity.living.EnderTeleportEvent import net.minecraftforge.event.entity.player.ItemTooltipEvent @@ -507,6 +511,17 @@ object MiscFeatures { } } + @SubscribeEvent + fun renderFishingHookAge(event: RenderWorldLastEvent) { + if (Utils.inSkyblock && Config.fishingHookAge) { + mc.theWorld?.getEntities(EntityFishHook::class.java) { entity -> + mc.thePlayer == entity?.angler + }?.filterNotNull()?.forEach { entity -> + RenderUtil.drawLabel(entity.positionVector.addVector(0.0, 0.5, 0.0), "%.2fs".format(entity.ticksExisted / 20.0), Color.WHITE, event.partialTicks, UMatrixStack.Compat.get()) + } + } + } + class GolemSpawnTimerElement : GuiElement("Endstone Protector Spawn Timer", x = 150, y = 20) { override fun render() { val player = mc.thePlayer