diff options
| author | Arslaan Pathan <[email protected]> | 2025-10-09 12:04:21 +1300 |
|---|---|---|
| committer | Arslaan Pathan <[email protected]> | 2025-10-09 12:04:21 +1300 |
| commit | e28913e8c1013008f149fb6dd99f8ff2c1ca2665 (patch) | |
| tree | 2e767f5d0ec2bd0a8b11c185fd32b8c21b032bb0 /src/main/java/net/justlearning/arslaan3102/arslaansmagichax | |
| parent | 6eebfc2a7d6a9c59295ebbab572aff91c0ac7051 (diff) | |
| download | arslaansmagichax-e28913e8c1013008f149fb6dd99f8ff2c1ca2665.tar.xz arslaansmagichax-e28913e8c1013008f149fb6dd99f8ff2c1ca2665.zip | |
new modules, module improvements, G U N THE POWER WOLOLO, clickgui improvements
Diffstat (limited to 'src/main/java/net/justlearning/arslaan3102/arslaansmagichax')
12 files changed, 185 insertions, 16 deletions
diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/ArslaansMagicHaxClient.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/ArslaansMagicHaxClient.java index 868ad89..93b296c 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/ArslaansMagicHaxClient.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/ArslaansMagicHaxClient.java @@ -23,6 +23,8 @@ public class ArslaansMagicHaxClient implements ClientModInitializer { public static Spider spider = new Spider(); public static Speed speed = new Speed(); public static Fullbright fullbright = new Fullbright(); + public static Jetpack jetpack = new Jetpack(); + public static GravityModifier gravityModifier = new GravityModifier(); @Override public void onInitializeClient() { @@ -47,6 +49,8 @@ public class ArslaansMagicHaxClient implements ClientModInitializer { ModuleManager.INSTANCE.register(spider); ModuleManager.INSTANCE.register(speed); ModuleManager.INSTANCE.register(fullbright); + ModuleManager.INSTANCE.register(jetpack); + ModuleManager.INSTANCE.register(gravityModifier); ModuleManager.INSTANCE.registerHUD(); diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/ModuleManager.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/ModuleManager.java index d967274..80176e0 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/ModuleManager.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/ModuleManager.java @@ -35,12 +35,12 @@ public class ModuleManager { boolean isPressed = InputUtil.isKeyPressed(client.getWindow().getHandle(), key); boolean wasPressed = previousKeyState.getOrDefault(module, false); - // Only toggle on **key down** event (edge detection) 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.sendMessage(Text.literal( - "Toggled module " + module.getName() + " to " + (module.isEnabled() ? "ON" : "OFF") + "Toggled module " + module.getName() + " to " + (!wasEnabled ? "ON" : "OFF") ), false); } } diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Flight.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Flight.java index 50c4b5e..e48d9a6 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Flight.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Flight.java @@ -2,6 +2,7 @@ package net.justlearning.arslaan3102.arslaansmagichax.modules.impl; import net.justlearning.arslaan3102.arslaansmagichax.modules.Category; import net.justlearning.arslaan3102.arslaansmagichax.modules.Module; +import net.minecraft.text.Text; import org.lwjgl.glfw.GLFW; public class Flight extends Module { @@ -10,6 +11,12 @@ public class Flight extends Module { } @Override + protected void onEnable() { + if (mc.player == null) return; + mc.player.sendMessage(Text.literal("[Flight] It is recommended to use this hack in combination with NoFall."), false); + } + + @Override public void tick() { if (!this.isEnabled() || mc.player == null) return; diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/GUN.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/GUN.java index 44d3544..5080bc6 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/GUN.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/GUN.java @@ -3,6 +3,10 @@ package net.justlearning.arslaan3102.arslaansmagichax.modules.impl; import net.justlearning.arslaan3102.arslaansmagichax.ArslaansMagicHaxClient; import net.justlearning.arslaan3102.arslaansmagichax.modules.Category; import net.justlearning.arslaan3102.arslaansmagichax.modules.Module; +import net.minecraft.sound.SoundEvent; +import net.minecraft.text.Text; +import net.minecraft.util.Formatting; +import net.minecraft.util.Identifier; public class GUN extends Module { public GUN() { @@ -11,9 +15,18 @@ public class GUN extends Module { @Override protected void onEnable() { + ArslaansMagicHaxClient.clickGUI.setEnabled(false); ArslaansMagicHaxClient.noAttackCooldown.setEnabled(true); ArslaansMagicHaxClient.criticals.setEnabled(true); ArslaansMagicHaxClient.autoClicker.setEnabled(true); this.setEnabled(false); + if (mc.player != null) { + mc.player.sendMessage(Text.literal("[G U N] Enabled NoAttackCooldown, Criticals, AutoClicker"), false); + mc.player.sendMessage(Text.literal("[G U N] Disabled ClickGUI & self (this is a macro module)"), false); + mc.inGameHud.setTitle(Text.literal("G U N").formatted(Formatting.RED)); + mc.inGameHud.setSubtitle(Text.literal("THE POWER").formatted(Formatting.YELLOW)); + mc.player.sendMessage(Text.literal("Tip: when using G U N, if there is no anticheat set AutoClicker mode to NoDelay"), true); + mc.player.playSound(SoundEvent.of(Identifier.of("minecraft:entity.evoker.prepare_wololo")), 100, 1); + } } } diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/GravityModifier.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/GravityModifier.java new file mode 100644 index 0000000..c01e1e7 --- /dev/null +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/GravityModifier.java @@ -0,0 +1,31 @@ +package net.justlearning.arslaan3102.arslaansmagichax.modules.impl; + +import net.justlearning.arslaan3102.arslaansmagichax.modules.Category; +import net.justlearning.arslaan3102.arslaansmagichax.modules.Module; +import net.justlearning.arslaan3102.arslaansmagichax.modules.settings.NumberSetting; +import net.minecraft.text.Text; +import net.minecraft.util.math.Vec3d; +import org.lwjgl.glfw.GLFW; + +public class GravityModifier extends Module { + private NumberSetting gravity = new NumberSetting("Modifier", -1, 1, 0, 0.01); + + public GravityModifier() { + super("Gravity Modifier", "Changes gravity.", GLFW.GLFW_KEY_GRAVE_ACCENT, Category.MOVEMENT); + addSetting(gravity); + } + + @Override + protected void onEnable() { + if (mc.player != null) mc.player.sendMessage(Text.literal("[Gravity Modifier] It is recommended to use this hack with NoFall."), false); + } + + @Override + public void tick() { + if (!this.isEnabled() || mc.player == null) return; + + Vec3d velocity = mc.player.getVelocity(); + Vec3d newVelocity = new Vec3d(velocity.x, velocity.y + gravity.getValue(), velocity.z); + mc.player.setVelocity(newVelocity); + } +} diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Jetpack.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Jetpack.java new file mode 100644 index 0000000..f1b87a2 --- /dev/null +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Jetpack.java @@ -0,0 +1,32 @@ +package net.justlearning.arslaan3102.arslaansmagichax.modules.impl; + +import net.justlearning.arslaan3102.arslaansmagichax.modules.Category; +import net.justlearning.arslaan3102.arslaansmagichax.modules.Module; +import net.justlearning.arslaan3102.arslaansmagichax.modules.settings.NumberSetting; +import net.minecraft.text.Text; +import net.minecraft.util.math.Vec3d; + +public class Jetpack extends Module { + private NumberSetting speed = new NumberSetting("Thrust Speed", 1, 10, 1, 1); + + public Jetpack() { + super("Jetpack", "Turns your jump key into a jetpack.", -1, Category.MOVEMENT); + addSetting(speed); + } + + @Override + protected void onEnable() { + if (mc.player == null) return; + mc.player.sendMessage(Text.literal("[Jetpack] It is recommended to use this hack in combination with NoFall."), false); + } + + @Override + public void tick() { + if (!this.isEnabled() || mc.player == null) return; + + if (mc.options.jumpKey.isPressed()) { + mc.player.setVelocity(new Vec3d(mc.player.getVelocity().x, 0.42 * speed.getValue(), mc.player.getVelocity().z)); + mc.player.fallDistance = 0; + } + } +} diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Speed.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Speed.java index c70c19b..cbb6092 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Speed.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Speed.java @@ -4,6 +4,7 @@ import net.justlearning.arslaan3102.arslaansmagichax.modules.Category; import net.justlearning.arslaan3102.arslaansmagichax.modules.Module; import net.justlearning.arslaan3102.arslaansmagichax.modules.settings.BooleanSetting; import net.justlearning.arslaan3102.arslaansmagichax.modules.settings.NumberSetting; +import net.minecraft.text.Text; public class Speed extends Module { private final NumberSetting speed = new NumberSetting("Speed", 0.1, 2.0, 0.4, 0.05); @@ -20,6 +21,12 @@ public class Speed extends Module { } @Override + protected void onEnable() { + if (mc.player == null) return; + mc.player.sendMessage(Text.literal("[Speed] It is recommended to use this hack in combination with NoFall."), false); + } + + @Override public void tick() { if (!isEnabled() || mc.player == null) return; if (!enableWhileSneaking.isEnabled() && mc.player.isSneaking()) return; diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Spider.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Spider.java index 9ba3e5c..6721e60 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Spider.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/modules/impl/Spider.java @@ -3,11 +3,18 @@ package net.justlearning.arslaan3102.arslaansmagichax.modules.impl; import net.justlearning.arslaan3102.arslaansmagichax.modules.Category; import net.justlearning.arslaan3102.arslaansmagichax.modules.Module; import net.justlearning.arslaan3102.arslaansmagichax.modules.settings.NumberSetting; +import net.minecraft.text.Text; import net.minecraft.util.math.Vec3d; public class Spider extends Module { private NumberSetting climbSpeed = new NumberSetting("Climb Speed", 0, 1, 0.2, 0.1); + @Override + protected void onEnable() { + if (mc.player == null) return; + mc.player.sendMessage(Text.literal("[Spider] It is recommended to use this hack in combination with NoFall."), false); + } + public Spider() { super("Spider", "Allows you to climb walls like a spider.", -1, Category.MOVEMENT); addSetting(climbSpeed); diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/ClickGUIScreen.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/ClickGUIScreen.java index 7c66877..7e55d7d 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/ClickGUIScreen.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/ClickGUIScreen.java @@ -68,6 +68,11 @@ public class ClickGUIScreen extends Screen { } @Override + public boolean shouldPause() { + return false; + } + + @Override public void close() { super.close(); ArslaansMagicHaxClient.clickGUI.setEnabled(false); diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/CheckBox.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/CheckBox.java index e6e3ef7..ed97028 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/CheckBox.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/CheckBox.java @@ -20,10 +20,27 @@ public class CheckBox extends Component { @Override public void render(DrawContext 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()); + String displayText = booleanSetting.getName() + ": " + booleanSetting.isEnabled(); + int textWidth = mc.textRenderer.getWidth(displayText); + int padding = 5; + int boxWidth = Math.max(parent.parent.width, textWidth + (padding * 2)); - context.drawTextWithShadow(mc.textRenderer, Text.literal(booleanSetting.getName() + ": " + booleanSetting.isEnabled()), parent.parent.x + 5, parent.parent.y + parent.offset + offset + (parent.parent.height - mc.textRenderer.fontHeight) / 2, Color.white.getRGB()); + int alpha = isHovered(mouseX, mouseY) ? 230 : 160; + context.fill( + parent.parent.x, + parent.parent.y + parent.offset + offset, + parent.parent.x + boxWidth, + parent.parent.y + parent.offset + offset + parent.parent.height, + new Color(30, 30, 47, alpha).getRGB() + ); + + context.drawTextWithShadow( + mc.textRenderer, + Text.literal(displayText), + parent.parent.x + padding, + parent.parent.y + parent.offset + offset + (parent.parent.height - mc.textRenderer.fontHeight) / 2, + Color.white.getRGB() + ); } @Override diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/ModeBox.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/ModeBox.java index 651cab1..40272bc 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/ModeBox.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/ModeBox.java @@ -19,10 +19,28 @@ public class ModeBox extends Component { @Override public void render(DrawContext 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()); + String displayText = modeSetting.getName() + ": " + modeSetting.getMode(); + int textWidth = mc.textRenderer.getWidth(displayText); + + int padding = 5; + int boxWidth = Math.max(parent.parent.width, textWidth + padding * 2); - context.drawTextWithShadow(mc.textRenderer, Text.literal(modeSetting.getName() + ": " + modeSetting.getMode()), parent.parent.x + 5, parent.parent.y + parent.offset + offset + (parent.parent.height - mc.textRenderer.fontHeight) / 2, Color.white.getRGB()); + int alpha = isHovered(mouseX, mouseY) ? 230 : 160; + context.fill( + parent.parent.x, + parent.parent.y + parent.offset + offset, + parent.parent.x + boxWidth, + parent.parent.y + parent.offset + offset + parent.parent.height, + new Color(30, 30, 47, alpha).getRGB() + ); + + context.drawTextWithShadow( + mc.textRenderer, + Text.literal(displayText), + parent.parent.x + padding, // left padding + parent.parent.y + parent.offset + offset + (parent.parent.height - mc.textRenderer.fontHeight) / 2, + Color.white.getRGB() + ); } @Override diff --git a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/Slider.java b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/Slider.java index ea39ac6..968a2d1 100644 --- a/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/Slider.java +++ b/src/main/java/net/justlearning/arslaan3102/arslaansmagichax/screens/clickgui/setting/Slider.java @@ -23,24 +23,52 @@ public class Slider extends Component { @Override public void render(DrawContext context, int mouseX, int mouseY, float deltaTicks) { + String displayText = numberSetting.getName() + ": " + numberSetting.getValue(); + int defaultPadding = 5; + int boxWidth = parent.parent.width; + 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()); - double diff = Math.min(parent.parent.width, Math.max(0, mouseX - parent.parent.x)); - int renderWidth = (int) (parent.parent.width * (numberSetting.getValue() - numberSetting.getMin()) / (numberSetting.getMax() - numberSetting.getMin())); + context.fill( + parent.parent.x, + parent.parent.y + parent.offset + offset, + parent.parent.x + boxWidth, + parent.parent.y + parent.offset + offset + parent.parent.height, + new Color(30, 30, 47, alpha).getRGB() + ); + + double diff = Math.min(boxWidth, Math.max(0, mouseX - parent.parent.x)); + int renderWidth = (int) (boxWidth * (numberSetting.getValue() - numberSetting.getMin()) / (numberSetting.getMax() - numberSetting.getMin())); - context.fill(parent.parent.x, parent.parent.y + parent.offset + offset, parent.parent.x + renderWidth, parent.parent.y + parent.offset + offset + parent.parent.height, new Color(252, 210, 77, 255).getRGB()); + context.fill( + parent.parent.x, + parent.parent.y + parent.offset + offset, + parent.parent.x + renderWidth, + parent.parent.y + parent.offset + offset + parent.parent.height, + new Color(252, 210, 77, 255).getRGB() + ); if (sliding) { if (diff == 0) { numberSetting.setValue(numberSetting.getMin()); + } else { + numberSetting.setValue(roundToPlace((diff / boxWidth) * (numberSetting.getMax() - numberSetting.getMin()) + numberSetting.getMin(), 1)); } - else { - numberSetting.setValue(roundToPlace((diff / parent.parent.width) * (numberSetting.getMax() - numberSetting.getMin()) + numberSetting.getMin(), 1)); - } } - context.drawTextWithShadow(mc.textRenderer, Text.literal(numberSetting.getName() + ": " + numberSetting.getValue()), parent.parent.x + 5, parent.parent.y + parent.offset + offset + (parent.parent.height - mc.textRenderer.fontHeight) / 2, Color.white.getRGB()); + int textWidth = mc.textRenderer.getWidth(displayText); + int leftPadding = defaultPadding; + if (textWidth + 2 * defaultPadding > boxWidth) { + leftPadding = Math.max(2, boxWidth - textWidth - 2); + } + + context.drawTextWithShadow( + mc.textRenderer, + Text.literal(displayText), + parent.parent.x + leftPadding, + parent.parent.y + parent.offset + offset + (parent.parent.height - mc.textRenderer.fontHeight) / 2, + Color.white.getRGB() + ); } @Override |
