diff options
| author | Arslaan Pathan <[email protected]> | 2026-09-26 17:05:36 +1200 |
|---|---|---|
| committer | Arslaan Pathan <[email protected]> | 2026-09-26 17:05:36 +1200 |
| commit | 14c68eb5ba16774f581d95a39e64a7b303954ffc (patch) | |
| tree | 2888ef11f47c6a639d440300ef580c247ad1bcb1 /src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/CheckBox.java | |
| parent | 766ba1c1d977442332cadaaeca93d795baa559df (diff) | |
| download | arslaansmagichax-14c68eb5ba16774f581d95a39e64a7b303954ffc.tar.xz arslaansmagichax-14c68eb5ba16774f581d95a39e64a7b303954ffc.zip | |
migration to 26.2 - run migrateMappings with old loom then bring it back to new
Diffstat (limited to 'src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/CheckBox.java')
| -rw-r--r-- | src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/CheckBox.java | 50 |
1 files changed, 50 insertions, 0 deletions
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 new file mode 100644 index 0000000..2dacd2f --- /dev/null +++ b/src/main/java/com/arslaancodes/arslaansmagichax/screens/clickgui/setting/CheckBox.java @@ -0,0 +1,50 @@ +package com.arslaancodes.arslaansmagichax.screens.clickgui.setting; + +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.GuiGraphics; +import net.minecraft.network.chat.Component; + +public class CheckBox extends Component { + + private BooleanSetting booleanSetting = (BooleanSetting) setting; + + public CheckBox(Setting setting, ModuleButton parent, int offset) { + super(setting, parent, offset); + this.booleanSetting = (BooleanSetting) setting; + } + + @Override + public void render(GuiGraphics context, int mouseX, int mouseY, float deltaTicks) { + String displayText = booleanSetting.getName() + ": " + booleanSetting.isEnabled(); + int textWidth = mc.font.width(displayText); + int padding = 5; + int boxWidth = Math.max(parent.parent.width, textWidth + (padding * 2)); + + 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.drawString( + mc.font, + Component.literal(displayText), + parent.parent.x + padding, + parent.parent.y + parent.offset + offset + (parent.parent.height - mc.font.lineHeight) / 2, + Color.white.getRGB() + ); + } + + @Override + public void mouseClicked(double mouseX, double mouseY, int button) { + if (isHovered(mouseX, mouseY) && button == 0) { + booleanSetting.toggle(); + } + } +} |
