diff --git a/src/main/java/cloudburst/rejects/MeteorRejectsAddon.java b/src/main/java/cloudburst/rejects/MeteorRejectsAddon.java index 5e270d9..0bd4d35 100644 --- a/src/main/java/cloudburst/rejects/MeteorRejectsAddon.java +++ b/src/main/java/cloudburst/rejects/MeteorRejectsAddon.java @@ -4,12 +4,14 @@ import minegame159.meteorclient.MeteorAddon; import minegame159.meteorclient.systems.commands.Commands; import minegame159.meteorclient.systems.modules.Category; import minegame159.meteorclient.systems.modules.Modules; +import minegame159.meteorclient.systems.modules.render.hud.HUD; import net.minecraft.item.Items; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import cloudburst.rejects.commands.*; +import cloudburst.rejects.hud.*; import cloudburst.rejects.modules.*; public class MeteorRejectsAddon extends MeteorAddon { @@ -54,6 +56,11 @@ public class MeteorRejectsAddon extends MeteorAddon { commands.add(new SetBlockCommand()); commands.add(new TeleportCommand()); commands.add(new TerrainExport()); + + HUD hud = modules.get(HUD.class); + hud.elements.add(new AppleHud(hud)); + hud.elements.add(new CrystalHud(hud)); + hud.elements.add(new ExpHud(hud)); } @Override diff --git a/src/main/java/cloudburst/rejects/hud/AppleHud.java b/src/main/java/cloudburst/rejects/hud/AppleHud.java new file mode 100644 index 0000000..91c2a99 --- /dev/null +++ b/src/main/java/cloudburst/rejects/hud/AppleHud.java @@ -0,0 +1,47 @@ +package cloudburst.rejects.hud; + +import minegame159.meteorclient.settings.DoubleSetting; +import minegame159.meteorclient.settings.Setting; +import minegame159.meteorclient.settings.SettingGroup; +import minegame159.meteorclient.systems.modules.render.hud.HUD; +import minegame159.meteorclient.systems.modules.render.hud.HudRenderer; +import minegame159.meteorclient.systems.modules.render.hud.modules.HudElement; +import minegame159.meteorclient.utils.player.InvUtils; +import minegame159.meteorclient.utils.render.RenderUtils; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; + +public class AppleHud extends HudElement { + private final SettingGroup sgGeneral = settings.getDefaultGroup(); + + private final Setting scale = sgGeneral.add(new DoubleSetting.Builder() + .name("scale") + .description("Scale of golden apple counter.") + .defaultValue(3) + .min(1) + .sliderMin(1) + .sliderMax(4) + .build() + ); + + public AppleHud(HUD hud) { + super(hud, "apples", "Displays the amount of golden apples in your inventory.", false); + } + + @Override + public void update(HudRenderer renderer) { + box.setSize(16 * scale.get(), 16 * scale.get()); + } + + @Override + public void render(HudRenderer renderer) { + double x = box.getX(); + double y = box.getY(); + + if (isInEditor()) { + RenderUtils.drawItem(Items.GOLDEN_APPLE.getDefaultStack(), (int) x, (int) y, scale.get(), true); + } else if (InvUtils.findItemWithCount(Items.GOLDEN_APPLE).count > 0) { + RenderUtils.drawItem(new ItemStack(Items.GOLDEN_APPLE, InvUtils.findItemWithCount(Items.GOLDEN_APPLE).count), (int) x, (int) y, scale.get(), true); + } + } +} diff --git a/src/main/java/cloudburst/rejects/hud/CrystalHud.java b/src/main/java/cloudburst/rejects/hud/CrystalHud.java new file mode 100644 index 0000000..b717641 --- /dev/null +++ b/src/main/java/cloudburst/rejects/hud/CrystalHud.java @@ -0,0 +1,49 @@ +package cloudburst.rejects.hud; + +import minegame159.meteorclient.settings.DoubleSetting; +import minegame159.meteorclient.settings.Setting; +import minegame159.meteorclient.settings.SettingGroup; +import minegame159.meteorclient.systems.modules.render.hud.HUD; +import minegame159.meteorclient.systems.modules.render.hud.HudRenderer; +import minegame159.meteorclient.systems.modules.render.hud.modules.HudElement; +import minegame159.meteorclient.utils.player.InvUtils; +import minegame159.meteorclient.utils.render.RenderUtils; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; + +//SonyTV was here :) + +public class CrystalHud extends HudElement { + private final SettingGroup sgGeneral = settings.getDefaultGroup(); + + private final Setting scale = sgGeneral.add(new DoubleSetting.Builder() + .name("scale") + .description("Scale of crystal counter.") + .defaultValue(3) + .min(1) + .sliderMin(1) + .sliderMax(4) + .build() + ); + + public CrystalHud(HUD hud) { + super(hud, "crytals", "Displays the amount of crystals in your inventory.", false); + } + + @Override + public void update(HudRenderer renderer) { + box.setSize(16 * scale.get(), 16 * scale.get()); + } + + @Override + public void render(HudRenderer renderer) { + double x = box.getX(); + double y = box.getY(); + + if (isInEditor()) { + RenderUtils.drawItem(Items.END_CRYSTAL.getDefaultStack(), (int) x, (int) y, scale.get(), true); + } else if (InvUtils.findItemWithCount(Items.END_CRYSTAL).count > 0) { + RenderUtils.drawItem(new ItemStack(Items.END_CRYSTAL, InvUtils.findItemWithCount(Items.END_CRYSTAL).count), (int) x, (int) y, scale.get(), true); + } + } +} diff --git a/src/main/java/cloudburst/rejects/hud/ExpHud.java b/src/main/java/cloudburst/rejects/hud/ExpHud.java new file mode 100644 index 0000000..b4541f7 --- /dev/null +++ b/src/main/java/cloudburst/rejects/hud/ExpHud.java @@ -0,0 +1,47 @@ +package cloudburst.rejects.hud; + +import minegame159.meteorclient.settings.DoubleSetting; +import minegame159.meteorclient.settings.Setting; +import minegame159.meteorclient.settings.SettingGroup; +import minegame159.meteorclient.systems.modules.render.hud.HUD; +import minegame159.meteorclient.systems.modules.render.hud.HudRenderer; +import minegame159.meteorclient.systems.modules.render.hud.modules.HudElement; +import minegame159.meteorclient.utils.player.InvUtils; +import minegame159.meteorclient.utils.render.RenderUtils; +import net.minecraft.item.ItemStack; +import net.minecraft.item.Items; + +public class ExpHud extends HudElement { + private final SettingGroup sgGeneral = settings.getDefaultGroup(); + + private final Setting scale = sgGeneral.add(new DoubleSetting.Builder() + .name("scale") + .description("Scale of exp bottle counter.") + .defaultValue(3) + .min(1) + .sliderMin(1) + .sliderMax(4) + .build() + ); + + public ExpHud(HUD hud) { + super(hud, "exp", "Displays the amount of exp bottles in your inventory.", false); + } + + @Override + public void update(HudRenderer renderer) { + box.setSize(16 * scale.get(), 16 * scale.get()); + } + + @Override + public void render(HudRenderer renderer) { + double x = box.getX(); + double y = box.getY(); + + if (isInEditor()) { + RenderUtils.drawItem(Items.EXPERIENCE_BOTTLE.getDefaultStack(), (int) x, (int) y, scale.get(), true); + } else if (InvUtils.findItemWithCount(Items.EXPERIENCE_BOTTLE).count > 0) { + RenderUtils.drawItem(new ItemStack(Items.EXPERIENCE_BOTTLE, InvUtils.findItemWithCount(Items.EXPERIENCE_BOTTLE).count), (int) x, (int) y, scale.get(), true); + } + } +}