clean up code and scale font to original size

This commit is contained in:
AFS0021822 2023-07-04 17:14:23 +02:00
parent 0a2c9cd526
commit fb157bd76e
64 changed files with 695 additions and 4164 deletions

View File

@ -10,7 +10,6 @@ SET MC_VEV=1.8.8
SET OPTIFINE_LK=https://raw.githubusercontent.com/Hexeption/Optifine-SRC/master/Optifine%20SRC%20Version%20%5B1.8.8%20HD%20U%20H8%5D.zip SET OPTIFINE_LK=https://raw.githubusercontent.com/Hexeption/Optifine-SRC/master/Optifine%20SRC%20Version%20%5B1.8.8%20HD%20U%20H8%5D.zip
:: Downloading Beta MCP :: Downloading Beta MCP
:: TODO Check if there is already and tmp folder
ECHO Downloading MCP... ECHO Downloading MCP...
DEL tmp /S /Q /F DEL tmp /S /Q /F
MD tmp MD tmp

View File

@ -1,12 +1,13 @@
package net.minecraft.client.renderer; package net.minecraft.client.renderer;
import java.util.Collection;
import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.client.gui.inventory.GuiContainer;
import net.minecraft.client.resources.I18n; import net.minecraft.client.resources.I18n;
import net.minecraft.inventory.Container; import net.minecraft.inventory.Container;
import net.minecraft.potion.Potion; import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect; import net.minecraft.potion.PotionEffect;
import java.util.Collection;
public abstract class InventoryEffectRenderer extends GuiContainer public abstract class InventoryEffectRenderer extends GuiContainer
{ {
/** True if there is some potion effect to display */ /** True if there is some potion effect to display */

View File

@ -1,27 +1,5 @@
package optifine; package optifine;
import java.awt.Dimension;
import java.awt.image.BufferedImage;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.reflect.Array;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Properties;
import java.util.Set;
import java.util.StringTokenizer;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.imageio.ImageIO;
import net.minecraft.client.LoadingScreenRenderer; import net.minecraft.client.LoadingScreenRenderer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.ScaledResolution; import net.minecraft.client.gui.ScaledResolution;
@ -30,11 +8,7 @@ import net.minecraft.client.renderer.RenderGlobal;
import net.minecraft.client.renderer.texture.DynamicTexture; import net.minecraft.client.renderer.texture.DynamicTexture;
import net.minecraft.client.renderer.texture.TextureManager; import net.minecraft.client.renderer.texture.TextureManager;
import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.client.resources.DefaultResourcePack; import net.minecraft.client.resources.*;
import net.minecraft.client.resources.IResource;
import net.minecraft.client.resources.IResourceManager;
import net.minecraft.client.resources.IResourcePack;
import net.minecraft.client.resources.ResourcePackRepository;
import net.minecraft.client.resources.ResourcePackRepository.Entry; import net.minecraft.client.resources.ResourcePackRepository.Entry;
import net.minecraft.client.resources.model.ModelManager; import net.minecraft.client.resources.model.ModelManager;
import net.minecraft.client.settings.GameSettings; import net.minecraft.client.settings.GameSettings;
@ -49,17 +23,22 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.lwjgl.LWJGLException; import org.lwjgl.LWJGLException;
import org.lwjgl.Sys; import org.lwjgl.Sys;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.DisplayMode; import org.lwjgl.opengl.DisplayMode;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.*;
import org.lwjgl.opengl.GL20;
import org.lwjgl.opengl.GL12;
import org.lwjgl.opengl.GL30;
import org.lwjgl.opengl.GLContext;
import org.lwjgl.opengl.PixelFormat;
import org.lwjgl.util.glu.GLU; import org.lwjgl.util.glu.GLU;
import shadersmod.client.Shaders; import shadersmod.client.Shaders;
import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.*;
import java.lang.reflect.Array;
import java.nio.ByteBuffer;
import java.util.List;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Config public class Config
{ {
public static final String OF_NAME = "OptiFine"; public static final String OF_NAME = "OptiFine";
@ -153,7 +132,7 @@ public class Config
{ {
initialized = true; initialized = true;
checkOpenGlCaps(); checkOpenGlCaps();
startVersionCheckThread(); //startVersionCheckThread();
} }
} }
} }

View File

@ -28,12 +28,16 @@ public class AccountManager {
private Account currentAccount; private Account currentAccount;
public AccountManager() { public AccountManager() {
Athena.INSTANCE.sendInitializationMessage("Account Manager", false);
if(Athena.INSTANCE.getACCOUNTS_DIR().length() == 0) { if(Athena.INSTANCE.getACCOUNTS_DIR().length() == 0) {
isFirstLogin = true; isFirstLogin = true;
} }
this.load(); this.load();
this.login(currentAccount); this.login(currentAccount);
Athena.INSTANCE.sendInitializationMessage("Account Manager", true);
} }
public void save() { public void save() {

View File

@ -25,6 +25,8 @@ public class ConfigManager {
protected FileHandler lastFile; protected FileHandler lastFile;
public ConfigManager(File directory) { public ConfigManager(File directory) {
Athena.INSTANCE.sendInitializationMessage("Config Manager", false);
if(!directory.exists()) { if(!directory.exists()) {
directory.mkdir(); directory.mkdir();
} }
@ -40,6 +42,8 @@ public class ConfigManager {
} }
this.directory = directory; this.directory = directory;
Athena.INSTANCE.sendInitializationMessage("Config Manager", true);
} }
public void postInit() { public void postInit() {

View File

@ -21,7 +21,9 @@ public class EventBus {
private final Map<Object, List<Method>> registry; private final Map<Object, List<Method>> registry;
public EventBus() { public EventBus() {
Athena.INSTANCE.sendInitializationMessage("Event Bus", false);
registry = new LinkedHashMap<>(); registry = new LinkedHashMap<>();
Athena.INSTANCE.sendInitializationMessage("Event Bus", true);
} }
public void register(Object clazz) { public void register(Object clazz) {

View File

@ -4,6 +4,7 @@ import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import rip.athena.api.event.SubscribeEvent; import rip.athena.api.event.SubscribeEvent;
import rip.athena.client.Athena;
import rip.athena.client.events.input.KeyDownEvent; import rip.athena.client.events.input.KeyDownEvent;
import rip.athena.client.events.input.MouseDownEvent; import rip.athena.client.events.input.MouseDownEvent;
import rip.athena.client.ui.clickgui.components.mods.MenuModKeybind; import rip.athena.client.ui.clickgui.components.mods.MenuModKeybind;
@ -24,7 +25,10 @@ public class MacroManager {
private List<Macro> macros; private List<Macro> macros;
public MacroManager() { public MacroManager() {
Athena.INSTANCE.sendInitializationMessage("Macro Manager", false);
this.macros = new CopyOnWriteArrayList<>(); this.macros = new CopyOnWriteArrayList<>();
Athena.INSTANCE.sendInitializationMessage("Macro Manager", true);
} }
@SubscribeEvent @SubscribeEvent

View File

@ -24,6 +24,8 @@ public class ModuleRepository {
* Initializes the ModuleManager by scanning for module classes and creating instances. * Initializes the ModuleManager by scanning for module classes and creating instances.
*/ */
public ModuleRepository() { public ModuleRepository() {
Athena.INSTANCE.sendInitializationMessage("Module Repository", false);
Reflections reflections = new Reflections("rip.athena.client.modules"); Reflections reflections = new Reflections("rip.athena.client.modules");
Set<Class<? extends Module>> classes = reflections.getSubTypesOf(Module.class); Set<Class<? extends Module>> classes = reflections.getSubTypesOf(Module.class);
@ -35,6 +37,7 @@ public class ModuleRepository {
e.printStackTrace(); e.printStackTrace();
} }
} }
Athena.INSTANCE.sendInitializationMessage("Module Repository", true);
} }
/** /**

View File

@ -65,7 +65,7 @@ public class Athena {
private EventBus eventBus; private EventBus eventBus;
private boolean isGameRunningForeground = true; private boolean isGameRunningForeground = true;
public static boolean hasSent = false; private boolean hasSent = false;
/** /**
* Initializes the client resources and setup. * Initializes the client resources and setup.
@ -74,6 +74,9 @@ public class Athena {
* connections with servers or other systems. * connections with servers or other systems.
*/ */
public void initClient() { public void initClient() {
sendInitializationMessage("Athena", false);
createDirectoryIfNotExists(MAIN_DIR); createDirectoryIfNotExists(MAIN_DIR);
createFileIfNotExists(ACCOUNTS_DIR); createFileIfNotExists(ACCOUNTS_DIR);
@ -84,6 +87,7 @@ public class Athena {
checkCosmetics(); checkCosmetics();
logInformation(); logInformation();
} }
private void postInit() { private void postInit() {
@ -107,7 +111,7 @@ public class Athena {
this.notificationManager = new NotificationManager(); this.notificationManager = new NotificationManager();
this.cosmeticsController = new CosmeticsController(); this.cosmeticsController = new CosmeticsController();
configManager.postInit(); this.configManager.postInit();
} }
private void checkCosmetics() { private void checkCosmetics() {
@ -117,6 +121,9 @@ public class Athena {
} }
private void logInformation() { private void logInformation() {
if (!debug) return;
Athena.INSTANCE.getLog().info("--------------------------------");
Athena.INSTANCE.getLog().info("Successfully loaded Athena!"); Athena.INSTANCE.getLog().info("Successfully loaded Athena!");
Athena.INSTANCE.getLog().info("--------------------------------"); Athena.INSTANCE.getLog().info("--------------------------------");
Athena.INSTANCE.getLog().info("OS: " + System.getProperty("os.name")); Athena.INSTANCE.getLog().info("OS: " + System.getProperty("os.name"));
@ -136,6 +143,14 @@ public class Athena {
Athena.INSTANCE.getLog().info("--------------------------------"); Athena.INSTANCE.getLog().info("--------------------------------");
} }
public void sendInitializationMessage(String string, boolean finished) {
if (!debug) return;
if(!finished) {
Athena.INSTANCE.getLog().info("--------------------------------");
Athena.INSTANCE.getLog().info("Initializing " + string);
} else Athena.INSTANCE.getLog().info("Initialized " + string);
}
/** /**
* Registers the events for the event bus. * Registers the events for the event bus.
*/ */
@ -211,16 +226,4 @@ public class Athena {
public void shutdownClient() { public void shutdownClient() {
log.info("Shutting down client"); log.info("Shutting down client");
} }
public String getClientBuild() {
return clientBuild;
}
public String getClientName() {
return clientName;
}
public String getClientVersion() {
return clientVersion;
}
} }

View File

@ -1,15 +1,20 @@
package rip.athena.client.config; package rip.athena.client.config;
import java.lang.reflect.Field; import lombok.Getter;
import lombok.Setter;
import rip.athena.api.config.IConfigEntry; import rip.athena.api.config.IConfigEntry;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import java.lang.reflect.Field;
/** /**
* @author Athena Development * @author Athena Development
* @project Athena-Client * @project Athena-Client
* @date 6/6/2023 * @date 6/6/2023
*/ */
@Setter
@Getter
public abstract class AbstractConfigEntry implements IConfigEntry { public abstract class AbstractConfigEntry implements IConfigEntry {
private Field field; private Field field;
private String key; private String key;
@ -22,19 +27,7 @@ public abstract class AbstractConfigEntry implements IConfigEntry {
this.description = description; this.description = description;
this.visible = visible; this.visible = visible;
} }
public Field getField() {
return field;
}
public String getKey() {
return key;
}
public String getDescription() {
return description;
}
public Object getValue(Object obj) { public Object getValue(Object obj) {
try { try {
return getField().get(obj); return getField().get(obj);
@ -45,10 +38,6 @@ public abstract class AbstractConfigEntry implements IConfigEntry {
return null; return null;
} }
public boolean isVisible() {
return visible;
}
public boolean hasDescription() { public boolean hasDescription() {
return description != null && description.length() > 0; return description != null && description.length() > 0;
} }
@ -60,11 +49,6 @@ public abstract class AbstractConfigEntry implements IConfigEntry {
Athena.INSTANCE.getLog().error("Failed to set config value for module " + obj + "." + e); Athena.INSTANCE.getLog().error("Failed to set config value for module " + obj + "." + e);
} }
} }
public void setVisible(boolean visible) {
this.visible = visible;
}
public boolean isInstance(Object object) { public boolean isInstance(Object object) {
if(object.getClass() == getType()) { if(object.getClass() == getType()) {
return true; return true;

View File

@ -1,12 +1,11 @@
package rip.athena.client.config.entries; package rip.athena.client.config.entries;
import java.awt.Color;
import java.lang.reflect.Field;
import org.json.JSONObject; import org.json.JSONObject;
import rip.athena.client.config.AbstractConfigEntry; import rip.athena.client.config.AbstractConfigEntry;
import java.awt.*;
import java.lang.reflect.Field;
/** /**
* @author Athena Development * @author Athena Development
* @project Athena-Client * @project Athena-Client

View File

@ -1,16 +1,18 @@
package rip.athena.client.config.entries; package rip.athena.client.config.entries;
import java.lang.reflect.Field; import lombok.Getter;
import org.json.JSONObject; import org.json.JSONObject;
import rip.athena.client.config.AbstractConfigEntry; import rip.athena.client.config.AbstractConfigEntry;
import java.lang.reflect.Field;
/** /**
* @author Athena Development * @author Athena Development
* @project Athena-Client * @project Athena-Client
* @date 6/6/2023 * @date 6/6/2023
*/ */
@Getter
public class DoubleEntry extends AbstractConfigEntry { public class DoubleEntry extends AbstractConfigEntry {
private double min; private double min;
private double max; private double max;
@ -35,12 +37,4 @@ public class DoubleEntry extends AbstractConfigEntry {
config.put(key, Double.valueOf(String.valueOf(value))); config.put(key, Double.valueOf(String.valueOf(value)));
} }
public double getMin() {
return min;
}
public double getMax() {
return max;
}
} }

View File

@ -1,16 +1,18 @@
package rip.athena.client.config.entries; package rip.athena.client.config.entries;
import java.lang.reflect.Field; import lombok.Getter;
import org.json.JSONObject; import org.json.JSONObject;
import rip.athena.client.config.AbstractConfigEntry; import rip.athena.client.config.AbstractConfigEntry;
import java.lang.reflect.Field;
/** /**
* @author Athena Development * @author Athena Development
* @project Athena-Client * @project Athena-Client
* @date 6/6/2023 * @date 6/6/2023
*/ */
@Getter
public class FloatEntry extends AbstractConfigEntry { public class FloatEntry extends AbstractConfigEntry {
private float min; private float min;
private float max; private float max;
@ -35,12 +37,4 @@ public class FloatEntry extends AbstractConfigEntry {
config.put(key, Float.valueOf(String.valueOf(value))); config.put(key, Float.valueOf(String.valueOf(value)));
} }
public float getMin() {
return min;
}
public float getMax() {
return max;
}
} }

View File

@ -1,16 +1,18 @@
package rip.athena.client.config.entries; package rip.athena.client.config.entries;
import java.lang.reflect.Field; import lombok.Getter;
import org.json.JSONObject; import org.json.JSONObject;
import rip.athena.client.config.AbstractConfigEntry; import rip.athena.client.config.AbstractConfigEntry;
import java.lang.reflect.Field;
/** /**
* @author Athena Development * @author Athena Development
* @project Athena-Client * @project Athena-Client
* @date 6/6/2023 * @date 6/6/2023
*/ */
@Getter
public class IntEntry extends AbstractConfigEntry { public class IntEntry extends AbstractConfigEntry {
private int min; private int min;
private int max; private int max;
@ -41,16 +43,4 @@ public class IntEntry extends AbstractConfigEntry {
config.put(key, Integer.valueOf(String.valueOf(value))); config.put(key, Integer.valueOf(String.valueOf(value)));
} }
public int getMin() {
return min;
}
public int getMax() {
return max;
}
public boolean isKeyBind() {
return isKeyBind;
}
} }

View File

@ -1,19 +1,21 @@
package rip.athena.client.config.entries; package rip.athena.client.config.entries;
import java.lang.reflect.Field; import lombok.Getter;
import org.json.JSONException; import org.json.JSONException;
import org.json.JSONObject; import org.json.JSONObject;
import rip.athena.api.module.Module; import rip.athena.api.module.Module;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.client.config.AbstractConfigEntry; import rip.athena.client.config.AbstractConfigEntry;
import java.lang.reflect.Field;
/** /**
* @author Athena Development * @author Athena Development
* @project Athena-Client * @project Athena-Client
* @date 6/6/2023 * @date 6/6/2023
*/ */
@Getter
public class ListEntry extends AbstractConfigEntry { public class ListEntry extends AbstractConfigEntry {
private Module module; private Module module;
private String[] values; private String[] values;
@ -42,8 +44,4 @@ public class ListEntry extends AbstractConfigEntry {
Athena.INSTANCE.getLog().error("Failed to read list entry for " + module + ", " + getField() + "." + e); Athena.INSTANCE.getLog().error("Failed to read list entry for " + module + ", " + getField() + "." + e);
} }
} }
public String[] getValues() {
return values;
}
} }

View File

@ -1,6 +1,7 @@
package rip.athena.client.cosmetics; package rip.athena.client.cosmetics;
import lombok.Getter; import lombok.Getter;
import rip.athena.client.Athena;
import rip.athena.client.cosmetics.cape.CapeManager; import rip.athena.client.cosmetics.cape.CapeManager;
/** /**
@ -14,6 +15,9 @@ public class CosmeticsController {
private final CapeManager capeManager; private final CapeManager capeManager;
public CosmeticsController() { public CosmeticsController() {
Athena.INSTANCE.sendInitializationMessage("Cosmetics Controller", false);
capeManager = new CapeManager(); capeManager = new CapeManager();
Athena.INSTANCE.sendInitializationMessage("Cosmetics Controller", true);
} }
} }

View File

@ -4,8 +4,8 @@ import org.lwjgl.input.Keyboard;
import rip.athena.api.module.EnumModuleType; import rip.athena.api.module.EnumModuleType;
import rip.athena.api.module.Module; import rip.athena.api.module.Module;
import rip.athena.api.module.annotations.IModuleMetaData; import rip.athena.api.module.annotations.IModuleMetaData;
import rip.athena.client.ui.framework.Menu;
import rip.athena.client.ui.clickgui.IngameMenu; import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.ui.framework.Menu;
/** /**
* @author Athena Development * @author Athena Development

View File

@ -17,12 +17,12 @@ public class MotionBlur extends Module {
@ConfigValue.Integer(name = "Amount", min = 1, max = 10) @ConfigValue.Integer(name = "Amount", min = 1, max = 10)
public static int amount = 1; public static int amount = 1;
public static float f; public static float value;
public static void createAccumulation() { public static void createAccumulation() {
float f = getAccumulationValue(); float value = getAccumulationValue();
GL11.glAccum(GL11.GL_MULT, f); GL11.glAccum(GL11.GL_MULT, value);
GL11.glAccum(GL11.GL_ACCUM, 1.0F - f); GL11.glAccum(GL11.GL_ACCUM, 1.0F - value);
GL11.glAccum(GL11.GL_RETURN, 1.0F); GL11.glAccum(GL11.GL_RETURN, 1.0F);
} }
@ -31,15 +31,15 @@ public class MotionBlur extends Module {
} }
public static float getAccumulationValue() { public static float getAccumulationValue() {
f = getMultiplier() * 10.0F; value = getMultiplier() * 10.0F;
long lastTimestampInGame = System.currentTimeMillis(); long lastTimestampInGame = System.currentTimeMillis();
if (f > 996.0F) { if (value > 996.0F) {
f = 996.0F; value = 996.0F;
} }
if (f > 990.0F) { if (value > 990.0F) {
f = 990.0F; value = 990.0F;
} }
long i = System.currentTimeMillis() - lastTimestampInGame; long i = System.currentTimeMillis() - lastTimestampInGame;
@ -47,11 +47,11 @@ public class MotionBlur extends Module {
if (i > 10000L) { if (i > 10000L) {
return 0.0F; return 0.0F;
} else { } else {
if (f < 0.0F) { if (value < 0.0F) {
f = 0.0F; value = 0.0F;
} }
return f / 1000.0F; return value / 1000.0F;
} }
} }

View File

@ -0,0 +1,96 @@
package rip.athena.client.modules.render;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.resources.I18n;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraft.util.ResourceLocation;
import rip.athena.api.config.ConfigValue;
import rip.athena.api.module.EnumModuleType;
import rip.athena.api.module.Module;
import rip.athena.api.module.annotations.IModuleMetaData;
import rip.athena.client.ui.hud.HUDElement;
import rip.athena.client.utils.font.FontManager;
import rip.athena.client.utils.render.RoundedUtils;
import java.awt.*;
import java.util.Collection;
@IModuleMetaData(name = "Potion Effects", type = EnumModuleType.RENDER, icon = "")
public class PotionEffects extends Module {
@ConfigValue.Boolean(name = "Background")
private boolean background = true;
protected static final ResourceLocation inventoryBackground = new ResourceLocation("textures/gui/container/inventory.png");
HUDElement hud;
private int width = 140;
private int height = 32;
public PotionEffects() {
hud = new HUDElement("potioneffects", width, height) {
@Override
public void onRender() {
render();
}
};
hud.setX(5);
hud.setY(300);
addHUD(hud);
}
private void render() {
int x = hud.getX();
int y = hud.getY();
int width = hud.getWidth();
int height = hud.getHeight();
Collection<PotionEffect> collection = mc.thePlayer.getActivePotionEffects();
if (!collection.isEmpty()) {
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
GlStateManager.disableLighting();
int spacing = 35;
if (collection.size() > 5) {
spacing = 132 / (collection.size() - 1);
}
for (PotionEffect potioneffect : mc.thePlayer.getActivePotionEffects()) {
Potion potion = Potion.potionTypes[potioneffect.getPotionID()];
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
mc.getTextureManager().bindTexture(inventoryBackground);
if(background) {
RoundedUtils.drawRound(x, y, width, height, 6, new Color(0, 0, 0, 150));
}
if (potion.hasStatusIcon()) {
int statusIconIndex = potion.getStatusIconIndex();
//Gui.drawTexturedModalRect(x, y + 7, statusIconIndex % 8 * 18, 198 + statusIconIndex / 8 * 18, 18, 18);
}
String s1 = I18n.format(potion.getName());
if (potioneffect.getAmplifier() == 1) {
s1 = s1 + " " + I18n.format("enchantment.level.2");
} else if (potioneffect.getAmplifier() == 2) {
s1 = s1 + " " + I18n.format("enchantment.level.3");
} else if (potioneffect.getAmplifier() == 3) {
s1 = s1 + " " + I18n.format("enchantment.level.4");
}
FontManager.getProductSansRegular(20).drawString(s1, x + 28, y + 6, -1);
String s = Potion.getDurationString(potioneffect);
FontManager.getProductSansRegular(20).drawString(s, (float) (x + 10 + 18), (float) (y + 6 + 10), -1);
// Spacing between each element
y += spacing;
}
}
}
}

View File

@ -1,5 +1,6 @@
package rip.athena.client.modules.render; package rip.athena.client.modules.render;
import com.google.common.base.Predicate;
import com.google.common.collect.Iterables; import com.google.common.collect.Iterables;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiScreen;
@ -9,24 +10,22 @@ import net.minecraft.scoreboard.ScoreObjective;
import net.minecraft.scoreboard.ScorePlayerTeam; import net.minecraft.scoreboard.ScorePlayerTeam;
import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.EnumChatFormatting;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
import rip.athena.api.config.ConfigValue;
import rip.athena.api.event.SubscribeEvent;
import rip.athena.api.module.EnumModuleType; import rip.athena.api.module.EnumModuleType;
import rip.athena.api.module.Module; import rip.athena.api.module.Module;
import rip.athena.api.module.annotations.IModuleMetaData; import rip.athena.api.module.annotations.IModuleMetaData;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.api.config.ConfigValue;
import rip.athena.api.event.SubscribeEvent;
import rip.athena.client.events.render.RenderEvent; import rip.athena.client.events.render.RenderEvent;
import rip.athena.client.events.render.RenderType; import rip.athena.client.events.render.RenderType;
import rip.athena.client.ui.hud.HUDElement; import rip.athena.client.ui.hud.HUDElement;
import rip.athena.client.utils.render.ColorUtil;
import rip.athena.client.utils.render.RoundedUtils;
import java.awt.*; import java.awt.*;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import com.google.common.base.Predicate;
import rip.athena.client.utils.render.ColorUtil;
import rip.athena.client.utils.render.RoundedUtils;
/** /**
* @author Athena Development * @author Athena Development
* @project Athena-Client * @project Athena-Client
@ -144,7 +143,6 @@ public class Scoreboard extends Module {
hud.setY(yPos); hud.setY(yPos);
} }
if(background) { if(background) {
if(backgroundMode.equalsIgnoreCase("Modern")) { if(backgroundMode.equalsIgnoreCase("Modern")) {
if(Athena.INSTANCE.getThemeManager().getTheme().isTriColor()) { if(Athena.INSTANCE.getThemeManager().getTheme().isTriColor()) {
@ -171,7 +169,6 @@ public class Scoreboard extends Module {
int l = hud.getX() + hud.getWidth(); int l = hud.getX() + hud.getWidth();
if(background && backgroundMode.equalsIgnoreCase("Default")) { if(background && backgroundMode.equalsIgnoreCase("Default")) {
GuiScreen.drawRectangle(l1 - 2, k, l, k + mc.fontRendererObj.FONT_HEIGHT, 1342177280); GuiScreen.drawRectangle(l1 - 2, k, l, k + mc.fontRendererObj.FONT_HEIGHT, 1342177280);
} }

View File

@ -51,7 +51,7 @@ public enum AccentTheme implements ColorUtil {
BUBBLEGUM("Bubblegum", new Color(243, 145, 216), new Color(152, 165, 243), LIGHT_PURPLE, false, KeyColors.PINK, KeyColors.PURPLE), BUBBLEGUM("Bubblegum", new Color(243, 145, 216), new Color(152, 165, 243), LIGHT_PURPLE, false, KeyColors.PINK, KeyColors.PURPLE),
CANDY_CANE("Candy Cane", new Color(255, 255, 255), new Color(255, 0, 0), RED, false, KeyColors.RED), CANDY_CANE("Candy Cane", new Color(255, 255, 255), new Color(255, 0, 0), RED, false, KeyColors.RED),
CHERRY("Cherry", new Color(187, 55, 125), new Color(251, 211, 233), RED, false, KeyColors.RED, KeyColors.PURPLE, KeyColors.PINK), CHERRY("Cherry", new Color(187, 55, 125), new Color(251, 211, 233), RED, false, KeyColors.RED, KeyColors.PURPLE, KeyColors.PINK),
CHRISTMAS("Christmas", new Color(255, 64, 64), new Color(255, 255, 255), new Color(64, 255, 64), RED, true, KeyColors.RED, KeyColors.LIME), CHRISTMAS("Christmas", new Color(255, 64, 64), new Color(255, 255, 255), RED, true, KeyColors.RED, KeyColors.LIME),
CORAL("Coral", new Color(244, 168, 150), new Color(52, 133, 151), DARK_AQUA, false, KeyColors.PINK, KeyColors.ORANGE, KeyColors.DARK_BLUE), CORAL("Coral", new Color(244, 168, 150), new Color(52, 133, 151), DARK_AQUA, false, KeyColors.PINK, KeyColors.ORANGE, KeyColors.DARK_BLUE),
DIGITAL_HORIZON("Digital Horizon", new Color(95, 195, 228), new Color(229, 93, 135), EnumChatFormatting.AQUA, false, KeyColors.AQUA, KeyColors.RED, KeyColors.PINK), DIGITAL_HORIZON("Digital Horizon", new Color(95, 195, 228), new Color(229, 93, 135), EnumChatFormatting.AQUA, false, KeyColors.AQUA, KeyColors.RED, KeyColors.PINK),
EXPRESS("Express", new Color(173, 83, 137), new Color(60, 16, 83), DARK_PURPLE, false, KeyColors.PURPLE, KeyColors.PINK), EXPRESS("Express", new Color(173, 83, 137), new Color(60, 16, 83), DARK_PURPLE, false, KeyColors.PURPLE, KeyColors.PINK),
@ -97,18 +97,6 @@ public enum AccentTheme implements ColorUtil {
this.triColor = triColor; this.triColor = triColor;
} }
public Color getFirstColor() {
return firstColor;
}
public Color getSecondColor() {
return secondColor;
}
public Color getThirdColor() {
return thirdColor;
}
/** /**
* Calculates the accent color at a specific screen point. Depending on the position on the screen, the * Calculates the accent color at a specific screen point. Depending on the position on the screen, the
* accent has a slightly different color (blending between the two or three accent colors) to create an * accent has a slightly different color (blending between the two or three accent colors) to create an
@ -135,23 +123,6 @@ public enum AccentTheme implements ColorUtil {
return ColorUtil.mixColors(getFirstColor(), getSecondColor(), getBlendFactor(screenCoordinates)); return ColorUtil.mixColors(getFirstColor(), getSecondColor(), getBlendFactor(screenCoordinates));
} }
public double getWaveFactor(Vector2d screenCoordinates) {
double waveLength = 200.0; // Adjust this value to control the wavelength of the wave
double waveSpeed = 0.01; // Adjust this value to control the speed of the wave
double offsetX = (screenCoordinates.getX() / waveLength) - (System.currentTimeMillis() * waveSpeed);
double waveOffset = Math.sin(offsetX);
return (waveOffset + 1.0) / 2.0; // Normalize the wave offset to the range [0, 1]
}
private Color getColorFromWave(double waveFactor) {
// Interpolate between the first and second color using the wave factor
int red = (int) (getFirstColor().getRed() + waveFactor * (getSecondColor().getRed() - getFirstColor().getRed()));
int green = (int) (getFirstColor().getGreen() + waveFactor * (getSecondColor().getGreen() - getFirstColor().getGreen()));
int blue = (int) (getFirstColor().getBlue() + waveFactor * (getSecondColor().getBlue() - getFirstColor().getBlue()));
return new Color(red, green, blue);
}
public Color getAccentColorWave(Vector2d screenCoordinates) { public Color getAccentColorWave(Vector2d screenCoordinates) {
double waveIntensity = 0.5; // Adjust this value to control the intensity of the wave double waveIntensity = 0.5; // Adjust this value to control the intensity of the wave
@ -187,10 +158,6 @@ public enum AccentTheme implements ColorUtil {
return 4; return 4;
} }
public Color getDropShadow() {
return new Color(0, 0, 0, 160);
}
/** /**
* Determines the blending factor between the themes two accent colors at a specific screen coordinate * Determines the blending factor between the themes two accent colors at a specific screen coordinate
* *
@ -227,5 +194,4 @@ public enum AccentTheme implements ColorUtil {
private final Color color; private final Color color;
} }
} }

View File

@ -14,6 +14,7 @@ public enum Category {
PROFILES("PROFILES", "Athena/gui/menu/profiles.png"), PROFILES("PROFILES", "Athena/gui/menu/profiles.png"),
COSMETICS("COSMETICS", "Athena/gui/menu/cosmetics.png"), COSMETICS("COSMETICS", "Athena/gui/menu/cosmetics.png"),
//COSMETICS("COSMETICS", "Athena/gui/menu/cosmetics.png"), //COSMETICS("COSMETICS", "Athena/gui/menu/cosmetics.png"),
SCREENSHOTS("SCREENSHOTS", "Athena/gui/menu/themes.png"),
THEMES("THEMES", "Athena/gui/menu/themes.png"); THEMES("THEMES", "Athena/gui/menu/themes.png");
private String name; private String name;

View File

@ -1,24 +1,22 @@
package rip.athena.client.ui.clickgui; package rip.athena.client.ui.clickgui;
import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.util.ResourceLocation;
import rip.athena.api.config.save.Config;
import rip.athena.api.module.Module; import rip.athena.api.module.Module;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.api.config.save.Config; import rip.athena.client.modules.other.Settings;
import rip.athena.client.theme.impl.PrimaryTheme; import rip.athena.client.theme.impl.PrimaryTheme;
import rip.athena.client.ui.clickgui.components.mods.ModCategoryButton; import rip.athena.client.ui.clickgui.components.mods.CategoryButton;
import rip.athena.client.ui.clickgui.pages.ModsPage; import rip.athena.client.ui.clickgui.pages.ModsPage;
import rip.athena.client.ui.framework.Menu; import rip.athena.client.ui.framework.Menu;
import rip.athena.client.ui.framework.MenuComponent; import rip.athena.client.ui.framework.MenuComponent;
import rip.athena.client.ui.framework.MinecraftMenuImpl; import rip.athena.client.ui.framework.MinecraftMenuImpl;
import rip.athena.client.ui.framework.components.MenuButton; import rip.athena.client.ui.framework.components.MenuButton;
import rip.athena.client.ui.framework.components.MenuCheckbox;
import rip.athena.client.ui.framework.components.MenuDraggable; import rip.athena.client.ui.framework.components.MenuDraggable;
import rip.athena.client.ui.framework.components.MenuScrollPane; import rip.athena.client.ui.framework.components.MenuScrollPane;
import rip.athena.client.ui.framework.draw.DrawImpl; import rip.athena.client.ui.framework.draw.DrawImpl;
import rip.athena.client.ui.clickgui.components.mods.CategoryButton;
import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.util.ResourceLocation;
import rip.athena.client.modules.other.Settings;
import rip.athena.client.utils.render.ColorUtil; import rip.athena.client.utils.render.ColorUtil;
import rip.athena.client.utils.render.RoundedUtils; import rip.athena.client.utils.render.RoundedUtils;
@ -147,7 +145,13 @@ public class IngameMenu extends MinecraftMenuImpl implements DrawImpl {
} }
RoundedUtils.drawRoundedRect(menu.getX(), menu.getY(), menu.getX() + menu.getWidth(), menu.getY() + menu.getHeight(), 16, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getFirstColor()); RoundedUtils.drawRoundedRect(menu.getX(), menu.getY(), menu.getX() + menu.getWidth(), menu.getY() + menu.getHeight(), 16, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getFirstColor());
rip.athena.client.utils.font.FontManager.getProductSansBold(60).drawString(Athena.INSTANCE.getClientName(), menu.getX() + 40, menu.getY() + 17, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.pushMatrix();
GlStateManager.translate(menu.getX() - 40, menu.getY() - 20, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-menu.getX(), -menu.getY(), 0);
rip.athena.client.utils.font.FontManager.getProductSansBold(40).drawString(Athena.INSTANCE.getClientName(), menu.getX() + 40, menu.getY() + 17, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.popMatrix();
drawVerticalLine(menu.getX() + 215, menu.getY() + 60, menu.getHeight() - 60, 3, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getSecondColor()); drawVerticalLine(menu.getX() + 215, menu.getY() + 60, menu.getHeight() - 60, 3, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getSecondColor());
drawShadowDown(menu.getX(), menu.getY() + 58, menu.getWidth()); drawShadowDown(menu.getX(), menu.getY() + 58, menu.getWidth());

View File

@ -34,6 +34,7 @@ public class PageManager {
//pages.put(Category.WAYPOINTS, new WaypointsPage(mc, menu, parent)); //pages.put(Category.WAYPOINTS, new WaypointsPage(mc, menu, parent));
pages.put(Category.PROFILES, new ProfilesPage(mc, menu, parent)); pages.put(Category.PROFILES, new ProfilesPage(mc, menu, parent));
pages.put(Category.COSMETICS, new CosmeticsPage(mc, menu, parent)); pages.put(Category.COSMETICS, new CosmeticsPage(mc, menu, parent));
pages.put(Category.SCREENSHOTS, new ScreenshotsPage(mc, menu, parent));
pages.put(Category.THEMES, new ThemesPage(mc, menu, parent)); pages.put(Category.THEMES, new ThemesPage(mc, menu, parent));
} }

View File

@ -59,8 +59,8 @@ public class CapeButton extends MenuButton {
int y = this.getRenderY(); int y = this.getRenderY();
int width = this.width; int width = this.width;
RoundedUtils.drawGradientRound(x, y, width, height, 18, ColorUtil.getClientColor(0, 255), ColorUtil.getClientColor(90, 255), ColorUtil.getClientColor(180, 255), ColorUtil.getClientColor(270, 255)); RoundedUtils.drawGradientRound(x, y, width, height, 10, ColorUtil.getClientColor(0, 255), ColorUtil.getClientColor(90, 255), ColorUtil.getClientColor(180, 255), ColorUtil.getClientColor(270, 255));
RoundedUtils.drawRound(x + 1, y + 1, width - 2, height - 2, 16, new Color(Athena.INSTANCE.getThemeManager().getPrimaryTheme().getThirdColor())); RoundedUtils.drawRound(x + 1, y + 1, width - 2, height - 2, 8, new Color(Athena.INSTANCE.getThemeManager().getPrimaryTheme().getThirdColor()));
if (!cape.getName().equals("None")) { if (!cape.getName().equals("None")) {
DrawUtils.drawImage(cape.getDisplayTexture(), x + 25, y + 15, width - 50, height - 50); DrawUtils.drawImage(cape.getDisplayTexture(), x + 25, y + 15, width - 50, height - 50);

View File

@ -3,10 +3,10 @@ package rip.athena.client.ui.clickgui.components.macros;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.GlStateManager;
import rip.athena.api.font.FontManager; import rip.athena.api.font.FontManager;
import rip.athena.client.modules.other.Settings;
import rip.athena.client.ui.framework.components.MenuButton; import rip.athena.client.ui.framework.components.MenuButton;
import rip.athena.client.ui.framework.draw.ButtonState; import rip.athena.client.ui.framework.draw.ButtonState;
import rip.athena.client.ui.framework.draw.DrawType; import rip.athena.client.ui.framework.draw.DrawType;
import rip.athena.client.modules.other.Settings;
import rip.athena.client.utils.render.DrawUtils; import rip.athena.client.utils.render.DrawUtils;
import java.awt.*; import java.awt.*;
@ -81,7 +81,12 @@ public class MacroButton extends MenuButton {
@Override @Override
public void drawText(String text, int x, int y, int color) { public void drawText(String text, int x, int y, int color) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString(text, x, y, color); GlStateManager.pushMatrix();
GlStateManager.translate(x, y,0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(18).drawString(text, x, y, color);
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString(text, x, y, color); Minecraft.getMinecraft().fontRendererObj.drawString(text, x, y, color);
} }
@ -90,7 +95,7 @@ public class MacroButton extends MenuButton {
@Override @Override
public int getStringWidth(String string) { public int getStringWidth(String string) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
return (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width(string); return (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(35).width(string);
} else { } else {
return Minecraft.getMinecraft().fontRendererObj.getStringWidth(string); return Minecraft.getMinecraft().fontRendererObj.getStringWidth(string);
} }

View File

@ -79,7 +79,12 @@ public class SimpleTextButton extends MenuButton {
@Override @Override
public void drawText(String string, int x, int y, int color) { public void drawText(String string, int x, int y, int color) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString(string, x - 3, y, color); GlStateManager.pushMatrix();
GlStateManager.translate(x, y,0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(18).drawString(text, x - 2, y, color);
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString(string, x, y, color); Minecraft.getMinecraft().fontRendererObj.drawString(string, x, y, color);
} }

View File

@ -4,12 +4,11 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.client.ui.clickgui.IngameMenu; import rip.athena.client.modules.other.Settings;
import rip.athena.client.ui.clickgui.Category;
import rip.athena.client.ui.framework.components.MenuButton; import rip.athena.client.ui.framework.components.MenuButton;
import rip.athena.client.ui.framework.draw.ButtonState; import rip.athena.client.ui.framework.draw.ButtonState;
import rip.athena.client.ui.framework.draw.DrawType; import rip.athena.client.ui.framework.draw.DrawType;
import rip.athena.client.ui.clickgui.Category;
import rip.athena.client.modules.other.Settings;
import rip.athena.client.utils.render.ColorUtil; import rip.athena.client.utils.render.ColorUtil;
import rip.athena.client.utils.render.DrawUtils; import rip.athena.client.utils.render.DrawUtils;
import rip.athena.client.utils.render.RoundedUtils; import rip.athena.client.utils.render.RoundedUtils;
@ -72,11 +71,16 @@ public class CategoryButton extends MenuButton {
GlStateManager.popMatrix(); GlStateManager.popMatrix();
} else { } else {
if (isActive()) { if (isActive()) {
RoundedUtils.drawRound(x + 30, y, width - 70, height, 12, new Color(10, 10, 10, 150)); RoundedUtils.drawRound(x + 30, y, width - 40, height, 12, new Color(10, 10, 10, 150));
RoundedUtils.drawRoundedGradientOutlineCorner(x + 30, y, width + x - 40, height + y, 1, 12, ColorUtil.getClientColor(0, 255).getRGB(), ColorUtil.getClientColor(90, 255).getRGB(), ColorUtil.getClientColor(180, 255).getRGB(), ColorUtil.getClientColor(270, 255).getRGB()); RoundedUtils.drawRoundedGradientOutlineCorner(x + 30, y, width + x - 10, height + y, 1, 12, ColorUtil.getClientColor(0, 255).getRGB(), ColorUtil.getClientColor(90, 255).getRGB(), ColorUtil.getClientColor(180, 255).getRGB(), ColorUtil.getClientColor(270, 255).getRGB());
} }
if (Settings.customGuiFont) { if (Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getNunitoBold(25).drawString(text, x + 70, y + height / 2 - (getStringHeight(text) / 2) + 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.pushMatrix();
GlStateManager.translate(x - 70, y - (getStringHeight(text) / 2) - 5, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(17).drawString(text, x + 70, y + height / 2 - (getStringHeight(text) / 2) + 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString(text, x + (width / 2 - getStringWidth(text) / 2), y + height / 2 - (getStringHeight(text) / 2), Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); Minecraft.getMinecraft().fontRendererObj.drawString(text, x + (width / 2 - getStringWidth(text) / 2), y + height / 2 - (getStringHeight(text) / 2), Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }
@ -93,7 +97,7 @@ public class CategoryButton extends MenuButton {
@Override @Override
public int getStringWidth(String string) { public int getStringWidth(String string) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
return (int) rip.athena.client.utils.font.FontManager.getNunitoBold(25).width(string); return (int) rip.athena.client.utils.font.FontManager.getProductSansBold(35).width(string);
} else { } else {
return Minecraft.getMinecraft().fontRendererObj.getStringWidth(string); return Minecraft.getMinecraft().fontRendererObj.getStringWidth(string);
} }

View File

@ -1,6 +1,7 @@
package rip.athena.client.ui.clickgui.components.mods; package rip.athena.client.ui.clickgui.components.mods;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.api.font.FontManager; import rip.athena.api.font.FontManager;
import rip.athena.client.ui.framework.components.MenuLabel; import rip.athena.client.ui.framework.components.MenuLabel;
@ -38,7 +39,13 @@ public class FeatureText extends MenuLabel {
@Override @Override
public void drawText(String text, int x, int y, int color) { public void drawText(String text, int x, int y, int color) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getNunitoBold(30).drawString(text, x, y, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.pushMatrix();
GlStateManager.translate(x, y, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(15).drawString(text, x, y, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString(text, x, y, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); Minecraft.getMinecraft().fontRendererObj.drawString(text, x, y, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }

View File

@ -211,7 +211,12 @@ public class MenuModKeybind extends MenuComponent {
@Override @Override
public void drawText(String text, int x, int y, int color) { public void drawText(String text, int x, int y, int color) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString(text, x, y, color); GlStateManager.pushMatrix();
GlStateManager.translate(x, y,0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(18).drawString(text, x - 3, y, color);
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString(text, x, y, color); Minecraft.getMinecraft().fontRendererObj.drawString(text, x, y, color);
} }

View File

@ -115,14 +115,8 @@ public class MenuModList extends MenuDropdown {
GlStateManager.color(1,1,1); GlStateManager.color(1,1,1);
RoundedUtils.drawRoundedRect(x, y, x + width, y + height, 12.0f, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getSecondColor()); RoundedUtils.drawRoundedRect(x, y, x + width, y + height, 12.0f, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getSecondColor());
//RoundedUtils.drawRoundedRect(x + 1, y + 1, x + width - 1, y + height - 1, 12.0f, new Color(35, 35, 35, 255).getRGB());
RoundedUtils.drawRoundedGradientOutlineCorner(x, y, x + width, y + height, 1, 12, Athena.INSTANCE.getThemeManager().getTheme().getFirstColor().getRGB(), Athena.INSTANCE.getThemeManager().getTheme().getFirstColor().getRGB(), Athena.INSTANCE.getThemeManager().getTheme().getSecondColor().getRGB(), Athena.INSTANCE.getThemeManager().getTheme().getSecondColor().getRGB()); RoundedUtils.drawRoundedGradientOutlineCorner(x, y, x + width, y + height, 1, 12, Athena.INSTANCE.getThemeManager().getTheme().getFirstColor().getRGB(), Athena.INSTANCE.getThemeManager().getTheme().getFirstColor().getRGB(), Athena.INSTANCE.getThemeManager().getTheme().getSecondColor().getRGB(), Athena.INSTANCE.getThemeManager().getTheme().getSecondColor().getRGB());
/*drawHorizontalLine(x, y, width + 1, 1, lineColor);
drawVerticalLine(x, y + 1, height - 1, 1, lineColor);
drawHorizontalLine(x, y + height, width + 1, 1, lineColor);
drawVerticalLine(x + width, y + 1, height - 1, 1, lineColor);*/
int mouseX = parent.getMouseX(); int mouseX = parent.getMouseX();
int mouseY = parent.getMouseY(); int mouseY = parent.getMouseY();
@ -133,8 +127,6 @@ public class MenuModList extends MenuDropdown {
backgroundColor = defBg; backgroundColor = defBg;
} }
//rip.athena.client.gui.framework.draw.DrawImpl.drawRect(x, y, cursorWidth, height + 1, popupColor);
//rip.athena.client.gui.framework.draw.DrawImpl.drawRect(x + 1, y + 1, cursorWidth - 2, height - 1, backgroundColor);
drawText("<", x + (cursorWidth / 2) - getStringWidth("<") / 2, y + height / 2 - getStringHeight("<") / 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); drawText("<", x + (cursorWidth / 2) - getStringWidth("<") / 2, y + height / 2 - getStringHeight("<") / 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
if(mouseX < x + width - cursorWidth - 1) { if(mouseX < x + width - cursorWidth - 1) {
@ -143,8 +135,6 @@ public class MenuModList extends MenuDropdown {
backgroundColor = cache; backgroundColor = cache;
} }
//rip.athena.client.gui.framework.draw.DrawImpl.drawRect(x + width - cursorWidth, y, cursorWidth, height + 1, popupColor);
//rip.athena.client.gui.framework.draw.DrawImpl.drawRect(x + width - cursorWidth + 1, y + 1, cursorWidth - 2, height - 1, backgroundColor);
drawText(">", x + width - cursorWidth + 3 + (cursorWidth / 2) - getStringWidth(">") / 2, y + height / 2 - getStringHeight(">") / 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); drawText(">", x + width - cursorWidth + 3 + (cursorWidth / 2) - getStringWidth(">") / 2, y + height / 2 - getStringHeight(">") / 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
String text = values[index].toUpperCase(); String text = values[index].toUpperCase();
@ -156,7 +146,13 @@ public class MenuModList extends MenuDropdown {
@Override @Override
public void drawText(String text, int x, int y, int color) { public void drawText(String text, int x, int y, int color) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getNunito(25).drawString(text, x, y, color); GlStateManager.pushMatrix();
GlStateManager.translate(x, y, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(15).drawString(text, x, y, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString(text, x, y, color); Minecraft.getMinecraft().fontRendererObj.drawString(text, x, y, color);
} }
@ -165,7 +161,7 @@ public class MenuModList extends MenuDropdown {
@Override @Override
public int getStringWidth(String string) { public int getStringWidth(String string) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
return (int) rip.athena.client.utils.font.FontManager.getNunito(25).width(string); return (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width(string);
} else { } else {
return Minecraft.getMinecraft().fontRendererObj.getStringWidth(string); return Minecraft.getMinecraft().fontRendererObj.getStringWidth(string);
} }

View File

@ -115,7 +115,7 @@ public class MenuModSlider extends MenuSlider {
cursorPos = cursorWidth; cursorPos = cursorWidth;
} }
DrawUtils.drawRoundedRect(x + cursorPos - cursorWidth + 10, y, x + cursorPos, y + height, 2, -1); DrawUtils.drawRoundedRect(x + cursorPos - cursorWidth + 7, y, x + cursorPos, y + height, 2, -1);
// DrawUtils.drawRoundedRect(x + cursorPos - cursorWidth, y, x + cursorWidth + 2, y + height + 1, 4, linePopupColor); // DrawUtils.drawRoundedRect(x + cursorPos - cursorWidth, y, x + cursorWidth + 2, y + height + 1, 4, linePopupColor);
// DrawUtils.drawRoundedRect(x + 1 + cursorPos - cursorWidth, y + 1, cursorWidth, height - 1, 4, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); // DrawUtils.drawRoundedRect(x + 1 + cursorPos - cursorWidth, y + 1, cursorWidth, height - 1, 4, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());

View File

@ -91,17 +91,22 @@ public class ModCategoryButton extends MenuButton {
} }
if (Settings.customGuiFont) { if (Settings.customGuiFont) {
GlStateManager.pushMatrix();
GlStateManager.translate(x + (width / 2 - getStringWidth(text) / 2), y + height / 2 - (getStringHeight(text) / 2) - 3, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x - (width / 2 - getStringWidth(text) / 2), -y - height / 2 + (getStringHeight(text) / 2) + 3, 0);
if (text.equalsIgnoreCase("EDIT HUD")) { if (text.equalsIgnoreCase("EDIT HUD")) {
rip.athena.client.utils.font.FontManager.getProductSansBold(35).drawString(text, x + (width / 2 - getStringWidth(text) / 2) - 15, y + height / 2 - (getStringHeight(text) / 2) - 3, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); rip.athena.client.utils.font.FontManager.getProductSansRegular(15).drawString(text, x + (width / 2 - getStringWidth(text) / 2) - 5, y + height / 2 - (getStringHeight(text) / 2) - 1, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} else { } else {
rip.athena.client.utils.font.FontManager.getProductSansBold(25).drawString(text, x + (width / 2 - getStringWidth(text) / 2), y + height / 2 - (getStringHeight(text) / 2) - 3, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); rip.athena.client.utils.font.FontManager.getProductSansRegular(15).drawString(text, x + (width / 2 - getStringWidth(text) / 2) - 2, y + height / 2 - (getStringHeight(text) / 2) - 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString(text, x + (width / 2 - getStringWidth(text) / 2), y + height / 2 - (getStringHeight(text) / 2) - 3, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); Minecraft.getMinecraft().fontRendererObj.drawString(text, x + (width / 2 - getStringWidth(text) / 2), y + height / 2 - (getStringHeight(text) / 2) - 3, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }
if (text.equalsIgnoreCase("EDIT HUD")) { if (text.equalsIgnoreCase("EDIT HUD")) {
DrawUtils.drawImage(image, x + 25, y + 3, 25, 25); DrawUtils.drawImage(image, x + 35, y + 3, 25, 25);
} }
} }
//rip.athena.client.gui.framework.draw.DrawImpl.drawRect(x, y, width - 10, height, backgroundColor); //rip.athena.client.gui.framework.draw.DrawImpl.drawRect(x, y, width - 10, height, backgroundColor);

View File

@ -1,23 +1,23 @@
package rip.athena.client.ui.clickgui.components.mods; package rip.athena.client.ui.clickgui.components.mods;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import rip.athena.api.font.FontManager;
import rip.athena.api.module.Module; import rip.athena.api.module.Module;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.api.font.FontManager; import rip.athena.client.modules.other.Settings;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.ui.framework.MenuComponent; import rip.athena.client.ui.framework.MenuComponent;
import rip.athena.client.ui.framework.draw.ButtonState; import rip.athena.client.ui.framework.draw.ButtonState;
import rip.athena.client.ui.framework.draw.DrawType; import rip.athena.client.ui.framework.draw.DrawType;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.modules.other.Settings;
import rip.athena.client.utils.render.ColorUtil; import rip.athena.client.utils.render.ColorUtil;
import rip.athena.client.utils.render.DrawUtils; import rip.athena.client.utils.render.DrawUtils;
import rip.athena.client.utils.render.RoundedUtils; import rip.athena.client.utils.render.RoundedUtils;
import java.awt.*; import java.awt.*;
import java.util.*; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects;
/** /**
* @author Athena Development * @author Athena Development
@ -189,12 +189,14 @@ public class ModuleBox extends MenuComponent {
for (String line : lines) { for (String line : lines) {
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getNunitoBold(30).drawString(line, x + (float) width / 2 - (double) rip.athena.client.utils.font.FontManager.getNunitoBold(30).width(line) / 2, yPos, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.pushMatrix();
GlStateManager.translate(x - width / 2, yPos, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -yPos, 0);
rip.athena.client.utils.font.FontManager.getProductSansBold(15).drawString(line, x + (float) width / 2 - (double) rip.athena.client.utils.font.FontManager.getProductSansBold(15).width(line) / 2, yPos, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.popMatrix();
//FontManager.baloo30.drawString(line, x + (float) width / 2 - FontManager.baloo30.getStringWidth(line) / 2, yPos, textColor); //FontManager.baloo30.drawString(line, x + (float) width / 2 - FontManager.baloo30.getStringWidth(line) / 2, yPos, textColor);
yPos += FontManager.baloo30.getHeight(line); yPos += FontManager.baloo30.getHeight(line);
} else {
Minecraft.getMinecraft().fontRendererObj.drawString(line, (int) (x + (float) width / 2 - Minecraft.getMinecraft().fontRendererObj.getStringWidth(line) / 2), yPos, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
yPos += Minecraft.getMinecraft().fontRendererObj.FONT_HEIGHT;
} }
} }
@ -215,10 +217,14 @@ public class ModuleBox extends MenuComponent {
String text = module.isToggled() ? "ENABLED" : "DISABLED"; String text = module.isToggled() ? "ENABLED" : "DISABLED";
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getNunitoBold(25).drawString(text, x + (float) width / 2 - (double) rip.athena.client.utils.font.FontManager.getNunitoBold(25).width(text) / 2, y + height - 10 - 15, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.pushMatrix();
GlStateManager.translate(x - width / 2, y + height - 10 - 15, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y - height + 10 + 15, 0);
rip.athena.client.utils.font.FontManager.getProductSansBold(15).drawString(text, x + (float) width / 2 - (double) rip.athena.client.utils.font.FontManager.getProductSansBold(15).width(text) / 2, y + height - 10 - 14.5f, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.popMatrix();
//rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString(text, x + (float) width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width(text) / 2, y + height - 10 - 15, -1); //rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString(text, x + (float) width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width(text) / 2, y + height - 10 - 15, -1);
} else {
Minecraft.getMinecraft().fontRendererObj.drawString(text, (int) (x + (float) width / 2 - Minecraft.getMinecraft().fontRendererObj.getStringWidth(text) / 2), y + height - 10 - 15, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }
if (!module.getEntries().isEmpty()) { if (!module.getEntries().isEmpty()) {
drawColor = defaultColor; drawColor = defaultColor;

View File

@ -3,16 +3,15 @@ package rip.athena.client.ui.clickgui.components.mods;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import org.lwjgl.input.Keyboard;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.api.font.FontManager; import rip.athena.client.modules.other.Settings;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.ui.framework.TextPattern; import rip.athena.client.ui.framework.TextPattern;
import rip.athena.client.ui.framework.components.MenuTextField; import rip.athena.client.ui.framework.components.MenuTextField;
import rip.athena.client.ui.framework.draw.ButtonState; import rip.athena.client.ui.framework.draw.ButtonState;
import rip.athena.client.ui.framework.draw.DrawType; import rip.athena.client.ui.framework.draw.DrawType;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.modules.other.Settings;
import rip.athena.client.utils.render.DrawUtils; import rip.athena.client.utils.render.DrawUtils;
import org.lwjgl.input.Keyboard;
import rip.athena.client.utils.render.RoundedUtils; import rip.athena.client.utils.render.RoundedUtils;
import java.awt.*; import java.awt.*;
@ -97,7 +96,7 @@ public class SearchTextfield extends MenuTextField {
int labelWidth; int labelWidth;
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
labelWidth = (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width(textToDraw + 1); labelWidth = (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width(textToDraw + 1);
} else { } else {
labelWidth = Minecraft.getMinecraft().fontRendererObj.getStringWidth(textToDraw + 1); labelWidth = Minecraft.getMinecraft().fontRendererObj.getStringWidth(textToDraw + 1);
} }
@ -107,7 +106,7 @@ public class SearchTextfield extends MenuTextField {
if(comp < index){ if(comp < index){
textToDraw = textToDraw.substring(1); textToDraw = textToDraw.substring(1);
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
labelWidth = (int) rip.athena.client.utils.font.FontManager.getProductSansLight(30).width(textToDraw + 1); labelWidth = (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width(textToDraw + 1);
} else { } else {
labelWidth = Minecraft.getMinecraft().fontRendererObj.getStringWidth(textToDraw + 1); labelWidth = Minecraft.getMinecraft().fontRendererObj.getStringWidth(textToDraw + 1);
} }
@ -115,7 +114,7 @@ public class SearchTextfield extends MenuTextField {
} else if(comp > index){ } else if(comp > index){
textToDraw = textToDraw.substring(0, textToDraw.length() - 1); textToDraw = textToDraw.substring(0, textToDraw.length() - 1);
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
labelWidth = (int) rip.athena.client.utils.font.FontManager.getProductSansLight(30).width(textToDraw + 1); labelWidth = (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width(textToDraw + 1);
} else { } else {
labelWidth = Minecraft.getMinecraft().fontRendererObj.getStringWidth(textToDraw + 1); labelWidth = Minecraft.getMinecraft().fontRendererObj.getStringWidth(textToDraw + 1);
} }
@ -136,13 +135,17 @@ public class SearchTextfield extends MenuTextField {
int textHeight; int textHeight;
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
textHeight = (int) FontManager.baloo17.getHeight(textToDraw); textHeight = (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(20).height();
drawVerticalLine(x + 10 + (int)rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width(textToDraw.substring(0, toRender)) + 1, y + height / 2 - textHeight / 2, textHeight, 1, textColor); GlStateManager.pushMatrix();
GlStateManager.translate(x - 10, y + height / 2 - textHeight / 2, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y - height + 10 + 8, 0);
drawVerticalLine(x + 10 + (int)rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width(textToDraw.substring(0, toRender)) + 1, y + height / 2 - textHeight / 2, textHeight, 1, textColor);
GlStateManager.popMatrix();
} else { } else {
textHeight = Minecraft.getMinecraft().fontRendererObj.FONT_HEIGHT; textHeight = Minecraft.getMinecraft().fontRendererObj.FONT_HEIGHT;
drawVerticalLine(x + 10 + (int)Minecraft.getMinecraft().fontRendererObj.getStringWidth(textToDraw.substring(0, toRender)) + 1, y + height / 2 - textHeight / 2, textHeight, 1, textColor); drawVerticalLine(x + 10 + (int)Minecraft.getMinecraft().fontRendererObj.getStringWidth(textToDraw.substring(0, toRender)) + 1, y + height / 2 - textHeight / 2, textHeight, 1, textColor);
} }
} }
int renderIndex = comp; int renderIndex = comp;
@ -162,7 +165,12 @@ public class SearchTextfield extends MenuTextField {
} }
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString(textToDraw, x + 10 + minOffset + xAdd, y + 2 + (float) height / 2 - (float) (int) rip.athena.client.utils.font.FontManager.getNunito(20).height() / 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.pushMatrix();
GlStateManager.translate(x + 10 + minOffset + xAdd, y + (float) height / 2 - (float) (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(20).height() / 2, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x - 10 - minOffset - xAdd, -y - height + 10 + 8, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString(textToDraw, x + 10 + minOffset + xAdd, y + 2 + (float) height / 2 - (float) (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(20).height() / 2, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString(textToDraw, x + 10 + minOffset + xAdd, (int) (y + (float) height / 2 - (float) (int) Minecraft.getMinecraft().fontRendererObj.FONT_HEIGHT / 2), Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); Minecraft.getMinecraft().fontRendererObj.drawString(textToDraw, x + 10 + minOffset + xAdd, (int) (y + (float) height / 2 - (float) (int) Minecraft.getMinecraft().fontRendererObj.FONT_HEIGHT / 2), Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }

View File

@ -3,13 +3,13 @@ package rip.athena.client.ui.clickgui.components.profiles;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.GlStateManager;
import rip.athena.api.font.FontManager; import rip.athena.api.font.FontManager;
import rip.athena.client.Athena;
import rip.athena.client.modules.other.Settings;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.ui.framework.MenuComponent; import rip.athena.client.ui.framework.MenuComponent;
import rip.athena.client.ui.framework.MenuPriority; import rip.athena.client.ui.framework.MenuPriority;
import rip.athena.client.ui.framework.draw.ButtonState; import rip.athena.client.ui.framework.draw.ButtonState;
import rip.athena.client.ui.framework.draw.DrawType; import rip.athena.client.ui.framework.draw.DrawType;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.modules.other.Settings;
import rip.athena.client.utils.render.ColorUtil;
import rip.athena.client.utils.render.RoundedUtils; import rip.athena.client.utils.render.RoundedUtils;
import java.awt.*; import java.awt.*;
@ -60,9 +60,7 @@ public class ProfilesBase extends MenuComponent {
GlStateManager.color(1,1,1); GlStateManager.color(1,1,1);
//RoundedUtils.drawRoundedRect(x, y, x + width, y + height, 12.0f, new Color(50,50,50,255).getRGB()); RoundedUtils.drawRoundedRect(x + 1, y + 1, x + width - 1, y + height - 1, 12.0f, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getSecondColor());
//RoundedUtils.drawGradientRound(x, y, width, height, 6f, ColorUtil.getClientColor(0, 255), ColorUtil.getClientColor(90, 255), ColorUtil.getClientColor(180, 255), ColorUtil.getClientColor(270, 255));
RoundedUtils.drawRoundedRect(x + 1, y + 1, x + width - 1, y + height - 1, 12.0f, new Color(35,35,35,255).getRGB());
drawText(text, x + width / 2 - getStringWidth(text) / 2, y + 30, textColor); drawText(text, x + width / 2 - getStringWidth(text) / 2, y + 30, textColor);
} }

View File

@ -164,7 +164,12 @@ public class MacrosPage extends Page {
drawVerticalLine(menu.getX() + 215, y + height - 30, height + 432, 3, new Color(0,0,0,0).getRGB()); drawVerticalLine(menu.getX() + 215, y + height - 30, height + 432, 3, new Color(0,0,0,0).getRGB());
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
FontManager.getNunitoBold(30).drawString("MACROS", menu.getX() + 235, menu.getY() + 80, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.pushMatrix();
GlStateManager.translate(menu.getX() - 235, menu.getY() - 80, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-menu.getX(), -menu.getY(), 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString("MACROS", menu.getX() + 235, menu.getY() + 80, IngameMenu.MENU_HEADER_TEXT_COLOR);
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString("MACROS", menu.getX() + 235, menu.getY() + 80, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); Minecraft.getMinecraft().fontRendererObj.drawString("MACROS", menu.getX() + 235, menu.getY() + 80, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }

View File

@ -83,8 +83,13 @@ public class ModsPage extends Page {
if (modCategory != null) { if (modCategory != null) {
if (Settings.customGuiFont) { if (Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString(activeModule != null ? activeModule.getName().toUpperCase() : modCategory.getText(), menu.getX() + 255, menu.getY() + 20, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.pushMatrix();
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString("Configure build-in client mods", menu.getX() + 255, menu.getY() + 35, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.translate(menu.getX() - 255, menu.getY() - 5, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-menu.getX() + 255, -menu.getY(), 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString(activeModule != null ? activeModule.getName().toUpperCase() : modCategory.getText(), menu.getX(), menu.getY() + 10, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
rip.athena.client.utils.font.FontManager.getProductSansRegular(15).drawString("Configure build-in client mods", menu.getX(), menu.getY() + 20, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
GlStateManager.popMatrix();
} else { } else {
mc.fontRendererObj.drawString(activeModule != null ? "SETTINGS | " : modCategory.getText(), menu.getX() + 255, menu.getY() + 25, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); mc.fontRendererObj.drawString(activeModule != null ? "SETTINGS | " : modCategory.getText(), menu.getX() + 255, menu.getY() + 25, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }

View File

@ -1,27 +1,27 @@
package rip.athena.client.ui.clickgui.pages; package rip.athena.client.ui.clickgui.pages;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.renderer.GlStateManager;
import org.apache.commons.lang3.RandomStringUtils; import org.apache.commons.lang3.RandomStringUtils;
import org.json.JSONException; import org.json.JSONException;
import rip.athena.client.Athena;
import rip.athena.api.config.save.Config; import rip.athena.api.config.save.Config;
import rip.athena.api.font.FontManager; import rip.athena.api.font.FontManager;
import rip.athena.client.ui.clickgui.components.macros.SimpleTextButton; import rip.athena.client.Athena;
import rip.athena.client.ui.clickgui.components.profiles.ProfilesBase;
import rip.athena.client.ui.framework.Menu;
import rip.athena.client.ui.framework.TextPattern;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.ui.clickgui.Page;
import rip.athena.client.ui.clickgui.components.macros.MacroButton;
import rip.athena.client.ui.clickgui.components.macros.MacroTextfield;
import rip.athena.client.ui.clickgui.components.mods.ModCategoryButton;
import rip.athena.client.ui.clickgui.components.mods.ModScrollPane;
import rip.athena.client.ui.clickgui.components.profiles.ProfilesBlueButton;
import net.minecraft.client.Minecraft;
import rip.athena.client.modules.other.Settings; import rip.athena.client.modules.other.Settings;
import rip.athena.client.requests.ContentType; import rip.athena.client.requests.ContentType;
import rip.athena.client.requests.WebRequest; import rip.athena.client.requests.WebRequest;
import rip.athena.client.requests.WebRequestResult; import rip.athena.client.requests.WebRequestResult;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.ui.clickgui.Page;
import rip.athena.client.ui.clickgui.components.macros.MacroButton;
import rip.athena.client.ui.clickgui.components.macros.MacroTextfield;
import rip.athena.client.ui.clickgui.components.macros.SimpleTextButton;
import rip.athena.client.ui.clickgui.components.mods.ModScrollPane;
import rip.athena.client.ui.clickgui.components.profiles.ProfilesBase;
import rip.athena.client.ui.clickgui.components.profiles.ProfilesBlueButton;
import rip.athena.client.ui.framework.Menu;
import rip.athena.client.ui.framework.TextPattern;
import java.awt.*; import java.awt.*;
import java.io.IOException; import java.io.IOException;
@ -236,14 +236,23 @@ public class ProfilesPage extends Page {
drawVerticalLine(menu.getX() + 215, y + height - 30, height + 432, 3, new Color(0,0,0,0).getRGB()); drawVerticalLine(menu.getX() + 215, y + height - 30, height + 432, 3, new Color(0,0,0,0).getRGB());
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getNunitoBold(30).drawString("PROFILES", menu.getX() + 235, menu.getY() + 80, IngameMenu.MENU_HEADER_TEXT_COLOR); GlStateManager.pushMatrix();
GlStateManager.translate(menu.getX() - 235, menu.getY() - 80, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-menu.getX(), -menu.getY(), 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString("PROFILES", menu.getX() + 235, menu.getY() + 80, IngameMenu.MENU_HEADER_TEXT_COLOR);
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString("PROFILES", menu.getX() + 235, menu.getY() + 80, IngameMenu.MENU_HEADER_TEXT_COLOR); Minecraft.getMinecraft().fontRendererObj.drawString("PROFILES", menu.getX() + 235, menu.getY() + 80, IngameMenu.MENU_HEADER_TEXT_COLOR);
} }
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("CREATE NEW PROFILE", menu.getX() + menu.getWidth() - (float) width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width("CREATE NEW PROFILE") / 2, y + (float) height / 2 - FontManager.baloo17.getHeight("CREATE NEW PROFILE") / 2, IngameMenu.MENU_HEADER_TEXT_COLOR); GlStateManager.pushMatrix();
GlStateManager.translate(menu.getX() - menu.getWidth() + (float) width / 2 + rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width("CREATE NEW PROFILE") / 2,y - (float) height / 2 - FontManager.baloo17.getHeight("CREATE NEW PROFILE") / 2, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-menu.getX(), -y - 5 + (float) height / 2 + rip.athena.client.utils.font.FontManager.getProductSansRegular(20).height() / 2, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString("CREATE NEW PROFILE", menu.getX() + menu.getWidth() - (float) width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width("CREATE NEW PROFILE") / 2, y + (float) height / 2 - FontManager.baloo17.getHeight("CREATE NEW PROFILE") / 2, IngameMenu.MENU_HEADER_TEXT_COLOR);
GlStateManager.popMatrix();
} else { } else {
mc.fontRendererObj.drawString("CREATE NEW PROFILE", (int) (menu.getX() + menu.getWidth() - (float) width / 2 - mc.fontRendererObj.getStringWidth("CREATE NEW PROFILE") / 2), (int) (y + (float) height / 2 - mc.fontRendererObj.FONT_HEIGHT / 2), IngameMenu.MENU_HEADER_TEXT_COLOR); mc.fontRendererObj.drawString("CREATE NEW PROFILE", (int) (menu.getX() + menu.getWidth() - (float) width / 2 - mc.fontRendererObj.getStringWidth("CREATE NEW PROFILE") / 2), (int) (y + (float) height / 2 - mc.fontRendererObj.FONT_HEIGHT / 2), IngameMenu.MENU_HEADER_TEXT_COLOR);
} }
@ -251,7 +260,12 @@ public class ProfilesPage extends Page {
y += 60; y += 60;
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("ENTER NAME", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR); GlStateManager.pushMatrix();
GlStateManager.translate(x,y, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(15).drawString("ENTER NAME", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
GlStateManager.popMatrix();
} else { } else {
mc.fontRendererObj.drawString("ENTER NAME", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR); mc.fontRendererObj.drawString("ENTER NAME", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
} }
@ -259,7 +273,12 @@ public class ProfilesPage extends Page {
y += 120; y += 120;
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("DOWNLOAD PROFILE", menu.getX() + menu.getWidth() - (float) width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width("DOWNLOAD PROFILE") / 2, y + (float) height / 2 - FontManager.baloo17.getHeight("DOWNLOAD PROFILE") / 2, IngameMenu.MENU_HEADER_TEXT_COLOR); GlStateManager.pushMatrix();
GlStateManager.translate(menu.getX() - menu.getWidth() + (float) width / 2 + rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width("DOWNLOAD PROFILE") / 2,y - (float) height / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(20).height() / 2, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-menu.getX(), -y - 10 + (float) height / 2 + rip.athena.client.utils.font.FontManager.getProductSansRegular(20).height() / 2, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString("DOWNLOAD PROFILE", menu.getX() + menu.getWidth() - (float) width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width("DOWNLOAD PROFILE") / 2, y + (float) height / 2 - FontManager.baloo17.getHeight("DOWNLOAD PROFILE") / 2, IngameMenu.MENU_HEADER_TEXT_COLOR);
GlStateManager.popMatrix();
} else { } else {
mc.fontRendererObj.drawString("DOWNLOAD PROFILE", (int) (menu.getX() + menu.getWidth() - (float) width / 2 - mc.fontRendererObj.getStringWidth("DOWNLOAD PROFILE") / 2), (int) (y + (float) height / 2 - mc.fontRendererObj.FONT_HEIGHT / 2), IngameMenu.MENU_HEADER_TEXT_COLOR); mc.fontRendererObj.drawString("DOWNLOAD PROFILE", (int) (menu.getX() + menu.getWidth() - (float) width / 2 - mc.fontRendererObj.getStringWidth("DOWNLOAD PROFILE") / 2), (int) (y + (float) height / 2 - mc.fontRendererObj.FONT_HEIGHT / 2), IngameMenu.MENU_HEADER_TEXT_COLOR);
} }
@ -267,7 +286,12 @@ public class ProfilesPage extends Page {
y += 50; y += 50;
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("PROFILE CODE", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR); GlStateManager.pushMatrix();
GlStateManager.translate(x,y, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-x, -y, 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(15).drawString("PROFILE CODE", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
GlStateManager.popMatrix();
} else { } else {
mc.fontRendererObj.drawString("PROFILE CODE", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR); mc.fontRendererObj.drawString("PROFILE CODE", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
} }

View File

@ -0,0 +1,56 @@
package rip.athena.client.ui.clickgui.pages;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager;
import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.ui.clickgui.Page;
import rip.athena.client.ui.framework.Menu;
import java.awt.*;
public class ScreenshotsPage extends Page {
public ScreenshotsPage(Minecraft mc, Menu menu, IngameMenu parent) {
super(mc, menu, parent);
}
@Override
public void onInit() {
}
@Override
public void onRender() {
int y = menu.getY() + 59;
int height = 32;
GlStateManager.color(1,1,1);
drawVerticalLine(menu.getX() + 215, y + height - 30, height + 432, 3, new Color(0,0,0,0).getRGB());
GlStateManager.pushMatrix();
GlStateManager.translate(menu.getX() - 235, menu.getY() - 80, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-menu.getX(), -menu.getY(), 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString("SCREENSHOTS", menu.getX() + 235, menu.getY() + 80, IngameMenu.MENU_HEADER_TEXT_COLOR);
GlStateManager.popMatrix();
}
@Override
public void onLoad() {
}
@Override
public void onUnload() {
}
@Override
public void onOpen() {
}
@Override
public void onClose() {
}
}

View File

@ -1,6 +1,7 @@
package rip.athena.client.ui.clickgui.pages; package rip.athena.client.ui.clickgui.pages;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.client.ui.clickgui.IngameMenu; import rip.athena.client.ui.clickgui.IngameMenu;
import rip.athena.client.ui.clickgui.Page; import rip.athena.client.ui.clickgui.Page;
@ -48,7 +49,12 @@ public class ThemesPage extends Page {
int height = 32; int height = 32;
if(Settings.customGuiFont) { if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getNunitoBold(30).drawString("THEMES | " + Athena.INSTANCE.getThemeManager().getTheme() + ", " + Athena.INSTANCE.getThemeManager().getPrimaryTheme(), menu.getX() + 235, menu.getY() + 80, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); GlStateManager.pushMatrix();
GlStateManager.translate(menu.getX() - 235, menu.getY() - 80, 0);
GlStateManager.scale(2, 2, 2);
GlStateManager.translate(-menu.getX(), -menu.getY(), 0);
rip.athena.client.utils.font.FontManager.getProductSansRegular(20).drawString("THEMES | " + Athena.INSTANCE.getThemeManager().getTheme() + ", " + Athena.INSTANCE.getThemeManager().getPrimaryTheme(), menu.getX() + 235, menu.getY() + 80, IngameMenu.MENU_HEADER_TEXT_COLOR);
GlStateManager.popMatrix();
} else { } else {
Minecraft.getMinecraft().fontRendererObj.drawString("THEMES", menu.getX() + 235, menu.getY() + 80, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor()); Minecraft.getMinecraft().fontRendererObj.drawString("THEMES", menu.getX() + 235, menu.getY() + 80, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
} }

View File

@ -22,11 +22,14 @@ public class HUDManager {
private final List<HUDElement> elements; private final List<HUDElement> elements;
public HUDManager() { public HUDManager() {
Athena.INSTANCE.sendInitializationMessage("HUD Manager", false);
elements = new ArrayList<>(); elements = new ArrayList<>();
for(Module mod : Athena.INSTANCE.getModuleRepository().getModules()) { for(Module mod : Athena.INSTANCE.getModuleRepository().getModules()) {
elements.addAll(mod.getHUDElements()); elements.addAll(mod.getHUDElements());
} }
Athena.INSTANCE.sendInitializationMessage("HUD Manager", true);
} }
@SubscribeEvent @SubscribeEvent

View File

@ -18,11 +18,14 @@ public class NotificationManager {
private Thread removalThread; private Thread removalThread;
public NotificationManager() { public NotificationManager() {
Athena.INSTANCE.sendInitializationMessage("Notification Manager", false);
notifications = new ArrayList<>(); notifications = new ArrayList<>();
removalThread = new Thread(new NotiRemovalThread(notifications)); removalThread = new Thread(new NotiRemovalThread(notifications));
removalThread.start(); removalThread.start();
Athena.INSTANCE.getEventBus().register(this); Athena.INSTANCE.getEventBus().register(this);
Athena.INSTANCE.sendInitializationMessage("Notification Manager", true);
} }
@SubscribeEvent @SubscribeEvent

View File

@ -26,6 +26,8 @@ public class DiscordRPC {
public DiscordRPC() { public DiscordRPC() {
if(System.getProperty("os.name").equalsIgnoreCase("win")) { if(System.getProperty("os.name").equalsIgnoreCase("win")) {
try { try {
Athena.INSTANCE.sendInitializationMessage("Discord RPC", false);
File discordLibrary = downloadNativeLibrary(); File discordLibrary = downloadNativeLibrary();
if (discordLibrary == null) { if (discordLibrary == null) {
System.err.println("Failed to download Discord SDK."); System.err.println("Failed to download Discord SDK.");
@ -34,6 +36,9 @@ public class DiscordRPC {
// Initialize the Core // Initialize the Core
Core.init(discordLibrary); Core.init(discordLibrary);
canLoad = true; canLoad = true;
Athena.INSTANCE.sendInitializationMessage("Discord RPC", true);
start(); start();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();

View File

@ -2,9 +2,9 @@ package rip.athena.client.utils.input;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiScreen;
import rip.athena.api.event.SubscribeEvent;
import rip.athena.api.module.Module; import rip.athena.api.module.Module;
import rip.athena.client.Athena; import rip.athena.client.Athena;
import rip.athena.api.event.SubscribeEvent;
import rip.athena.client.events.input.KeyDownEvent; import rip.athena.client.events.input.KeyDownEvent;
import rip.athena.client.events.input.KeyUpEvent; import rip.athena.client.events.input.KeyUpEvent;
import rip.athena.client.modules.render.GUIMod; import rip.athena.client.modules.render.GUIMod;
@ -60,7 +60,6 @@ public class KeybindManager {
if (module instanceof GUIMod) { if (module instanceof GUIMod) {
module.setEnabled(true); module.setEnabled(true);
continue;
} }
if(isInvalidScreen(Minecraft.getMinecraft().currentScreen)) return; if(isInvalidScreen(Minecraft.getMinecraft().currentScreen)) return;

View File

@ -27,7 +27,6 @@ import static org.lwjgl.opengl.GL11.GL_SRC_ALPHA;
public enum DrawUtils { public enum DrawUtils {
BLACK(-16711423), BLACK(-16711423),
BLUE(-12028161), BLUE(-12028161),
DARKBLUE(-12621684), DARKBLUE(-12621684),

View File

@ -1,11 +1,8 @@
package rip.athena.client.utils.render; package rip.athena.client.utils.render;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.ScaledResolution; import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.GlStateManager;
import org.lwjgl.opengl.GL11;
import rip.athena.client.utils.shader.ShaderUtil; import rip.athena.client.utils.shader.ShaderUtil;
import java.awt.*; import java.awt.*;
@ -16,7 +13,6 @@ import static org.lwjgl.opengl.GL11.*;
public class RoundedUtils { public class RoundedUtils {
final static Minecraft mc = Minecraft.getMinecraft(); final static Minecraft mc = Minecraft.getMinecraft();
final static FontRenderer fr = mc.fontRendererObj;
private static final ShaderUtil roundedGradientShader = new ShaderUtil("roundedRectGradient"); private static final ShaderUtil roundedGradientShader = new ShaderUtil("roundedRectGradient");
private static ShaderUtil roundedTexturedShader = new ShaderUtil("roundRectTexture"); private static ShaderUtil roundedTexturedShader = new ShaderUtil("roundRectTexture");
@ -212,6 +208,7 @@ public class RoundedUtils {
glPopAttrib(); glPopAttrib();
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
} }
/** /**
* @param x : X pos * @param x : X pos
* @param y : Y pos * @param y : Y pos
@ -221,7 +218,6 @@ public class RoundedUtils {
* @param lineWidth : width of outline line; * @param lineWidth : width of outline line;
* @param color : color; * @param color : color;
*/ */
public static void drawRoundedOutline(float x, float y, float x1, float y1, float radius,float lineWidth, int color) { public static void drawRoundedOutline(float x, float y, float x1, float y1, float radius,float lineWidth, int color) {
glPushAttrib(0); glPushAttrib(0);
glScaled(0.5D, 0.5D, 0.5D); glScaled(0.5D, 0.5D, 0.5D);

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
invertYMouse:false invertYMouse:false
mouseSensitivity:0.2535211 mouseSensitivity:0.2535211
fov:0.425 fov:0.5
gamma:0.0 gamma:0.0
saturation:0.0 saturation:0.0
renderDistance:8 renderDistance:8

View File

@ -11,7 +11,7 @@
"Better skin loading": true, "Better skin loading": true,
"Culling fix": true, "Culling fix": true,
"Chunk update limiter": false, "Chunk update limiter": false,
"Chunk updates per second": 112, "Chunk updates per second": 155,
"Better Chests": false, "Better Chests": false,
"Static particle color": true, "Static particle color": true,
"Static drops": true, "Static drops": true,
@ -27,6 +27,30 @@
"bindtype": "Toggle", "bindtype": "Toggle",
"enabled": false "enabled": false
}, },
"Crosshair": {
"settings": {
"Draw color": {
"red": 255,
"green": 0,
"blue": 0,
"alpha": 255
},
"Brush size": 2,
"Rainbow color": false,
"Delete mode": false
},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": false
},
"Fullbright": {
"settings": {},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": false
},
"CPS": { "CPS": {
"settings": { "settings": {
"Transparency": 255, "Transparency": 255,
@ -69,36 +93,12 @@
"bindtype": "Toggle", "bindtype": "Toggle",
"enabled": false "enabled": false
}, },
"Fullbright": {
"settings": {},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": false
},
"Crosshair": {
"settings": {
"Draw color": {
"red": 255,
"green": 0,
"blue": 0,
"alpha": 255
},
"Brush size": 2,
"Rainbow color": false,
"Delete mode": false
},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": false
},
"FPS": { "FPS": {
"settings": { "settings": {
"Transparency": 255, "Transparency": 255,
"Static Chroma": false, "Static Chroma": false,
"Background": true, "Background": true,
"Custom Font": false, "Custom Font": true,
"Wave Chroma": false, "Wave Chroma": false,
"Background Color": { "Background Color": {
"red": 0, "red": 0,
@ -112,13 +112,13 @@
"blue": 255, "blue": 255,
"alpha": 255 "alpha": 255
}, },
"Display Mode": "Old" "Display Mode": "Circle"
}, },
"bind": 0, "bind": 0,
"hud": {"fps": { "hud": {"fps": {
"visible": true, "visible": true,
"x": 1, "x": 451,
"y": 175, "y": 28,
"scale": 1 "scale": 1
}}, }},
"bindtype": "Toggle", "bindtype": "Toggle",
@ -147,6 +147,50 @@
"bindtype": "Toggle", "bindtype": "Toggle",
"enabled": false "enabled": false
}, },
"Potion Effects": {
"settings": {"Background": true},
"bind": 0,
"hud": {"potioneffects": {
"visible": true,
"x": 8,
"y": 202,
"scale": 1
}},
"bindtype": "Toggle",
"enabled": true
},
"Clock": {
"settings": {
"Transparency": 255,
"Static Chroma": false,
"Background": true,
"Custom Font": false,
"Wave Chroma": false,
"Color": {
"red": 255,
"green": 255,
"blue": 255,
"alpha": 255
},
"Background Color": {
"red": 0,
"green": 0,
"blue": 0,
"alpha": 153
},
"Display Mode": "Circle",
"Clock Format": "yyyy/MM/dd HH:mm:ss"
},
"bind": 0,
"hud": {"time": {
"visible": true,
"x": 1,
"y": 190,
"scale": 1
}},
"bindtype": "Toggle",
"enabled": false
},
"Custom Text": { "Custom Text": {
"settings": { "settings": {
"Transparency": 255, "Transparency": 255,
@ -179,41 +223,9 @@
"bindtype": "Toggle", "bindtype": "Toggle",
"enabled": false "enabled": false
}, },
"Clock": {
"settings": {
"Transparency": 255,
"Static Chroma": false,
"Background": true,
"Custom Font": false,
"Wave Chroma": false,
"Color": {
"red": 255,
"green": 255,
"blue": 255,
"alpha": 255
},
"Background Color": {
"red": 0,
"green": 0,
"blue": 0,
"alpha": 150
},
"Display Mode": "Circle",
"Clock Format": "yyyy/MM/dd HH:mm:ss"
},
"bind": 0,
"hud": {"time": {
"visible": true,
"x": 1,
"y": 190,
"scale": 1
}},
"bindtype": "Toggle",
"enabled": false
},
"Aim Trainer": { "Aim Trainer": {
"settings": { "settings": {
"Speed": 1.6, "Speed": 1.8,
"Static Chroma": false, "Static Chroma": false,
"Background": true, "Background": true,
"Custom Font": false, "Custom Font": false,
@ -452,7 +464,7 @@
"bindtype": "Toggle", "bindtype": "Toggle",
"enabled": false "enabled": false
}, },
"theme": "MOONLIGHT", "theme": "ATHENA",
"Freelook": { "Freelook": {
"settings": { "settings": {
"Perspective Key": 56, "Perspective Key": 56,
@ -476,18 +488,6 @@
"key": 19, "key": 19,
"enabled": true "enabled": true
}], }],
"Screenshot Uploader": {
"settings": {
"Delete": true,
"Copy": true,
"Link": true,
"Open": true
},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": true
},
"Coordinates": { "Coordinates": {
"settings": { "settings": {
"Show Compass": true, "Show Compass": true,
@ -541,7 +541,19 @@
"scale": 1 "scale": 1
}}, }},
"bindtype": "Toggle", "bindtype": "Toggle",
"enabled": true "enabled": false
},
"Screenshot Uploader": {
"settings": {
"Delete": true,
"Copy": true,
"Link": true,
"Open": true
},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": false
}, },
"fps": { "fps": {
"entities": [], "entities": [],
@ -692,6 +704,44 @@
"bindtype": "Toggle", "bindtype": "Toggle",
"enabled": false "enabled": false
}, },
"Reach Display": {
"settings": {
"Transparency": 255,
"Static Chroma": false,
"Background": true,
"Custom Font": false,
"Wave Chroma": false,
"Background Color": {
"red": 0,
"green": 0,
"blue": 0,
"alpha": 153
},
"Color": {
"red": 255,
"green": 255,
"blue": 255,
"alpha": 255
},
"Display Mode": "Circle"
},
"bind": 0,
"hud": {"reachdisplay": {
"visible": true,
"x": 1,
"y": 175,
"scale": 1
}},
"bindtype": "Toggle",
"enabled": false
},
"Mouse Delay Fix": {
"settings": {},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": false
},
"Test Module": { "Test Module": {
"settings": { "settings": {
"Color 2": { "Color 2": {
@ -742,46 +792,8 @@
"bindtype": "Toggle", "bindtype": "Toggle",
"enabled": false "enabled": false
}, },
"Mouse Delay Fix": {
"settings": {},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": false
},
"Reach Display": {
"settings": {
"Transparency": 255,
"Static Chroma": false,
"Background": true,
"Custom Font": false,
"Wave Chroma": false,
"Background Color": {
"red": 0,
"green": 0,
"blue": 0,
"alpha": 150
},
"Color": {
"red": 255,
"green": 255,
"blue": 255,
"alpha": 255
},
"Display Mode": "Circle"
},
"bind": 0,
"hud": {"reachdisplay": {
"visible": true,
"x": 1,
"y": 175,
"scale": 1
}},
"bindtype": "Toggle",
"enabled": false
},
"Motion Blur": { "Motion Blur": {
"settings": {"Amount": 1}, "settings": {"Amount": 3},
"bind": 0, "bind": 0,
"hud": {}, "hud": {},
"bindtype": "Toggle", "bindtype": "Toggle",

View File

@ -1 +1 @@
[{"name":"etert","uuid":"a12f6b57-b314-305d-a4de-14e5b61e7068","expiresOn":"2023-08-03 12:44:46 +0200"},{"name":"Player119","uuid":"8fbcb74c-bd8d-3181-a022-3c858a10477d","expiresOn":"2023-08-02 10:47:11 +0200"},{"name":"ziue","uuid":"ae330cf9-3749-3ca0-ba31-8447e2a2786f","expiresOn":"2023-08-01 16:58:31 +0200"},{"name":"Player995","uuid":"93bfa0b6-cc14-3c0c-8efa-0bcc48245274","expiresOn":"2023-08-02 16:21:08 +0200"},{"name":"Player504","uuid":"eb08048d-a3b9-3008-984c-fcc8bb7d8893","expiresOn":"2023-08-02 10:04:23 +0200"},{"name":"Player665","uuid":"5daba5f8-966b-3165-8089-02aaa9b1e740","expiresOn":"2023-08-02 11:22:29 +0200"},{"name":"Player831","uuid":"7daaf105-640b-34bc-83e6-6c045d1c9591","expiresOn":"2023-08-02 17:44:01 +0200"},{"name":"ziue","uuid":"74e89738-6c9e-4f59-83ef-d365849e6049","expiresOn":"2023-08-01 19:27:12 +0200"},{"name":"Player311","uuid":"d4625839-68ff-34de-8208-19f0e474753e","expiresOn":"2023-08-02 16:20:03 +0200"}] [{"name":"etert","uuid":"a12f6b57-b314-305d-a4de-14e5b61e7068","expiresOn":"2023-08-04 14:43:35 +0200"},{"name":"Player831","uuid":"7daaf105-640b-34bc-83e6-6c045d1c9591","expiresOn":"2023-08-02 17:44:01 +0200"},{"name":"ziue","uuid":"ae330cf9-3749-3ca0-ba31-8447e2a2786f","expiresOn":"2023-08-01 16:58:31 +0200"},{"name":"Player995","uuid":"93bfa0b6-cc14-3c0c-8efa-0bcc48245274","expiresOn":"2023-08-02 16:21:08 +0200"},{"name":"ziue","uuid":"74e89738-6c9e-4f59-83ef-d365849e6049","expiresOn":"2023-08-01 19:27:12 +0200"},{"name":"Player665","uuid":"5daba5f8-966b-3165-8089-02aaa9b1e740","expiresOn":"2023-08-02 11:22:29 +0200"},{"name":"Player119","uuid":"8fbcb74c-bd8d-3181-a022-3c858a10477d","expiresOn":"2023-08-02 10:47:11 +0200"},{"name":"Player504","uuid":"eb08048d-a3b9-3008-984c-fcc8bb7d8893","expiresOn":"2023-08-02 10:04:23 +0200"},{"name":"Player311","uuid":"d4625839-68ff-34de-8208-19f0e474753e","expiresOn":"2023-08-02 16:20:03 +0200"}]