implement legacy hud elements as modules

This commit is contained in:
kawaiizenbo 2024-09-07 20:40:47 -07:00
parent 31ecdd4f04
commit 8f6646b7e0
11 changed files with 165 additions and 11 deletions

View file

@ -0,0 +1,24 @@
package me.kawaiizenbo.moonlight.ui.hud.modules;
import me.kawaiizenbo.moonlight.Moonlight;
import me.kawaiizenbo.moonlight.ui.hud.HUDModule;
import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext;
public class ClientTag extends HUDModule
{
public ClientTag(int x, int y)
{
super("Client Tag", x, y);
this.width = 128;
this.height = 8;
this.enabled = true;
}
@Override
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode, boolean enabled)
{
super.render(drawContext, mouseX, mouseY, textRenderer, editMode, enabled);
drawContext.drawTextWithShadow(mc.textRenderer, Moonlight.clientTag + " " + Moonlight.versionTag, x, y, 16777215);
}
}

View file

@ -0,0 +1,28 @@
package me.kawaiizenbo.moonlight.ui.hud.modules;
import me.kawaiizenbo.moonlight.ui.hud.HUDModule;
import me.kawaiizenbo.moonlight.util.ColorUtils;
import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext;
public class Coordinates extends HUDModule
{
public Coordinates(int x, int y)
{
super("Coordinates", x, y);
this.width = 128;
this.height = 8;
this.enabled = true;
}
@Override
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode, boolean enabled)
{
super.render(drawContext, mouseX, mouseY, textRenderer, editMode, enabled);
drawContext.drawTextWithShadow(mc.textRenderer,
"X: " + ColorUtils.gray + String.format("%.1f", mc.player.getX()) + ColorUtils.reset +
" Y: " + ColorUtils.gray + String.format("%.1f", mc.player.getY()) + ColorUtils.reset +
" Z: " + ColorUtils.gray + String.format("%.1f", mc.player.getZ()), x, y, 0xFF55FFFF
);
}
}

View file

@ -0,0 +1,24 @@
package me.kawaiizenbo.moonlight.ui.hud.modules;
import me.kawaiizenbo.moonlight.ui.hud.HUDModule;
import me.kawaiizenbo.moonlight.util.ColorUtils;
import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext;
public class FPS extends HUDModule
{
public FPS(int x, int y)
{
super("FPS", x, y);
this.width = 48;
this.height = 8;
this.enabled = true;
}
@Override
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode, boolean enabled)
{
super.render(drawContext, mouseX, mouseY, textRenderer, editMode, enabled);
drawContext.drawTextWithShadow(mc.textRenderer, "FPS: " + ColorUtils.gray + mc.fpsDebugString.split(" ")[0], x, y, 0xFF55FFFF);
}
}

View file

@ -0,0 +1,32 @@
package me.kawaiizenbo.moonlight.ui.hud.modules;
import me.kawaiizenbo.moonlight.ui.hud.HUDModule;
import me.kawaiizenbo.moonlight.util.ColorUtils;
import me.kawaiizenbo.moonlight.util.MathUtils;
import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext;
import net.minecraft.util.math.Vec3d;
public class MovementSpeed extends HUDModule
{
public MovementSpeed(int x, int y)
{
super("Movement Speed", x, y);
this.width = 72;
this.height = 8;
this.enabled = true;
}
@Override
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode, boolean enabled)
{
super.render(drawContext, mouseX, mouseY, textRenderer, editMode, enabled);
drawContext.drawTextWithShadow(mc.textRenderer, "Meters/s: " + ColorUtils.gray + MathUtils.round(moveSpeed(), 2), x, y, 0xFF55FFFF);
}
private double moveSpeed()
{
Vec3d move = new Vec3d(mc.player.getX() - mc.player.prevX, 0, mc.player.getZ() - mc.player.prevZ).multiply(20);
return Math.abs(MathUtils.length2D(move)) ;
}
}

View file

@ -0,0 +1,24 @@
package me.kawaiizenbo.moonlight.ui.hud.modules;
import me.kawaiizenbo.moonlight.ui.hud.HUDModule;
import me.kawaiizenbo.moonlight.util.ColorUtils;
import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext;
public class Ping extends HUDModule
{
public Ping(int x, int y)
{
super("Ping", x, y);
this.width = 48;
this.height = 8;
this.enabled = true;
}
@Override
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode, boolean enabled)
{
super.render(drawContext, mouseX, mouseY, textRenderer, editMode, enabled);
drawContext.drawTextWithShadow(mc.textRenderer, "Ping: " + ColorUtils.gray + (mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid()) == null ? 0 : mc.getNetworkHandler().getPlayerListEntry(mc.player.getUuid()).getLatency()), x, y, 0xFF55FFFF);
}
}

View file

@ -10,13 +10,13 @@ public class TestModuleHUD extends HUDModule
{
super("Test HUD Module", x, y);
this.width = 96;
this.height = 12;
this.height = 8;
}
@Override
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode)
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode, boolean enabled)
{
super.render(drawContext, mouseX, mouseY, textRenderer, editMode);
drawContext.drawText(textRenderer, "heloooooo", x, y, 0x55FFFF, false);
super.render(drawContext, mouseX, mouseY, textRenderer, editMode, enabled);
drawContext.drawText(textRenderer, "Text Text Text Test :3", x, y, 0xFFFFFF, false);
}
}