summaryrefslogtreecommitdiff
path: root/src/main/java/com/arslaancodes/arslaansmagichax/modules/ModuleManager.java
diff options
context:
space:
mode:
authorArslaan Pathan <[email protected]>2026-09-26 20:07:04 +1200
committerArslaan Pathan <[email protected]>2026-09-26 20:07:04 +1200
commitf827c24e68361ac100c1b127a53eca1c751a1e7a (patch)
treea0091e8a5db1eab297eddfbfd863f648c98a93e2 /src/main/java/com/arslaancodes/arslaansmagichax/modules/ModuleManager.java
parentfe3b3d2905043cd18c7b659796b34f97530b89ca (diff)
downloadarslaansmagichax-main.tar.xz
arslaansmagichax-main.zip
Full migration to 26.2, working stuffHEADmain
Diffstat (limited to 'src/main/java/com/arslaancodes/arslaansmagichax/modules/ModuleManager.java')
-rw-r--r--src/main/java/com/arslaancodes/arslaansmagichax/modules/ModuleManager.java28
1 files changed, 17 insertions, 11 deletions
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);