totem counter and armor on hud

This commit is contained in:
kawaiizenbo 2024-09-09 12:30:56 -07:00
parent 206d076fbb
commit a055d56084
4 changed files with 75 additions and 2 deletions

View file

@ -7,7 +7,7 @@ import net.minecraft.client.MinecraftClient;
import net.minecraft.client.font.TextRenderer; import net.minecraft.client.font.TextRenderer;
import net.minecraft.client.gui.DrawContext; import net.minecraft.client.gui.DrawContext;
public class HUDModule public abstract class HUDModule
{ {
public int x, y, height, width; public int x, y, height, width;
public String name; public String name;

View file

@ -16,7 +16,9 @@ public class HUDModuleManager
new FPS(2, 12), new FPS(2, 12),
new Ping(2, 22), new Ping(2, 22),
new MovementSpeed(2, 32), new MovementSpeed(2, 32),
new Coordinates(2, 42) new Coordinates(2, 42),
new ArmorDisplay(2, 52),
new TotemCounter(20, 52)
//new TestModuleHUD(20, 50) //new TestModuleHUD(20, 50)
); );
} }

View file

@ -0,0 +1,35 @@
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.client.render.item.ItemRenderer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.math.Vec3d;
public class ArmorDisplay extends HUDModule
{
public ArmorDisplay(int x, int y)
{
super("Armor Display", x, y);
this.width = 16;
this.height = 64;
}
@Override
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode, boolean enabled)
{
super.render(drawContext, mouseX, mouseY, textRenderer, editMode, enabled);
int yOffset = 0;
for (int i = 39; i >= 36; i--)
{
ItemStack piece = mc.player.getInventory().getStack(i);
drawContext.drawItem(piece, x, y+yOffset);
drawContext.drawItemInSlot(textRenderer, piece, x, y+yOffset);
yOffset += 16;
}
}
}

View file

@ -0,0 +1,36 @@
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.client.render.item.ItemRenderer;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.util.math.Vec3d;
public class TotemCounter extends HUDModule
{
public TotemCounter(int x, int y)
{
super("Totem Counter", x, y);
this.width = 24;
this.height = 16;
}
@Override
public void render(DrawContext drawContext, int mouseX, int mouseY, TextRenderer textRenderer, boolean editMode, boolean enabled)
{
super.render(drawContext, mouseX, mouseY, textRenderer, editMode, enabled);
int count = 0;
for (int i = 0; i < 36; i++)
{
ItemStack stack = mc.player.getInventory().getStack(i);
if (stack.getItem() == Items.TOTEM_OF_UNDYING) count += stack.getCount();
}
drawContext.drawItem(Items.TOTEM_OF_UNDYING.getDefaultStack(), x, y);
drawContext.drawTextWithShadow(textRenderer, count+"", x+16, y+8, 16777215);
}
}