diff options
| author | Arslaan Pathan <[email protected]> | 2026-09-26 20:07:04 +1200 |
|---|---|---|
| committer | Arslaan Pathan <[email protected]> | 2026-09-26 20:07:04 +1200 |
| commit | f827c24e68361ac100c1b127a53eca1c751a1e7a (patch) | |
| tree | a0091e8a5db1eab297eddfbfd863f648c98a93e2 /src/main/java/com | |
| parent | fe3b3d2905043cd18c7b659796b34f97530b89ca (diff) | |
| download | arslaansmagichax-f827c24e68361ac100c1b127a53eca1c751a1e7a.tar.xz arslaansmagichax-f827c24e68361ac100c1b127a53eca1c751a1e7a.zip | |
Diffstat (limited to 'src/main/java/com')
24 files changed, 99 insertions, 92 deletions
diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/ArslaansMagicHaxClient.java b/src/main/java/com/arslaancodes/arslaansmagichax/ArslaansMagicHaxClient.java index 44bbca6..1e4ba4d 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/ArslaansMagicHaxClient.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/ArslaansMagicHaxClient.java @@ -4,7 +4,6 @@ import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; -import com.arslaancodes.arslaansmagichax.commands.*; import com.arslaancodes.arslaansmagichax.modules.ModuleManager; import com.arslaancodes.arslaansmagichax.modules.impl.*; diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/mixin/PlayerInteractEntityC2SPacketMixin.java b/src/main/java/com/arslaancodes/arslaansmagichax/mixin/ServerboundAttackPacketMixin.java index f6253b3..2c973ba 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/mixin/PlayerInteractEntityC2SPacketMixin.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/mixin/ServerboundAttackPacketMixin.java @@ -1,11 +1,11 @@ package com.arslaancodes.arslaansmagichax.mixin; import com.arslaancodes.arslaansmagichax.mixininterface.IPacket; -import net.minecraft.network.protocol.game.ServerboundInteractPacket; +import net.minecraft.network.protocol.game.ServerboundAttackPacket; import org.spongepowered.asm.mixin.Mixin; -@Mixin(ServerboundInteractPacket.class) -public abstract class PlayerInteractEntityC2SPacketMixin implements IPacket { +@Mixin(ServerboundAttackPacket.class) +public abstract class ServerboundAttackPacketMixin implements IPacket { private int tag = -1; @Override @@ -13,4 +13,4 @@ public abstract class PlayerInteractEntityC2SPacketMixin implements IPacket { @Override public int hax$getTag() { return tag; } -}
\ No newline at end of file +} diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/mixin/SplashTextResourceSupplierMixin.java b/src/main/java/com/arslaancodes/arslaansmagichax/mixin/SplashTextResourceSupplierMixin.java index b927325..12cc57b 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/mixin/SplashTextResourceSupplierMixin.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/mixin/SplashTextResourceSupplierMixin.java @@ -13,10 +13,10 @@ import net.minecraft.client.resources.SplashManager; public class SplashTextResourceSupplierMixin { private static final Random RANDOM = new Random(); - @Inject(method = "getSplash", at = @At("HEAD"), cancellable = true) + /*@Inject(method = "getSplash", at = @At("HEAD"), cancellable = true) public void onGet(CallbackInfoReturnable<SplashRenderer> cir) { String[] splashes = {"\"one can only hope.\"", "hackerman approved", "Cheater!", "totally not malware", "cheats for block game", "dont use /surprise"}; String selected = splashes[RANDOM.nextInt(splashes.length)]; cir.setReturnValue(new SplashRenderer(selected)); - } + }*/ } diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/ModuleManager.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/ModuleManager.java index 4b88206..bf33d44 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/ModuleManager.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/ModuleManager.java @@ -1,10 +1,12 @@ package com.arslaancodes.arslaansmagichax.modules; -import net.fabricmc.fabric.api.client.rendering.v1.HudRenderCallback; +import net.fabricmc.fabric.api.client.rendering.v1.hud.HudElementRegistry; +import net.fabricmc.fabric.api.client.rendering.v1.hud.VanillaHudElements; import net.minecraft.client.DeltaTracker; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.Font; -import net.minecraft.client.DrawContext; +import net.minecraft.resources.Identifier; +import net.minecraft.client.gui.GuiGraphicsExtractor; import net.minecraft.network.chat.Component; import net.minecraft.util.Mth; import com.arslaancodes.arslaansmagichax.ArslaansMagicHax; @@ -26,22 +28,22 @@ public class ModuleManager { public static void handleKeyPresses() { Minecraft client = Minecraft.getInstance(); - if (client.player == null || client.screen != null) return; + if (client.player == null || client.gui.screen() != null) return; for (Module module : modules) { int key = module.getGlfwKeybinding(); if (key == -1) continue; - boolean isPressed = InputConstants.isKeyDown(client.getWindow().getWindow(), key); + boolean isPressed = InputConstants.isKeyDown(client.getWindow(), key); boolean wasPressed = previousKeyState.getOrDefault(module, false); if (isPressed && !wasPressed) { boolean wasEnabled = module.isEnabled(); // use !wasEnabled in the chat message for edge cases e.g. modules that toggle themselves off on enable module.toggle(); if (!Objects.equals(module.getName(), "ClickGUI")) { - client.player.displayClientMessage(Component.literal( + client.player.sendSystemMessage(Component.literal( "Toggled module " + module.getName() + " to " + (!wasEnabled ? "ON" : "OFF") - ), false); + )); } } @@ -78,12 +80,12 @@ public class ModuleManager { public void registerHUD() { if (!hudRegistered) { - HudRenderCallback.EVENT.register(this::onRenderHud); - hudRegistered = true; + HudElementRegistry.attachElementBefore(VanillaHudElements.CHAT,Identifier.fromNamespaceAndPath("arslaansmagichax", "hud"),this::onRenderHud); + hudRegistered = true; } } - private void onRenderHud(DrawContext drawContext, DeltaTracker renderTickCounter) { + private void onRenderHud(GuiGraphicsExtractor drawContext, DeltaTracker renderTickCounter) { if (!ArslaansMagicHaxClient.hideModulesHUD.isEnabled()) { Font textRenderer = Minecraft.getInstance().font; float alpha = 1.0F; @@ -93,12 +95,12 @@ public class ModuleManager { int titleColor = 16568909 | i; // weird magic - drawContext.drawStringWithBackdrop(textRenderer, Component.literal("Arslaan's Magic Hax"), x, y, 50, titleColor); + drawContext.text(textRenderer, Component.literal("Arslaan's Magic Hax"), x, y, titleColor); y += textRenderer.lineHeight + 4; for (Module module : ModuleManager.getEnabledModules()) { int color = 16777215 | i; // more magic I don't understand - drawContext.drawString(textRenderer, Component.literal(module.getName()), x, y, color); + drawContext.text(textRenderer, Component.literal(module.getName()), x, y, color); y += textRenderer.lineHeight + 2; } } @@ -121,6 +123,10 @@ public class ModuleManager { properties.load(fis); for (Module module : modules) { + if (Objects.equals(module.getName(), "ClickGUI")) { + module.setEnabled(false); + continue; + } String enabled = properties.getProperty(module.getName() + ".enabled"); if (Objects.equals(enabled, "true")) { module.setEnabled(true); diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/AutoClicker.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/AutoClicker.java index 7c67201..1269a69 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/AutoClicker.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/AutoClicker.java @@ -25,7 +25,7 @@ public class AutoClicker extends Module { @Override public void tick() { if (!isEnabled() || mc.player == null || mc.level == null) return; - if (mc.screen != null) return; + if (mc.gui.screen() != null) return; HitResult hr = mc.hitResult; if (!(hr instanceof EntityHitResult eResult)) return; diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/ClickGUI.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/ClickGUI.java index 6b86573..dc70a6d 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/ClickGUI.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/ClickGUI.java @@ -13,11 +13,11 @@ public class ClickGUI extends Module { @Override protected void onEnable() { - Minecraft.getInstance().setScreenAndShowAndShow(ClickGUIScreen.INSTANCE); + Minecraft.getInstance().setScreenAndShow(ClickGUIScreen.INSTANCE); } @Override protected void onDisable() { - Minecraft.getInstance().setScreenAndShowAndShow(null); + Minecraft.getInstance().setScreenAndShow(null); } } diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Criticals.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Criticals.java index e8eaa7f..3bd5680 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Criticals.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Criticals.java @@ -7,9 +7,8 @@ import com.arslaancodes.arslaansmagichax.mixininterface.IPacket; import com.arslaancodes.arslaansmagichax.modules.Category; import com.arslaancodes.arslaansmagichax.modules.Module; import com.arslaancodes.arslaansmagichax.modules.settings.ModeSetting; -import net.minecraft.network.packet.c2s.play.*; import net.minecraft.network.protocol.Packet; -import net.minecraft.network.protocol.game.ServerboundInteractPacket; +import net.minecraft.network.protocol.game.ServerboundAttackPacket; import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket; import net.minecraft.network.protocol.game.ServerboundPlayerCommandPacket; import net.minecraft.network.protocol.game.ServerboundPlayerInputPacket; @@ -32,8 +31,7 @@ public class Criticals extends Module { Packet<?> packet = event.packet(); - // mojang did a mojang thing and you cant detect if packet is InteractType.ATTACK anymore so just assume it is and pray it works - if (packet instanceof ServerboundInteractPacket && ((IPacket) packet).hax$getTag() != 1337) { + if (packet instanceof ServerboundAttackPacket && ((IPacket) packet).hax$getTag() != 1337) { event.setCancelled(true); if (Objects.equals(mode.getMode(), "Packet")) { diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Flight.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Flight.java index c1a9125..538f049 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Flight.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Flight.java @@ -17,7 +17,7 @@ public class Flight extends Module { @Override protected void onEnable() { if (mc.player == null) return; - mc.player.displayClientMessage(Component.literal("[Flight] It is recommended to use this hack in combination with NoFall."), false); + mc.player.sendSystemMessage(Component.literal("[Flight] It is recommended to use this hack in combination with NoFall.")); } @Override diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Fullbright.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Fullbright.java index 56b0800..2ccde19 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Fullbright.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Fullbright.java @@ -25,8 +25,8 @@ public class Fullbright extends Module { if (mc.options == null) return; applyMode(mode.getMode()); - if (mc.levelRenderer != null) { - mc.levelRenderer.allChanged(); + if (mc.levelExtractor != null) { + mc.levelExtractor.allChanged(); } } @@ -38,8 +38,8 @@ public class Fullbright extends Module { if (!Objects.equals(currentMode, lastMode)) { applyMode(currentMode); - if (mc.levelRenderer != null) { - mc.levelRenderer.allChanged(); + if (mc.levelExtractor != null) { + mc.levelExtractor.allChanged(); } lastMode = currentMode; @@ -77,8 +77,8 @@ public class Fullbright extends Module { mc.options.gamma().set(previousGamma); - if (mc.levelRenderer != null) { - mc.levelRenderer.allChanged(); + if (mc.levelExtractor != null) { + mc.levelExtractor.allChanged(); } } } diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/GUN.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/GUN.java index 367edeb..b9582b0 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/GUN.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/GUN.java @@ -21,11 +21,9 @@ public class GUN extends Module { ArslaansMagicHaxClient.autoClicker.setEnabled(true); this.setEnabled(false); if (mc.player != null) { - mc.player.displayClientMessage(Component.literal("[G U N] Enabled NoAttackCooldown, Criticals, AutoClicker"), false); - mc.player.displayClientMessage(Component.literal("[G U N] Disabled ClickGUI & self (this is a macro module)"), false); - mc.gui.setTitle(Component.literal("G U N").withStyle(ChatFormatting.RED)); - mc.gui.setSubtitle(Component.literal("THE POWER").withStyle(ChatFormatting.YELLOW)); - mc.player.displayClientMessage(Component.literal("Tip: when using G U N, if there is no anticheat set AutoClicker mode to NoDelay"), true); + mc.player.sendSystemMessage(Component.literal("[G U N] Enabled NoAttackCooldown, Criticals, AutoClicker")); + mc.player.sendSystemMessage(Component.literal("[G U N] Disabled ClickGUI & self (this is a macro module)")); + mc.player.sendSystemMessage(Component.literal("Tip: when using G U N, if there is no anticheat set AutoClicker mode to NoDelay")); mc.player.playSound(SoundEvent.createVariableRangeEvent(Identifier.parse("minecraft:entity.evoker.prepare_wololo")), 100, 1); } } diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/GravityModifier.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/GravityModifier.java index 593963d..9c0f5ab 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/GravityModifier.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/GravityModifier.java @@ -17,7 +17,7 @@ public class GravityModifier extends Module { @Override protected void onEnable() { - if (mc.player != null) mc.player.displayClientMessage(Component.literal("[Gravity Modifier] It is recommended to use this hack with NoFall."), false); + if (mc.player != null) mc.player.sendSystemMessage(Component.literal("[Gravity Modifier] It is recommended to use this hack with NoFall.")); } @Override diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Jetpack.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Jetpack.java index f1c1bbb..a1af3a7 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Jetpack.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Jetpack.java @@ -17,7 +17,7 @@ public class Jetpack extends Module { @Override protected void onEnable() { if (mc.player == null) return; - mc.player.displayClientMessage(Component.literal("[Jetpack] It is recommended to use this hack in combination with NoFall."), false); + mc.player.sendSystemMessage(Component.literal("[Jetpack] It is recommended to use this hack in combination with NoFall.")); } @Override diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/NoPackets.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/NoPackets.java index cd25a3d..ca98cf5 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/NoPackets.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/NoPackets.java @@ -16,7 +16,7 @@ public class NoPackets extends Module { private static void packetEventListener(PacketEvent.Send event) { if (!ArslaansMagicHaxClient.noPackets.isEnabled()) return; - if (mc.player != null) mc.player.displayClientMessage(Component.literal("Cancelled outgoing packet: " + event.packet().getClass().getSimpleName() + " -> " + event.packet()), false); + if (mc.player != null) mc.player.sendSystemMessage(Component.literal("Cancelled outgoing packet: " + event.packet().getClass().getSimpleName() + " -> " + event.packet())); event.setCancelled(true); } diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Speed.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Speed.java index fe2b95f..5fac71b 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Speed.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Speed.java @@ -23,7 +23,7 @@ public class Speed extends Module { @Override protected void onEnable() { if (mc.player == null) return; - mc.player.displayClientMessage(Component.literal("[Speed] It is recommended to use this hack in combination with NoFall."), false); + mc.player.sendSystemMessage(Component.literal("[Speed] It is recommended to use this hack in combination with NoFall.")); } @Override diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Spider.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Spider.java index 87a6e12..d691f45 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Spider.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Spider.java @@ -12,7 +12,7 @@ public class Spider extends Module { @Override protected void onEnable() { if (mc.player == null) return; - mc.player.displayClientMessage(Component.literal("[Spider] It is recommended to use this hack in combination with NoFall."), false); + mc.player.sendSystemMessage(Component.literal("[Spider] It is recommended to use this hack in combination with NoFall.")); } public Spider() { diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Xray.java b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Xray.java index 51e16ca..0499276 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Xray.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/modules/impl/Xray.java @@ -45,15 +45,15 @@ public class Xray extends Module { @Override protected void onEnable() { - if (mc.levelRenderer != null) mc.levelRenderer.allChanged(); + if (mc.levelExtractor != null) mc.levelExtractor.allChanged(); - if (mc.player != null) mc.player.displayClientMessage(Component.literal("[Xray] It is recommended to use this hack with Fullbright for a better experience."), false); + if (mc.player != null) mc.player.sendSystemMessage(Component.literal("[Xray] It is recommended to use this hack with Fullbright for a better experience.")); } @Override protected void onDisable() { - if (mc.levelRenderer != null) mc.levelRenderer.allChanged(); + if (mc.levelExtractor != null) mc.levelExtractor.allChanged(); } public boolean isInterestingBlock(BlockState state) { diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/ClickGUIScreen.java b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/ClickGUIScreen.java index e18c56d..cb94a04 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/ClickGUIScreen.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/ClickGUIScreen.java @@ -2,12 +2,14 @@ package com.arslaancodes.arslaansmagichax.screens.clickgui; import com.arslaancodes.arslaansmagichax.ArslaansMagicHaxClient; import com.arslaancodes.arslaansmagichax.modules.Category; -import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.Component; +import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.SettingComponent; import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.KeybindingSelector; import java.util.ArrayList; import java.util.List; -import net.minecraft.client.gui.DrawContext; +import net.minecraft.client.gui.GuiGraphicsExtractor; import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.input.KeyEvent; +import net.minecraft.client.input.MouseButtonEvent; public class ClickGUIScreen extends Screen { public static final ClickGUIScreen INSTANCE = new ClickGUIScreen(); @@ -27,46 +29,46 @@ public class ClickGUIScreen extends Screen { } @Override - public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + public void extractRenderState(GuiGraphicsExtractor context, int mouseX, int mouseY, float deltaTicks) { for (Frame frame : frames) { frame.render(context, mouseX, mouseY, deltaTicks); frame.updatePosition(mouseX, mouseY); } - super.render(context, mouseX, mouseY, deltaTicks); + super.extractRenderState(context, mouseX, mouseY, deltaTicks); } @Override - public boolean mouseClicked(double mouseX, double mouseY, int button) { + public boolean mouseClicked(MouseButtonEvent event, boolean doubleClick) { for (Frame frame : frames) { - frame.mouseClicked(mouseX, mouseY, button); + frame.mouseClicked(event.x(), event.y(), event.button()); } - return super.mouseClicked(mouseX, mouseY, button); + return super.mouseClicked(event, doubleClick); } @Override - public boolean mouseReleased(double mouseX, double mouseY, int button) { + public boolean mouseReleased(MouseButtonEvent event) { for (Frame frame : frames) { - frame.mouseReleased(mouseX, mouseY, button); + frame.mouseReleased(event.x(), event.y(), event.button()); } - return super.mouseReleased(mouseX, mouseY, button); + return super.mouseReleased(event); } @Override - public boolean keyPressed(int keyCode, int scanCode, int modifiers) { + public boolean keyPressed(KeyEvent event) { for (Frame frame : frames) { if (frame.isOpen) { for (ModuleButton button : frame.getButtons()) { if (button.extended) { - for (Component comp : button.components) { + for (SettingComponent comp : button.components) { if (comp instanceof KeybindingSelector keybindingSelector) { - keybindingSelector.onKeyPressed(keyCode); + keybindingSelector.onKeyPressed(event.key()); } } } } } } - return super.keyPressed(keyCode, scanCode, modifiers); + return super.keyPressed(event); } @Override diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/Frame.java b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/Frame.java index ef3a879..a90b62a 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/Frame.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/Frame.java @@ -3,12 +3,12 @@ package com.arslaancodes.arslaansmagichax.screens.clickgui; import com.arslaancodes.arslaansmagichax.modules.Category; import com.arslaancodes.arslaansmagichax.modules.Module; import com.arslaancodes.arslaansmagichax.modules.ModuleManager; -import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.Component; +import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.SettingComponent; import java.awt.Color; import java.util.ArrayList; import java.util.List; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.DrawContext; +import net.minecraft.client.gui.GuiGraphicsExtractor; public class Frame { public int x, y, width, height, dragX, dragY; @@ -39,14 +39,14 @@ public class Frame { } } - public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + public void render(GuiGraphicsExtractor context, int mouseX, int mouseY, float deltaTicks) { context.fill(x, y, x + width, y + height, new Color(252, 210, 77, 255).getRGB()); String text = category.name(); int textY = y + (height - mc.font.lineHeight) / 2; - context.drawString(mc.font, net.minecraft.network.chat.Component.literal(text), x + 5, textY, new Color(30, 30, 47, 255).getRGB(), false); - context.drawString(mc.font, isOpen ? "-" : "+", x + width - 5 - mc.font.width("+"), textY, new Color(30, 30, 47, 255).getRGB(), false); + context.text(mc.font, net.minecraft.network.chat.Component.literal(text), x + 5, textY, new Color(30, 30, 47, 255).getRGB(), false); + context.text(mc.font, isOpen ? "-" : "+", x + width - 5 - mc.font.width("+"), textY, new Color(30, 30, 47, 255).getRGB(), false); if (isOpen) { for (ModuleButton button : buttons) { @@ -108,7 +108,7 @@ public class Frame { offset += height; if (button.extended) { - for (Component component : button.components) { + for (SettingComponent component : button.components) { if (component.setting != null) { if (component.setting.isVisible()) { offset += height; diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/ModuleButton.java b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/ModuleButton.java index 7f361ca..6d18e3f 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/ModuleButton.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/ModuleButton.java @@ -9,14 +9,14 @@ import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.*; import java.awt.Color; import java.util.ArrayList; import java.util.List; -import net.minecraft.client.gui.DrawContext; +import net.minecraft.client.gui.GuiGraphicsExtractor; public class ModuleButton { public Module module; public Frame parent; public int offset; - public List<Component> components; + public List<SettingComponent> components; public boolean extended; public ModuleButton(Module module, Frame parent, int offset) { @@ -41,7 +41,7 @@ public class ModuleButton { } } - public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + public void render(GuiGraphicsExtractor context, int mouseX, int mouseY, float deltaTicks) { int alpha = isHovered(mouseX, mouseY) ? 230 : 160; context.fill(parent.x, parent.y + offset, parent.x + parent.width, parent.y + offset + parent.height, new Color(30, 30, 47, alpha).getRGB()); @@ -57,10 +57,10 @@ public class ModuleButton { int textColor = module.isEnabled() ? new Color(252, 210, 77, 255).getRGB() : Color.white.getRGB(); - context.drawString(parent.mc.font, net.minecraft.network.chat.Component.literal(text), textX, textY, textColor); + context.text(parent.mc.font, net.minecraft.network.chat.Component.literal(text), textX, textY, textColor); if (extended) { - for (Component component : components) { + for (SettingComponent component : components) { component.render(context, mouseX, mouseY, deltaTicks); } } @@ -77,7 +77,7 @@ public class ModuleButton { } } - for (Component component : components) { + for (SettingComponent component : components) { component.mouseClicked(mouseX, mouseY, button); } } @@ -86,7 +86,7 @@ public class ModuleButton { // luigi wins by doing absolutely nothing // nevermind we did something - for (Component component : components) { + for (SettingComponent component : components) { component.mouseReleased(mouseX, mouseY, button); } } diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/CheckBox.java b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/CheckBox.java index 44b2f06..1223aea 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/CheckBox.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/CheckBox.java @@ -4,10 +4,11 @@ import com.arslaancodes.arslaansmagichax.modules.settings.BooleanSetting; import com.arslaancodes.arslaansmagichax.modules.settings.Setting; import com.arslaancodes.arslaansmagichax.screens.clickgui.ModuleButton; import java.awt.*; -import net.minecraft.client.gui.DrawContext; +import net.minecraft.client.gui.GuiGraphicsExtractor; import net.minecraft.network.chat.Component; +import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.SettingComponent; -public class CheckBox extends Component { +public class CheckBox extends SettingComponent { private BooleanSetting booleanSetting = (BooleanSetting) setting; @@ -17,7 +18,7 @@ public class CheckBox extends Component { } @Override - public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + public void render(GuiGraphicsExtractor context, int mouseX, int mouseY, float deltaTicks) { String displayText = booleanSetting.getName() + ": " + booleanSetting.isEnabled(); int textWidth = mc.font.width(displayText); int padding = 5; @@ -32,7 +33,7 @@ public class CheckBox extends Component { new Color(30, 30, 47, alpha).getRGB() ); - context.drawString( + context.text( mc.font, Component.literal(displayText), parent.parent.x + padding, diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/KeybindingSelector.java b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/KeybindingSelector.java index 59bfe8f..699ec0d 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/KeybindingSelector.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/KeybindingSelector.java @@ -4,9 +4,10 @@ import com.arslaancodes.arslaansmagichax.screens.clickgui.ModuleButton; import org.lwjgl.glfw.GLFW; import java.awt.*; -import net.minecraft.client.gui.DrawContext; +import net.minecraft.client.gui.GuiGraphicsExtractor; +import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.SettingComponent; -public class KeybindingSelector extends Component { +public class KeybindingSelector extends SettingComponent { private boolean listening = false; @@ -15,7 +16,7 @@ public class KeybindingSelector extends Component { } @Override - public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + public void render(GuiGraphicsExtractor context, int mouseX, int mouseY, float deltaTicks) { int alpha = isHovered(mouseX, mouseY) ? 230 : 160; context.fill(parent.parent.x, parent.parent.y + parent.offset + offset, parent.parent.x + parent.parent.width, parent.parent.y + parent.offset + offset + parent.parent.height, new Color(30, 30, 47, alpha).getRGB()); @@ -24,7 +25,7 @@ public class KeybindingSelector extends Component { } String displayText = listening ? "Press a key..." : "Keybind: " + getKeyName(parent.module.getGlfwKeybinding()); - context.drawString(mc.font, displayText, parent.parent.x + 5, parent.parent.y + parent.offset + offset + (parent.parent.height - mc.font.lineHeight) / 2, Color.white.getRGB()); + context.text(mc.font, displayText, parent.parent.x + 5, parent.parent.y + parent.offset + offset + (parent.parent.height - mc.font.lineHeight) / 2, Color.white.getRGB()); } @Override diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/ModeBox.java b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/ModeBox.java index b33374b..815fa47 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/ModeBox.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/ModeBox.java @@ -4,10 +4,11 @@ import com.arslaancodes.arslaansmagichax.modules.settings.ModeSetting; import com.arslaancodes.arslaansmagichax.modules.settings.Setting; import com.arslaancodes.arslaansmagichax.screens.clickgui.ModuleButton; import java.awt.*; -import net.minecraft.client.gui.DrawContext; +import net.minecraft.client.gui.GuiGraphicsExtractor; import net.minecraft.network.chat.Component; +import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.SettingComponent; -public class ModeBox extends Component { +public class ModeBox extends SettingComponent { private ModeSetting modeSetting = (ModeSetting) setting; @@ -17,7 +18,7 @@ public class ModeBox extends Component { } @Override - public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + public void render(GuiGraphicsExtractor context, int mouseX, int mouseY, float deltaTicks) { String displayText = modeSetting.getName() + ": " + modeSetting.getMode(); int textWidth = mc.font.width(displayText); @@ -33,7 +34,7 @@ public class ModeBox extends Component { new Color(30, 30, 47, alpha).getRGB() ); - context.drawString( + context.text( mc.font, Component.literal(displayText), parent.parent.x + padding, // left padding diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/Component.java b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/SettingComponent.java index 2cbe9b8..565cf96 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/Component.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/SettingComponent.java @@ -3,9 +3,9 @@ package com.arslaancodes.arslaansmagichax.screens.clickgui.setting; import com.arslaancodes.arslaansmagichax.modules.settings.Setting; import com.arslaancodes.arslaansmagichax.screens.clickgui.ModuleButton; import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.DrawContext; +import net.minecraft.client.gui.GuiGraphicsExtractor; -public class Component { +public class SettingComponent { public Setting setting; public ModuleButton parent; @@ -13,13 +13,13 @@ public class Component { protected static Minecraft mc = Minecraft.getInstance(); - public Component(Setting setting, ModuleButton parent, int offset) { + public SettingComponent(Setting setting, ModuleButton parent, int offset) { this.setting = setting; this.parent = parent; this.offset = offset; } - public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + public void render(GuiGraphicsExtractor graphics, int mouseX, int mouseY, float deltaTicks) { } diff --git a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/Slider.java b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/Slider.java index 45e1c04..27229a1 100644 --- a/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/Slider.java +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/Slider.java @@ -3,13 +3,14 @@ package com.arslaancodes.arslaansmagichax.screens.clickgui.setting; import com.arslaancodes.arslaansmagichax.modules.settings.NumberSetting; import com.arslaancodes.arslaansmagichax.modules.settings.Setting; import com.arslaancodes.arslaansmagichax.screens.clickgui.ModuleButton; +import com.arslaancodes.arslaansmagichax.screens.clickgui.setting.SettingComponent; import java.awt.*; import java.math.BigDecimal; import java.math.RoundingMode; -import net.minecraft.client.gui.DrawContext; +import net.minecraft.client.gui.GuiGraphicsExtractor; import net.minecraft.network.chat.Component; -public class Slider extends Component { +public class Slider extends SettingComponent { public NumberSetting numberSetting = (NumberSetting) setting; @@ -21,7 +22,7 @@ public class Slider extends Component { } @Override - public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + public void render(GuiGraphicsExtractor context, int mouseX, int mouseY, float deltaTicks) { String displayText = numberSetting.getName() + ": " + numberSetting.getValue(); int defaultPadding = 5; int boxWidth = parent.parent.width; @@ -61,7 +62,7 @@ public class Slider extends Component { leftPadding = Math.max(2, boxWidth - textWidth - 2); } - context.drawString( + context.text( mc.font, Component.literal(displayText), parent.parent.x + leftPadding, |
