diff options
author | Lorenz <ESs95s3P5z8Pheb> | 2022-07-07 00:31:50 +0200 |
---|---|---|
committer | Lorenz <ESs95s3P5z8Pheb> | 2022-07-07 00:31:50 +0200 |
commit | 99773d6a593c444151503de315f127bea6f74d49 (patch) | |
tree | 9ee1ae505e5f82aba62f10c882af85a3acd6e483 /src/main/java/com/thatgravyboat/skyblockhud/overlay/MiningHud.java | |
download | skyhanni-99773d6a593c444151503de315f127bea6f74d49.tar.gz skyhanni-99773d6a593c444151503de315f127bea6f74d49.tar.bz2 skyhanni-99773d6a593c444151503de315f127bea6f74d49.zip |
init lorenz mod
Diffstat (limited to 'src/main/java/com/thatgravyboat/skyblockhud/overlay/MiningHud.java')
-rw-r--r-- | src/main/java/com/thatgravyboat/skyblockhud/overlay/MiningHud.java | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/src/main/java/com/thatgravyboat/skyblockhud/overlay/MiningHud.java b/src/main/java/com/thatgravyboat/skyblockhud/overlay/MiningHud.java new file mode 100644 index 000000000..a3aab50b1 --- /dev/null +++ b/src/main/java/com/thatgravyboat/skyblockhud/overlay/MiningHud.java @@ -0,0 +1,76 @@ +package com.thatgravyboat.skyblockhud.overlay; + +import com.thatgravyboat.skyblockhud.SkyblockHud; +import com.thatgravyboat.skyblockhud.core.config.Position; +import com.thatgravyboat.skyblockhud.textures.Textures; +import com.thatgravyboat.skyblockhud.utils.Utils; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Gui; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraftforge.client.event.RenderGameOverlayEvent; +import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; + +public class MiningHud extends Gui { + + private static int fuel, maxFuel; + private static int heat; + + public static void setFuel(int fuel, int maxFuel) { + MiningHud.fuel = fuel; + MiningHud.maxFuel = maxFuel; + } + + public static void setHeat(int heat) { + MiningHud.heat = heat; + } + + public static int getHeat() { + return heat; + } + + @SubscribeEvent + public void renderOverlay(RenderGameOverlayEvent.Post event) { + if (Utils.overlayShouldRender(event.type, SkyblockHud.hasSkyblockScoreboard(), SkyblockHud.config.mining.showDrillBar || SkyblockHud.config.mining.showHeatBar)) { + Minecraft mc = Minecraft.getMinecraft(); + + if (SkyblockHud.config.mining.barMode == 1) { + if (heat > 0 && Utils.isDrill(mc.thePlayer.getHeldItem()) && SkyblockHud.config.mining.showDrillBar && SkyblockHud.config.mining.showHeatBar) { + renderFuelBar(mc, (event.resolution.getScaledWidth() / 2) - 91, event.resolution.getScaledHeight() - 31); + renderHeatBar(mc, (event.resolution.getScaledWidth() / 2) + 46, event.resolution.getScaledHeight() - 31); + } else if (Utils.isDrill(mc.thePlayer.getHeldItem()) && SkyblockHud.config.mining.showDrillBar) { + renderFuelBar(mc, (event.resolution.getScaledWidth() / 2) - 68, event.resolution.getScaledHeight() - 31); + } else if (heat > 0 && SkyblockHud.config.mining.showHeatBar) { + renderHeatBar(mc, (event.resolution.getScaledWidth() / 2) - 22, event.resolution.getScaledHeight() - 31); + } + } else if (SkyblockHud.config.mining.barMode == 0) { + if (heat > 0 && SkyblockHud.config.mining.showHeatBar) { + Position position = SkyblockHud.config.mining.heatBar; + renderHeatBar(mc, position.getAbsX(event.resolution, 45), position.getAbsY(event.resolution, 7)); + } + if (Utils.isDrill(mc.thePlayer.getHeldItem()) && SkyblockHud.config.mining.showDrillBar) { + Position position = SkyblockHud.config.mining.drillBar; + renderFuelBar(mc, position.getAbsX(event.resolution, 136), position.getAbsY(event.resolution, 7)); + } + } + } + } + + private void renderFuelBar(Minecraft mc, int x, int y) { + if (maxFuel == 0) return; + GlStateManager.enableBlend(); + GlStateManager.color(1.0f, 1.0f, 1.0f, 1.0f); + mc.renderEngine.bindTexture(Textures.texture.mines); + drawTexturedModalRect(x, y, 0, 0, 136, 7); + drawTexturedModalRect(x, y, 0, 7, Utils.lerp((float) fuel / (float) maxFuel, 0, 136), 7); + String percentageText = Math.round(((float) fuel / (float) maxFuel) * 100) + "%"; + this.drawCenteredString(mc.fontRendererObj, percentageText, x + 68, y - 2, 0xffffff); + } + + private void renderHeatBar(Minecraft mc, int x, int y) { + GlStateManager.enableBlend(); + GlStateManager.color(1.0f, 1.0f, 1.0f, 1.0f); + mc.renderEngine.bindTexture(Textures.texture.mines); + drawTexturedModalRect(x, y, 137, 0, 45, 7); + drawTexturedModalRect(x, y, 137, 7, Utils.lerp(heat / 100f, 0, 45), 7); + } +} |