started on capes, edited alt manager ui

This commit is contained in:
The Biggest skiddd 2023-06-24 00:19:53 +02:00
parent 6d941daf42
commit d7e8e10160
101 changed files with 629644 additions and 18144 deletions

View File

@ -21,6 +21,7 @@ import optifine.CapeUtils;
import optifine.Config;
import optifine.PlayerConfigurations;
import optifine.Reflector;
import rip.athena.client.Athena;
public abstract class AbstractClientPlayer extends EntityPlayer
{
@ -90,6 +91,7 @@ public abstract class AbstractClientPlayer extends EntityPlayer
public ResourceLocation getLocationCape()
{
if (!Config.isShowCapes())
{
return null;

View File

@ -21,7 +21,7 @@ public class GuiButton extends Gui
private SimpleAnimation rectHoverAnimation = new SimpleAnimation(100);
protected static final ResourceLocation buttonTextures = new ResourceLocation("textures/gui/widgets.png");
// The animations crashed the entire fucking game.
// The animations crashed the entire fucking game.
int opacity;
/** Button width in pixels */
protected int width;
@ -92,49 +92,45 @@ public class GuiButton extends Gui
{
if (this.visible)
{
FontRenderer fontrenderer = mc.fontRendererObj;
mc.getTextureManager().bindTexture(buttonTextures);
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
this.hovered = mouseX >= this.xPosition && mouseY >= this.yPosition && mouseX < this.xPosition + this.width && mouseY < this.yPosition + this.height;
int i = this.getHoverState(this.hovered);
GlStateManager.enableBlend();
GlStateManager.tryBlendFuncSeparate(770, 771, 1, 0);
GlStateManager.blendFunc(770, 771);
//this.drawTexturedModalRect(this.xPosition, this.yPosition, 0, 46 + i * 20, this.width / 2, this.height);
//this.drawTexturedModalRect(this.xPosition + this.width / 2, this.yPosition, 200 - this.width / 2, 46 + i * 20, this.width / 2, this.height);
this.mouseDragged(mc, mouseX, mouseY);
int j = 14737632;
if (hovered) {
opacity += 25;
if(opacity > 120) opacity = 120;
if(opacity > 150) opacity = 150;
} else {
opacity -= 25;
if(opacity < 70) opacity = 70;
if(opacity < 100) opacity = 100;
}
Color rectCol = new Color(100, 100, 100, opacity);
Color rectCol;
if(!this.enabled)
rectCol = new Color(10, 10, 10, 120);
else
rectCol = new Color(30, 30, 30, opacity);
rectCol = new Color(150, 150, 150, opacity);
//Gui.drawRect(this.xPosition, this.yPosition, this.xPosition + this.width, this.yPosition + this.height, rectCol.getRGB());
RoundedUtils.drawRound(this.xPosition, this.yPosition, this.width, (this.height), 4, rectCol);
RoundedUtils.drawRoundedGradientOutlineCorner(this.xPosition, this.yPosition, (this.width + xPosition), (this.height + yPosition), 1, 6, ColorUtil.getClientColor(0, 255).getRGB(), ColorUtil.getClientColor(90, 255).getRGB(), ColorUtil.getClientColor(180, 255).getRGB(), ColorUtil.getClientColor(270, 255).getRGB());
RoundedUtils.drawRound(this.xPosition + 1, this.yPosition + 1, this.width - 1, (this.height) - 2, 4, rectCol);
RoundedUtils.drawRoundedGradientOutlineCorner(this.xPosition, this.yPosition + 1, (this.width + xPosition), (this.height + yPosition) - 1, 1, 6, ColorUtil.getClientColor(0, 255).getRGB(), ColorUtil.getClientColor(90, 255).getRGB(), ColorUtil.getClientColor(180, 255).getRGB(), ColorUtil.getClientColor(270, 255).getRGB());
if(this.hovered && this.enabled) {
if (!(lineHoverAnimation.getValue() > width / 2 - 2)) {
lineHoverAnimation.setAnimation(width / 2 - 2, 10);
if (!(lineHoverAnimation.getValue() > (float) width / 2 - 2)) {
lineHoverAnimation.setAnimation((float) width / 2 - 2, 10);
this.drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) - lineHoverAnimation.getValue()), this.yPosition + height - 1, -1);
this.drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) + lineHoverAnimation.getValue()), this.yPosition + height - 1, -1);
drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) - lineHoverAnimation.getValue()), this.yPosition + height - 1, -1);
drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) + lineHoverAnimation.getValue()), this.yPosition + height - 1, -1);
}
else if(lineHoverAnimation.getValue() >= width / 2) {
this.drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) - lineHoverAnimation.getValue()), this.yPosition + height - 1, -1);
this.drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) + lineHoverAnimation.getValue()), this.yPosition + height - 1, -1);
else if(lineHoverAnimation.getValue() >= (float) width / 2) {
drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) - lineHoverAnimation.getValue()), this.yPosition + height - 1, -1);
drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) + lineHoverAnimation.getValue()), this.yPosition + height - 1, -1);
}
@ -142,29 +138,18 @@ public class GuiButton extends Gui
else if(!hovered){
lineHoverAnimation.setAnimation(0, 4);
if(!(lineHoverAnimation.getValue() <= 0 || lineHoverAnimation.getValue() <= 2)) {
this.drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) - lineHoverAnimation.getValue() - 1), this.yPosition + height - 1, -1);
this.drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) + lineHoverAnimation.getValue() + 1), this.yPosition + height - 1, -1);
drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) - lineHoverAnimation.getValue() - 1), this.yPosition + height - 1, -1);
drawHorizontalLine(this.xPosition + width / 2 , (int) ((xPosition + width/2) + lineHoverAnimation.getValue() + 1), this.yPosition + height - 1, -1);
}
}
if (this.enabled)
{
j = -1;
}
else
{
j = Color.BLACK.getRGB();
}
rip.athena.client.utils.font.FontManager.getProductSansBold(19).drawCenteredString(displayString.toUpperCase(),
xPosition + (width / 2), this.enabled ? yPosition + (height / 2) - 3 : yPosition + (height / 2) - 6, -1);
xPosition + (float) (width / 2), this.enabled ? yPosition + (float) (height / 2) - 3 : yPosition + (float) (height / 2) - 6, -1);
if (!this.enabled)
rip.athena.client.utils.font.FontManager.getProductSansBold(10).drawCenteredString("DISABLED",
xPosition + (width / 2), yPosition + (height / 2) + 4, -1);
xPosition + (float) (width / 2), yPosition + (float) (height / 2) + 4, -1);
}
}

View File

@ -397,6 +397,7 @@ public abstract class Render<T extends Entity>
rankTexture = new ResourceLocation("Athena/ranks/mod.png");
break;
case "PARTNER":
case "MEDIA":
rankTexture = new ResourceLocation("Athena/ranks/partner.png");
break;
case "PREMIUM":

View File

@ -1,11 +1,16 @@
package net.minecraft.client.renderer.entity.layers;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.AbstractClientPlayer;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.renderer.entity.RenderPlayer;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EnumPlayerModelParts;
import net.minecraft.util.MathHelper;
import net.minecraft.util.ResourceLocation;
import rip.athena.client.Athena;
import rip.athena.client.modules.impl.other.Settings;
import rip.athena.client.socket.SocketClient;
public class LayerCape implements LayerRenderer
{
@ -19,38 +24,35 @@ public class LayerCape implements LayerRenderer
public void doRenderLayer(AbstractClientPlayer entitylivingbaseIn, float p_177141_2_, float p_177141_3_, float partialTicks, float p_177141_5_, float p_177141_6_, float p_177141_7_, float scale)
{
if (entitylivingbaseIn.hasPlayerInfo() && !entitylivingbaseIn.isInvisible() && entitylivingbaseIn.isWearing(EnumPlayerModelParts.CAPE) && entitylivingbaseIn.getLocationCape() != null)
{
if (entitylivingbaseIn.hasPlayerInfo() && !entitylivingbaseIn.isInvisible() && entitylivingbaseIn.getLocationCape() != null) {
GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F);
this.playerRenderer.bindTexture(entitylivingbaseIn.getLocationCape());
GlStateManager.pushMatrix();
GlStateManager.translate(0.0F, 0.0F, 0.125F);
double d0 = entitylivingbaseIn.prevChasingPosX + (entitylivingbaseIn.chasingPosX - entitylivingbaseIn.prevChasingPosX) * (double)partialTicks - (entitylivingbaseIn.prevPosX + (entitylivingbaseIn.posX - entitylivingbaseIn.prevPosX) * (double)partialTicks);
double d1 = entitylivingbaseIn.prevChasingPosY + (entitylivingbaseIn.chasingPosY - entitylivingbaseIn.prevChasingPosY) * (double)partialTicks - (entitylivingbaseIn.prevPosY + (entitylivingbaseIn.posY - entitylivingbaseIn.prevPosY) * (double)partialTicks);
double d2 = entitylivingbaseIn.prevChasingPosZ + (entitylivingbaseIn.chasingPosZ - entitylivingbaseIn.prevChasingPosZ) * (double)partialTicks - (entitylivingbaseIn.prevPosZ + (entitylivingbaseIn.posZ - entitylivingbaseIn.prevPosZ) * (double)partialTicks);
double d0 = entitylivingbaseIn.prevChasingPosX + (entitylivingbaseIn.chasingPosX - entitylivingbaseIn.prevChasingPosX) * (double) partialTicks - (entitylivingbaseIn.prevPosX + (entitylivingbaseIn.posX - entitylivingbaseIn.prevPosX) * (double) partialTicks);
double d1 = entitylivingbaseIn.prevChasingPosY + (entitylivingbaseIn.chasingPosY - entitylivingbaseIn.prevChasingPosY) * (double) partialTicks - (entitylivingbaseIn.prevPosY + (entitylivingbaseIn.posY - entitylivingbaseIn.prevPosY) * (double) partialTicks);
double d2 = entitylivingbaseIn.prevChasingPosZ + (entitylivingbaseIn.chasingPosZ - entitylivingbaseIn.prevChasingPosZ) * (double) partialTicks - (entitylivingbaseIn.prevPosZ + (entitylivingbaseIn.posZ - entitylivingbaseIn.prevPosZ) * (double) partialTicks);
float f = entitylivingbaseIn.prevRenderYawOffset + (entitylivingbaseIn.renderYawOffset - entitylivingbaseIn.prevRenderYawOffset) * partialTicks;
double d3 = (double)MathHelper.sin(f * (float)Math.PI / 180.0F);
double d4 = (double)(-MathHelper.cos(f * (float)Math.PI / 180.0F));
float f1 = (float)d1 * 10.0F;
double d3 = (double) MathHelper.sin(f * (float) Math.PI / 180.0F);
double d4 = (double) (-MathHelper.cos(f * (float) Math.PI / 180.0F));
float f1 = (float) d1 * 10.0F;
f1 = MathHelper.clamp_float(f1, -6.0F, 32.0F);
float f2 = (float)(d0 * d3 + d2 * d4) * 100.0F;
float f3 = (float)(d0 * d4 - d2 * d3) * 100.0F;
float f2 = (float) (d0 * d3 + d2 * d4) * 100.0F;
float f3 = (float) (d0 * d4 - d2 * d3) * 100.0F;
if (f2 < 0.0F)
{
if (f2 < 0.0F) {
f2 = 0.0F;
}
if (f2 > 165.0F)
{
if (f2 > 165.0F) {
f2 = 165.0F;
}
float f4 = entitylivingbaseIn.prevCameraYaw + (entitylivingbaseIn.cameraYaw - entitylivingbaseIn.prevCameraYaw) * partialTicks;
f1 = f1 + MathHelper.sin((entitylivingbaseIn.prevDistanceWalkedModified + (entitylivingbaseIn.distanceWalkedModified - entitylivingbaseIn.prevDistanceWalkedModified) * partialTicks) * 6.0F) * 32.0F * f4;
if (entitylivingbaseIn.isSneaking())
{
if (entitylivingbaseIn.isSneaking()) {
f1 += 25.0F;
GlStateManager.translate(0.0F, 0.142F, -0.0178F);
}

View File

@ -6,6 +6,7 @@ import net.minecraft.client.Minecraft;
import org.lwjgl.opengl.Display;
import rip.athena.client.account.AccountManager;
import rip.athena.client.config.save.ConfigManager;
import rip.athena.client.cosmetics.CosmeticsController;
import rip.athena.client.events.EventBus;
import rip.athena.client.events.SubscribeEvent;
import rip.athena.client.events.types.client.ClientTickEvent;
@ -48,10 +49,11 @@ public class Athena {
private final PrefixedLogger log = new PrefixedLogger("Athena");
private final String clientName = "Athena";
private final String clientVersion = "0.0.1";
private final String clientBuild = "061723";
private final String clientVersion = "0.0.2";
private final String clientBuild = "062323";
private NotificationManager notificationManager;
private CosmeticsController cosmeticsController;
private AccountManager accountManager;
private ConfigManager configManager;
private ModuleManager moduleManager;
@ -76,17 +78,8 @@ public class Athena {
this.discordRPC = new DiscordRPC();
}
if(!MAIN_DIR.exists()) {
MAIN_DIR.mkdir();
}
if(!ACCOUNTS_DIR.exists()) {
try {
ACCOUNTS_DIR.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
createDirectoryIfNotExists(MAIN_DIR);
createFileIfNotExists(ACCOUNTS_DIR);
if(SocketClient.isClientRunning()) {
JOptionPane.showMessageDialog(null, "Port 45376 already in use.");
@ -100,11 +93,17 @@ public class Athena {
this.macroManager = new MacroManager();
this.hudManager = new HUDManager();
this.eventBus = new EventBus();
this.notificationManager = new NotificationManager();
this.cosmeticsController = new CosmeticsController();
registerEvents();
configManager.postInit();
if(this.cosmeticsController.getCapeManager().getSelectedCape() == null) {
this.cosmeticsController.getCapeManager().setSelectedCape(this.cosmeticsController.getCapeManager().getCape("None"));
}
}
/**
@ -157,6 +156,22 @@ public class Athena {
}
}
private void createDirectoryIfNotExists(File directory) {
if (!directory.exists()) {
directory.mkdir();
}
}
private void createFileIfNotExists(File file) {
if (!file.exists()) {
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
/**
* Cleans up and shuts down the client.
* This method is responsible for any necessary cleanup tasks,

View File

@ -9,6 +9,7 @@ import org.json.JSONException;
import org.json.JSONObject;
import rip.athena.client.Athena;
import rip.athena.client.config.ConfigEntry;
import rip.athena.client.cosmetics.cape.Cape;
import rip.athena.client.events.types.client.ConfigChangeEvent;
import rip.athena.client.gui.clickgui.pages.SettingsPage;
import rip.athena.client.gui.hud.HUDElement;
@ -154,6 +155,15 @@ public class Config {
}
}
String capeIdentifier = obj.getString("cape");
for (Cape cape : Athena.INSTANCE.getCosmeticsController().getCapeManager().getCapes()) {
if (cape.getName().equalsIgnoreCase(capeIdentifier)) {
Athena.INSTANCE.getLog().info(cape + capeIdentifier + cape.getName());
Athena.INSTANCE.getCosmeticsController().getCapeManager().setSelectedCape(cape);
break;
}
}
JSONArray macroList = obj.getJSONArray("macros");
for(int i = 0; i < macroList.length(); i++) {
@ -376,6 +386,7 @@ public class Config {
}
config.put("theme", Athena.INSTANCE.getThemeManager().getTheme().name());
config.put("cape", Athena.INSTANCE.getCosmeticsController().getCapeManager().getSelectedCape().getName());
JSONArray macros = new JSONArray();

View File

@ -1,7 +1,22 @@
package rip.athena.client.cosmetics;/**
package rip.athena.client.cosmetics;
import lombok.Getter;
import rip.athena.client.cosmetics.cape.CapeManager;
/**
* @project Athena-Client
* @author Athena Development
* @date 6/12/2023
*/
@Getter
public class CosmeticsController {
private final CapeManager capeManager;
public CosmeticsController() {
capeManager = new CapeManager();
}
}

View File

@ -0,0 +1,24 @@
package rip.athena.client.cosmetics.cape;
import lombok.Getter;
import net.minecraft.util.ResourceLocation;
/**
* @author Athena Development
* @project Athena-Client
* @date 6/23/2023
*/
@Getter
public class Cape {
private final String name;
private final ResourceLocation location;
private final ResourceLocation displayTexture;
public Cape(String name, String location, String displayTexture) {
this.name = name;
this.location = new ResourceLocation("Athena/cosmetics/capes/" + location + ".png");
this.displayTexture = new ResourceLocation("Athena/cosmetics/capes/" + displayTexture + ".png");
}
}

View File

@ -0,0 +1,44 @@
package rip.athena.client.cosmetics.cape;
import lombok.Getter;
import lombok.Setter;
import net.minecraft.util.ResourceLocation;
import rip.athena.client.Athena;
import rip.athena.client.modules.Module;
import java.util.ArrayList;
/**
* @author Athena Development
* @project Athena-Client
* @date 6/23/2023
*/
@Getter
@Setter
public class CapeManager {
private final ArrayList<Cape> capes = new ArrayList<>();
private Cape selectedCape;
public CapeManager() {
capes.add(new Cape("Minecon 2012", "Minecon-2012", "Minecon-2012-display"));
capes.add(new Cape("Minecon 2016", "Minecon-2016", "Minecon-2016-display"));
capes.add(new Cape("ziue's head", "ziue-head", "ziue-head-display"));
capes.add(new Cape("Cat", "cat", "cat-display"));
capes.add(new Cape("None", "None", "None"));
}
public Cape getCape(String name) {
Cape requestedCape = capes
.stream()
.filter(m -> m.getName().equalsIgnoreCase(name))
.findFirst()
.orElse(null);
if (requestedCape == null) {
// Log a message indicating that the cape is not found
Athena.INSTANCE.getLog().warn("Tried accessing non-existing cape: " + name);
}
return requestedCape;
}
}

View File

@ -12,7 +12,8 @@ public enum Category {
MACROS("MACROS", "Athena/gui/mods/cps.png"),
WAYPOINTS("WAYPOINTS", "Athena/gui/menu/waypoints.png"),
PROFILES("PROFILES", "Athena/gui/menu/profiles.png"),
COSMETICS("COSMETICS", "Athena/gui/menu/cosmetics.png"),
CAPES("CAPES", "Athena/gui/menu/cosmetics.png"),
//COSMETICS("COSMETICS", "Athena/gui/menu/cosmetics.png"),
THEMES("THEMES", "Athena/gui/menu/themes.png");
private String name;

View File

@ -33,7 +33,8 @@ public class PageManager {
pages.put(Category.MACROS, new MacrosPage(mc, menu, parent));
pages.put(Category.WAYPOINTS, new WaypointsPage(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.CAPES, new CapesPage(mc, menu, parent));
pages.put(Category.THEMES, new ThemesPage(mc, menu, parent));
}

View File

@ -0,0 +1,117 @@
package rip.athena.client.gui.clickgui.components.capes;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.GlStateManager;
import rip.athena.client.Athena;
import rip.athena.client.cosmetics.cape.Cape;
import rip.athena.client.font.FontManager;
import rip.athena.client.gui.clickgui.IngameMenu;
import rip.athena.client.gui.framework.components.MenuButton;
import rip.athena.client.gui.framework.draw.ButtonState;
import rip.athena.client.gui.framework.draw.DrawType;
import rip.athena.client.modules.impl.other.Settings;
import rip.athena.client.theme.impl.AccentTheme;
import rip.athena.client.utils.render.ColorUtil;
import rip.athena.client.utils.render.DrawUtils;
import rip.athena.client.utils.render.RoundedUtils;
import java.awt.*;
/**
* @author Athena Development
* @project Athena-Client
* @date 6/2/2023
*/
public class CapeButton extends MenuButton {
private boolean selected;
public CapeButton(Cape cape, int x, int y, int width, int height) {
super(cape, x, y, width, height);
this.selected = false;
}
@Override
public void onInitColors() {
setColor(DrawType.BACKGROUND, ButtonState.NORMAL, new Color(35, 35, 35, IngameMenu.MENU_ALPHA));
setColor(DrawType.BACKGROUND, ButtonState.ACTIVE, new Color(35, 35, 35, IngameMenu.MENU_ALPHA));
setColor(DrawType.BACKGROUND, ButtonState.HOVER, new Color(35, 35, 35, IngameMenu.MENU_ALPHA));
setColor(DrawType.BACKGROUND, ButtonState.HOVERACTIVE, new Color(35, 35, 35, IngameMenu.MENU_ALPHA));
setColor(DrawType.BACKGROUND, ButtonState.DISABLED, new Color(255, 255, 255, IngameMenu.MENU_ALPHA));
setColor(DrawType.LINE, ButtonState.NORMAL, new Color(52, 52, 53, IngameMenu.MENU_ALPHA));
setColor(DrawType.LINE, ButtonState.ACTIVE, new Color(52, 52, 53, IngameMenu.MENU_ALPHA));
setColor(DrawType.LINE, ButtonState.HOVER, new Color(52, 52, 53, IngameMenu.MENU_ALPHA));
setColor(DrawType.LINE, ButtonState.HOVERACTIVE, new Color(52, 52, 53, IngameMenu.MENU_ALPHA));
setColor(DrawType.LINE, ButtonState.DISABLED, new Color(255, 255, 255, IngameMenu.MENU_ALPHA));
setColor(DrawType.LINE, ButtonState.POPUP, new Color(28, 28, 30, IngameMenu.MENU_ALPHA));
setColor(DrawType.TEXT, ButtonState.NORMAL, new Color(56, 56, 58, IngameMenu.MENU_ALPHA));
setColor(DrawType.TEXT, ButtonState.ACTIVE, new Color(90, 90, 94, IngameMenu.MENU_ALPHA));
setColor(DrawType.TEXT, ButtonState.HOVER, new Color(75, 75, 78, IngameMenu.MENU_ALPHA));
setColor(DrawType.TEXT, ButtonState.HOVERACTIVE, new Color(100, 100, 104, IngameMenu.MENU_ALPHA));
setColor(DrawType.TEXT, ButtonState.DISABLED, new Color(255, 255, 255, IngameMenu.MENU_ALPHA));
}
@Override
public void onRender() {
int x = this.getRenderX();
int y = this.getRenderY();
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.drawRound(x + 1, y + 1, width - 2, height - 2, 16, new Color(Athena.INSTANCE.getThemeManager().getPrimaryTheme().getThirdColor()));
if (!cape.getName().equals("None")) {
DrawUtils.drawImage(cape.getDisplayTexture(), x + 25, y + 15, width - 50, height - 50);
}
if(selected) {
text = cape.getName() + " selected";
} else {
text = cape.getName();
}
drawText(text, x + (width / 2 - getStringWidth(text) / 2), y + height - 20, -1);
GlStateManager.color(1,1,1);
mouseDown = false;
}
@Override
public void drawText(String string, int x, int y, int color) {
if(Settings.customGuiFont) {
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString(string, x - 3, y, color);
} else {
Minecraft.getMinecraft().fontRendererObj.drawString(string, x, y, color);
}
}
@Override
public int getStringWidth(String string) {
if(Settings.customGuiFont) {
return (int) rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width(string) - 1;
} else {
return Minecraft.getMinecraft().fontRendererObj.getStringWidth(string);
}
}
@Override
public int getStringHeight(String string) {
if(Settings.customGuiFont) {
return (int) FontManager.baloo17.getHeight(string) + 1;
} else {
return Minecraft.getMinecraft().fontRendererObj.FONT_HEIGHT;
}
}
public void setSelected(boolean selected) {
this.selected = selected;
}
public boolean isSelected() {
return selected;
}
}

View File

@ -0,0 +1,103 @@
package rip.athena.client.gui.clickgui.pages;
import net.minecraft.client.Minecraft;
import rip.athena.client.Athena;
import rip.athena.client.cosmetics.cape.Cape;
import rip.athena.client.gui.clickgui.IngameMenu;
import rip.athena.client.gui.clickgui.Page;
import rip.athena.client.gui.clickgui.components.capes.CapeButton;
import rip.athena.client.gui.clickgui.components.mods.ModScrollPane;
import rip.athena.client.gui.framework.Menu;
/**
* @author Athena Development
* @project Athena-Client
* @date 6/2/2023
*/
public class CapesPage extends Page {
private ModScrollPane scrollPane;
public CapesPage(Minecraft mc, Menu menu, IngameMenu parent) {
super(mc, menu, parent);
}
@Override
public void onInit() {
int width = 300;
scrollPane = new ModScrollPane(260, 100, menu.getWidth() - width, menu.getHeight() - 101, false);
populateScrollPane();
}
private void populateScrollPane() {
scrollPane.getComponents().clear();
int spacing = 15;
int height = 250;
int defaultX = spacing;
int y = spacing;
int x = spacing;
int width = 190;
int maxWidth = scrollPane.getWidth() - spacing * 2;
for(Cape cape : Athena.INSTANCE.getCosmeticsController().getCapeManager().getCapes()) {
CapeButton capeButton = new CapeButton(cape, x, y, width, height) {
@Override
public void onAction() {
setActive(false);
Athena.INSTANCE.getCosmeticsController().getCapeManager().setSelectedCape(cape);
populateScrollPane();
}
};
capeButton.setSelected(cape == Athena.INSTANCE.getCosmeticsController().getCapeManager().getSelectedCape());
scrollPane.addComponent(capeButton);
x += spacing + width;
if(x + spacing + width > maxWidth) {
x = defaultX;
y += height + spacing;
}
}
}
@Override
public void onRender() {
int width = 300;
int x = menu.getX() + menu.getWidth() - width + 20;
int y = menu.getY() + 59;
int height = 32;
drawVerticalLine(menu.getX() + 215, y + height - 30, height + 432, 3, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getSecondColor());
}
@Override
public void onLoad() {
menu.addComponent(scrollPane);
}
@Override
public void onUnload() {
}
@Override
public void onOpen() {
}
@Override
public void onClose() {
}
}

View File

@ -1,6 +1,7 @@
package rip.athena.client.gui.framework.components;
import net.minecraft.client.renderer.GlStateManager;
import rip.athena.client.cosmetics.cape.Cape;
import rip.athena.client.gui.framework.MenuComponent;
import rip.athena.client.gui.framework.draw.ButtonState;
import rip.athena.client.gui.framework.draw.DrawType;
@ -20,6 +21,7 @@ public class MenuButton extends MenuComponent {
protected int minOffset = 2;
protected boolean mouseDown = false;
protected boolean active = false;
protected Cape cape;
protected AccentTheme theme;
protected PrimaryTheme primaryTheme;
protected ButtonState lastState = ButtonState.NORMAL;
@ -39,6 +41,11 @@ public class MenuButton extends MenuComponent {
this.theme = theme;
}
public MenuButton(Cape cape, int x, int y, int width, int height) {
super(x, y, width, height);
this.cape = cape;
}
public MenuButton(PrimaryTheme theme, int x, int y, int width, int height) {
super(x, y, width, height);
this.primaryTheme = theme;

View File

@ -293,7 +293,7 @@ public class AthenaMenu extends GuiScreen implements GuiYesNoCallback
public void drawScreen(int mouseX, int mouseY, float partialTicks)
{
DrawUtils.drawImage(new ResourceLocation("Athena/menu/test5.jpg"), 0, 0, width, height);
DrawUtils.drawImage(new ResourceLocation("Athena/menu/wallpaper3.jpg"), 0, 0, width, height);
int[] size = InputUtils.getWindowsSize();
int startX = size[0] / 2;
@ -305,7 +305,7 @@ public class AthenaMenu extends GuiScreen implements GuiYesNoCallback
int height = 100;
rip.athena.client.utils.font.FontManager.getProductSansBold(60).drawCenteredString(Athena.INSTANCE.getClientName(),
this.width / 2, y, new Color(255, 255, 255).getRGB());
(float) this.width / 2, y, new Color(255, 255, 255).getRGB());
GlStateManager.pushMatrix();
DrawUtils.drawImage(new ResourceLocation("Athena/menu/exit.png"),startX + startX - 20, 10, 10, 10);

View File

@ -107,12 +107,8 @@ public class GuiAccountManager extends GuiScreen {
int index = 1;
if(closeAccountManager) {
showAccountAnimation.setDirection(Direction.BACKWARDS);
if(showAccountAnimation.isDone(Direction.BACKWARDS)) {
closeAccountManager = false;
mc.displayGuiScreen(prevGuiScreen);
}
}
if(click) {
if(clickTimer.hasTimeElapsed(150)) {
@ -122,7 +118,7 @@ public class GuiAccountManager extends GuiScreen {
clickTimer.reset();
}
DrawUtils.drawImage(new ResourceLocation("Athena/menu/test5.jpg"), 0, 0, sr.getScaledWidth(), sr.getScaledHeight());
DrawUtils.drawImage(new ResourceLocation("Athena/menu/wallpaper3.jpg"), 0, 0, sr.getScaledWidth(), sr.getScaledHeight());
GlStateManager.pushMatrix();
@ -134,6 +130,9 @@ public class GuiAccountManager extends GuiScreen {
RoundedUtils.drawRound(x + 1, y + 180, width - 2, height - 150, 6, new Color(Athena.INSTANCE.getThemeManager().getPrimaryTheme().getFirstColor()));
FontManager.getProductSansRegular(22).drawString("Add Account", x + 5, y + 186, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
RoundedUtils.drawGradientRound(x , y + 206, width, height - 148, 6, ColorUtil.getClientColor(0, 255), ColorUtil.getClientColor(90, 255), ColorUtil.getClientColor(180, 255), ColorUtil.getClientColor(270, 255));
RoundedUtils.drawRound(x + 1, y + 207, width - 2, height - 150, 6, new Color(Athena.INSTANCE.getThemeManager().getPrimaryTheme().getFirstColor()));
FontManager.getProductSansRegular(22).drawString("Go back", x + 5, y + 213, Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
StencilUtils.initStencilToWrite();
RoundedUtils.drawRound(x, y + 28, width, height - 28.5F, 6, Color.WHITE);
@ -150,11 +149,13 @@ public class GuiAccountManager extends GuiScreen {
for(Account a : Athena.INSTANCE.getAccountManager().getAccounts()) {
RoundedUtils.drawRound(x + 9, y + offsetY + scrollAnimation.getValue() - 1, width - 18, 37, 4, new Color(Athena.INSTANCE.getThemeManager().getPrimaryTheme().getSecondColor()));
RoundedUtils.drawRound(x + 10, y + offsetY + scrollAnimation.getValue(), width - 20, 35, 4, new Color(Athena.INSTANCE.getThemeManager().getPrimaryTheme().getFirstColor()));
RoundedUtils.drawGradientRound(x + width - 36, y + offsetY + 7 + scrollAnimation.getValue(), 20, 20, 4, ColorUtil.getClientColor(0, 255), ColorUtil.getClientColor(90, 255), ColorUtil.getClientColor(180, 255), ColorUtil.getClientColor(270, 255));
if(a.getAccountType().equals(AccountType.MICROSOFT)) {
//mc.getTextureManager().bindTexture(face(a.getUsername(), UUID.fromString(a.getUuid())));
mc.getTextureManager().bindTexture(new ResourceLocation("Athena/menu/head.png"));
} else {
mc.getTextureManager().bindTexture(new ResourceLocation("Athena/menu/head.png"));
}
@ -163,11 +164,15 @@ public class GuiAccountManager extends GuiScreen {
RoundedUtils.drawRoundTextured(x + 17, y + offsetY + 6 + scrollAnimation.getValue(), 24, 24, 4, 1.0F);
GlStateManager.disableBlend();
GlStateManager.pushMatrix();
DrawUtils.drawImage(new ResourceLocation("Athena/menu/exit.png"),x + width - 31, (int) (y + offsetY + 12 + scrollAnimation.getValue()), 10, 10);
GlStateManager.popMatrix();
FontManager.getProductSansRegular(22).drawString(a.getUsername(), x + 50, y + offsetY + 15 + scrollAnimation.getValue(), Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
a.opacityAnimation.setAnimation(a.isDone ? 0 : 255, 16);
FontManager.getProductSansRegular(22).drawCenteredString(a.getInfo(), x + width - 54, y + 14.5F + offsetY + scrollAnimation.getValue(), Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
FontManager.getProductSansRegular(22).drawCenteredString(a.getInfo(), x + width - 64, y + 14.5F + offsetY + scrollAnimation.getValue(), Athena.INSTANCE.getThemeManager().getPrimaryTheme().getTextColor());
if(a.getInfo().equals("Success") || a.getInfo().equals("Error")) {
if(a.getTimer().hasTimeElapsed(3500)) {
@ -263,14 +268,14 @@ public class GuiAccountManager extends GuiScreen {
showAddAccount = true;
}
if(MouseUtils.isInside(mouseX, mouseY, x , y + 179, width, height - 148)) {
if(MouseUtils.isInside(mouseX, mouseY, x , y + 206, width, 25)) {
mc.displayGuiScreen(prevGuiScreen);
}
if(MouseUtils.isInside(mouseX, mouseY, x , y + 179, width, 25)) {
mc.displayGuiScreen(new GuiAltManager());
//Soar.instance.settingsManager.getSettingByClass(ClientMod.class, "DarkMode").setValBoolean(!Soar.instance.settingsManager.getSettingByClass(ClientMod.class, "DarkMode").getValBoolean());
}
if (MouseUtils.isInside(mouseX, mouseY, sr.getScaledWidth() - 25, 5.0, 20.0, 20.0)) {
}
if(showAddAccount) {
@ -316,7 +321,6 @@ public class GuiAccountManager extends GuiScreen {
}
for(Account a : Athena.INSTANCE.getAccountManager().getAccounts()) {
if(MouseUtils.isInside(mouseX, mouseY, x + width - 36, y + offsetY + 7 + scrollAnimation.getValue(), 20, 20)) {
deleteAccount = a;
delete = true;

View File

@ -66,7 +66,7 @@ public class GuiAltManager extends GuiScreen {
int yOffset = (screenHeight - getTotalPanelsHeight()) / 2; // Calculate vertical offset to center the panels
int width = screenWidth - (2 * xOffset);
DrawUtils.drawImage(new ResourceLocation("Athena/menu/test5.jpg"), 0, 0, (int) screenWidth, (int) screenHeight);
DrawUtils.drawImage(new ResourceLocation("Athena/menu/wallpaper3.jpg"), 0, 0, (int) screenWidth, (int) screenHeight);
RoundedUtils.drawGradientRound(xOffset + 15, yOffset - 1, width + 1, getTotalPanelsHeight() - 23, 6, ColorUtil.getClientColor(0, 255), ColorUtil.getClientColor(90, 255), ColorUtil.getClientColor(180, 255), ColorUtil.getClientColor(270, 255));

View File

@ -38,13 +38,11 @@ public class LoginPanel extends Panel {
private final List<AltButton> actionButtons = new ArrayList<>();
public final List<TextField> textFields = new ArrayList<>();
private String status = "Session:";
private String status = "";
public LoginPanel() {
setHeight(200);
actionButtons.add(new AltButton("Cracked"));
actionButtons.add(new AltButton("Session"));
actionButtons.add(new AltButton("Login"));
actionButtons.add(new AltButton("Offline Login"));
textFields.add(new TextField());
textFields.add(new TextField());
}
@ -120,8 +118,7 @@ public class LoginPanel extends Panel {
actionButton.setHeight(20);
actionButton.setClickAction(() -> {
switch (actionButton.getName()) {
case "Cracked":
if (actionButton.getName().equals("Offline Login")) {
TextField cracked = textFields.get(0);
Athena.INSTANCE.getAccountManager().getAccounts().add(new Account(AccountType.CRACKED, cracked.getText(), "0", "0"));
Minecraft.getMinecraft().session = new Session(cracked.getText(), "0", "0", "legacy");
@ -129,51 +126,6 @@ public class LoginPanel extends Panel {
Athena.INSTANCE.getAccountManager().setCurrentAccount(Athena.INSTANCE.getAccountManager().getAccountByUsername(cracked.getText()));
Athena.INSTANCE.getAccountManager().isFirstLogin = false;
Athena.INSTANCE.getAccountManager().save();
break;
case "Session":
TextField sessionID = textFields.get(0);
try {
String user, uuid, token, session = sessionID.getText();
if (session.contains(":")) { //if fully formatted string (ign:uuid:token)
//split string to data
user = session.split(":")[0];
uuid = session.split(":")[1];
token = session.split(":")[2];
} else { //if only token
//make request
HttpURLConnection c = (HttpURLConnection) new URL("https://api.minecraftservices.com/minecraft/profile/").openConnection();
c.setRequestProperty("Content-type", "application/json");
c.setRequestProperty("Authorization", "Bearer " + sessionID.getText());
c.setDoOutput(true);
//get json
JsonObject json = new JsonParser().parse(IOUtils.toString(c.getInputStream())).getAsJsonObject();
//get data
user = json.get("name").getAsString();
uuid = json.get("id").getAsString();
token = session;
}
//set session and return to previous screen
Minecraft.getMinecraft().session = new Session(user, uuid, token, "mojang");
status = "Logged into " + user;
Athena.INSTANCE.getAccountManager().getAccounts().add(new Account(AccountType.SESSION, user, uuid, token));
Athena.INSTANCE.getAccountManager().setCurrentAccount(Athena.INSTANCE.getAccountManager().getAccountByUsername(user));
Athena.INSTANCE.getAccountManager().isFirstLogin = false;
Athena.INSTANCE.getAccountManager().save();
Athena.INSTANCE.getLog().info("Success: Logged into " + user);
//mc.displayGuiScreen(previousScreen);
} catch (Exception e) {
status = "Failed to login";
Athena.INSTANCE.getLog().error("Failed to login");
System.out.println(sessionID.getText());
e.printStackTrace();
}
break;
}
});
@ -188,9 +140,8 @@ public class LoginPanel extends Panel {
hoverMicrosoftAnim.setDirection(hoveringMicrosoft ? Direction.FORWARDS : Direction.BACKWARDS);
RoundedUtils.drawRound(microX, microsoftY, microWidth, microHeight, 5, ColorUtil.applyOpacity(Color.BLACK, .2f + (.25f * hoverMicrosoftAnim.getOutput().floatValue())));
FontManager.getProductSansRegular(26).drawString("Microsoft Login", microX + 10, microsoftY + 4, -1);
FontManager.getProductSansRegular(16).drawString("Login to your migrated account", microX + 10, microsoftY + 23, -1);
FontManager.getProductSansRegular(16).drawString("Login by entering login details and clicking here", microX + 10, microsoftY + 23, -1);
float logoSize = 22;
DrawUtils.drawMicrosoftLogo(microX + microWidth - (10 + logoSize), microsoftY + (microHeight / 2f) - (logoSize / 2f), logoSize, 1.5f);

View File

@ -8,7 +8,6 @@ import rip.athena.client.events.SubscribeEvent;
import rip.athena.client.events.types.input.KeyDownEvent;
import rip.athena.client.events.types.input.MouseDownEvent;
import rip.athena.client.gui.clickgui.components.mods.MenuModKeybind;
import sun.rmi.transport.proxy.RMIHttpToCGISocketFactory;
import javax.crypto.Mac;
import java.util.List;

View File

@ -2,6 +2,7 @@ package rip.athena.client.modules.impl.other;
import com.mojang.authlib.GameProfile;
import net.minecraft.client.entity.EntityOtherPlayerMP;
import net.minecraft.client.gui.Gui;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.util.Vec3;
import rip.athena.client.Athena;
@ -110,7 +111,7 @@ public class AimTrainer extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,background.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, background.getRGB());
}
}

View File

@ -1,5 +1,6 @@
package rip.athena.client.modules.impl.render;
import net.minecraft.client.gui.Gui;
import org.lwjgl.opengl.GL11;
import rip.athena.client.Athena;
import rip.athena.client.config.ConfigValue;
@ -96,7 +97,7 @@ public class CPS extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,background.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, background.getRGB());
}
}

View File

@ -113,7 +113,7 @@ public class Clock extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12, background.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, background.getRGB());
}
}

View File

@ -2,6 +2,7 @@ package rip.athena.client.modules.impl.render;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.FontRenderer;
import net.minecraft.client.gui.Gui;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.WorldRenderer;
@ -92,17 +93,6 @@ public class Coordinates extends Module {
int myPosZ;
int myAngle;
int myDir;
int myMoveX;
int myMoveZ;
int myFind;
int coordLocation;
int myXLine, myYLine, myZLine, myBiomeLine;
int myBaseOffset;
int myCoord1Offset, myCoord2Offset;
int myRHSlocation;
int coordBoxW, coordBoxH;
int coordBoxL, coordBoxR, coordBoxTop, coordBoxBase;
private static final String[] myCardinalPoint = new String[] {"N", "NE", "E", "SE", "S", "SW", "W", "NW"};
@ -280,7 +270,7 @@ public class Coordinates extends Module {
} else if (backgroundMode.equalsIgnoreCase("Circle")) {
RoundedUtils.drawGradientRound(hud.getX(), hud.getY(), hud.getWidth(), hud.getHeight(), 6, ColorUtil.getClientColor(0, transparency), ColorUtil.getClientColor(90, transparency), ColorUtil.getClientColor(180, transparency), ColorUtil.getClientColor(270, transparency));
} else {
DrawUtils.drawGradientRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, backgroundColor.getRGB(), backgroundColor.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, backgroundColor.getRGB());
}
}

View File

@ -1,5 +1,6 @@
package rip.athena.client.modules.impl.render;
import net.minecraft.client.gui.Gui;
import org.lwjgl.opengl.GL11;
import rip.athena.client.Athena;
import rip.athena.client.config.ConfigValue;
@ -87,7 +88,7 @@ public class CustomText extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColorWave().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,background.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, background.getRGB());
}
}

View File

@ -1,5 +1,6 @@
package rip.athena.client.modules.impl.render;
import net.minecraft.client.gui.Gui;
import org.lwjgl.opengl.GL11;
import rip.athena.client.Athena;
import rip.athena.client.config.ConfigValue;
@ -87,7 +88,7 @@ public class EntityHUD extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColorWave().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,background.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, background.getRGB());
}
}

View File

@ -1,5 +1,6 @@
package rip.athena.client.modules.impl.render;
import net.minecraft.client.gui.Gui;
import net.minecraft.client.renderer.GlStateManager;
import org.lwjgl.input.Keyboard;
import org.lwjgl.opengl.GL11;
@ -96,7 +97,7 @@ public class FPSMod extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,background.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, background.getRGB());
}
}

View File

@ -1,5 +1,6 @@
package rip.athena.client.modules.impl.render;
import net.minecraft.client.gui.Gui;
import org.lwjgl.opengl.GL11;
import rip.athena.client.Athena;
import rip.athena.client.config.ConfigValue;
@ -103,7 +104,7 @@ public class MemoryUsage extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,background.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, background.getRGB());
}
}

View File

@ -1,5 +1,6 @@
package rip.athena.client.modules.impl.render;
import net.minecraft.client.gui.Gui;
import net.minecraft.client.renderer.texture.DynamicTexture;
import net.minecraft.client.renderer.texture.TextureUtil;
import net.minecraft.client.resources.IResourcePack;
@ -107,7 +108,7 @@ public class PackDisplay extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX() - 10, hud.getY(), hud.getX() + width + rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width(this.convertNormalText(pack.getPackName())) / 2, hud.getY() + height + 20, 12.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX() - 10, hud.getY(), hud.getX() + width + rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width(this.convertNormalText(pack.getPackName())) / 2, hud.getY() + height + 20, 12,background.getRGB());
Gui.drawRect(hud.getX() - 10, hud.getY(), hud.getX() + width + rip.athena.client.utils.font.FontManager.getProductSansRegular(20).width(this.convertNormalText(pack.getPackName())) / 2, hud.getY() + height + 20, background.getRGB());
}
}

View File

@ -1,6 +1,7 @@
package rip.athena.client.modules.impl.render;
import net.minecraft.client.entity.EntityPlayerSP;
import net.minecraft.client.gui.Gui;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@ -109,7 +110,7 @@ public class PotCounter extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,backgroundColor.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, backgroundColor.getRGB());
}
}

View File

@ -1,5 +1,6 @@
package rip.athena.client.modules.impl.render;
import net.minecraft.client.gui.Gui;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.util.MovingObjectPosition;
import org.lwjgl.opengl.GL11;
@ -115,7 +116,7 @@ public class ReachDisplay extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,background.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, background.getRGB());
}
}

View File

@ -2,6 +2,7 @@ package rip.athena.client.modules.impl.render;
import com.google.common.collect.Iterables;
import com.google.common.collect.Lists;
import net.minecraft.client.gui.Gui;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.client.renderer.GlStateManager;
@ -36,7 +37,7 @@ import rip.athena.client.utils.render.RoundedUtils;
public class Scoreboard extends Module {
@ConfigValue.List(name = "Display Mode", values = {"Modern", "Fade", "Custom", "Default"}, description = "Chose display of background")
private String backgroundMode = "Modern";
private String backgroundMode = "Default";
@ConfigValue.Color(name = "Background Color")
private Color backgroundColor = new Color(0, 0, 0, 150);
@ -159,7 +160,7 @@ public class Scoreboard extends Module {
} else if (backgroundMode.equalsIgnoreCase("Fade")) {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 8.0f, Athena.INSTANCE.getThemeManager().getTheme().getAccentColor().getRGB());
} else {
RoundedUtils.drawRoundedRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, 12,backgroundColor.getRGB());
Gui.drawRect(hud.getX(), hud.getY(), hud.getX() + width, hud.getY() + height, backgroundColor.getRGB());
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 452 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 421 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1018 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 835 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 670 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 719 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -10,7 +10,7 @@ bobView:true
anaglyph3d:false
maxFps:260
fboEnable:true
difficulty:1
difficulty:2
fancyGraphics:false
ao:0
renderClouds:false

Binary file not shown.

View File

@ -1 +1 @@
{"stat.walkOneCm":128091,"achievement.openInventory":11,"stat.leaveGame":74,"stat.damageTaken":50,"stat.killEntity.Spider":1,"stat.mobKills":34,"stat.killEntity.Creeper":33,"stat.useItem.minecraft.diamond_sword":76,"stat.flyOneCm":210056,"stat.drop":21,"stat.jump":638,"stat.playOneMinute":497598,"stat.fallOneCm":422,"stat.damageDealt":8415,"stat.crouchOneCm":373,"stat.timeSinceDeath":497598,"stat.sprintOneCm":69728,"stat.useItem.minecraft.spawn_egg":128,"achievement.exploreAllBiomes":{"value":0,"progress":["DesertHills","River","Desert"]}}
{"stat.walkOneCm":130758,"achievement.openInventory":11,"stat.leaveGame":78,"stat.damageTaken":50,"stat.killEntity.Spider":1,"stat.mobKills":34,"stat.killEntity.Creeper":33,"stat.useItem.minecraft.diamond_sword":76,"stat.flyOneCm":221475,"stat.drop":21,"stat.jump":651,"stat.playOneMinute":515922,"stat.fallOneCm":422,"stat.damageDealt":8415,"stat.crouchOneCm":373,"stat.timeSinceDeath":515922,"stat.sprintOneCm":71583,"stat.useItem.minecraft.spawn_egg":128,"achievement.exploreAllBiomes":{"value":0,"progress":["DesertHills","River","Desert"]}}

View File

@ -0,0 +1 @@
{"stat.flyOneCm":578,"stat.walkOneCm":1003,"stat.jump":5,"stat.playOneMinute":1823,"stat.leaveGame":1,"stat.timeSinceDeath":1823,"stat.sprintOneCm":544,"achievement.exploreAllBiomes":{"value":0,"progress":["Desert"]}}

View File

@ -1 +1 @@
{"stat.walkOneCm":11824,"achievement.openInventory":3,"stat.leaveGame":27,"stat.damageTaken":45,"stat.flyOneCm":16020,"stat.jump":85,"stat.playOneMinute":91240,"stat.fallOneCm":211,"stat.timeSinceDeath":91240,"stat.sprintOneCm":7810,"achievement.exploreAllBiomes":{"value":0,"progress":["Beach"]}}
{"stat.walkOneCm":13240,"achievement.openInventory":3,"stat.leaveGame":28,"stat.damageTaken":45,"stat.flyOneCm":18267,"stat.jump":94,"stat.playOneMinute":213167,"stat.fallOneCm":211,"stat.timeSinceDeath":213167,"stat.sprintOneCm":8888,"achievement.exploreAllBiomes":{"value":0,"progress":["Beach","Desert"]}}

View File

@ -27,6 +27,23 @@
"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
},
"CPS": {
"settings": {
"Transparency": 255,
@ -69,23 +86,6 @@
"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": {
"settings": {
"Transparency": 255,
@ -247,7 +247,7 @@
"alpha": 153
},
"Free Move": false,
"Display Mode": "Fade",
"Display Mode": "Default",
"Show Numbers": false
},
"bind": 0,
@ -258,6 +258,36 @@
"scale": 1
}},
"bindtype": "Toggle",
"enabled": true
},
"TPS": {
"settings": {
"Custom Font": false,
"Background": true,
"Mode": "Number",
"Background Color": {
"red": 0,
"green": 0,
"blue": 0,
"alpha": 102
},
"Display Mode": "Modern",
"Preset Color": true,
"TPS Color": {
"red": 255,
"green": 255,
"blue": 255,
"alpha": 255
}
},
"bind": 0,
"hud": {"tps": {
"visible": true,
"x": 13,
"y": 6,
"scale": 1
}},
"bindtype": "Toggle",
"enabled": false
},
"Memory usage": {
@ -299,36 +329,6 @@
"bindtype": "Toggle",
"enabled": true
},
"TPS": {
"settings": {
"Custom Font": false,
"Background": true,
"Mode": "Number",
"Background Color": {
"red": 0,
"green": 0,
"blue": 0,
"alpha": 90
},
"Display Mode": "Circle",
"Preset Color": true,
"TPS Color": {
"red": 255,
"green": 255,
"blue": 255,
"alpha": 255
}
},
"bind": 0,
"hud": {"tps": {
"visible": true,
"x": 0,
"y": 0,
"scale": 1
}},
"bindtype": "Toggle",
"enabled": false
},
"Armor Status": {
"settings": {
"Value Display": "Value Damage",
@ -537,7 +537,14 @@
"scale": 1
}},
"bindtype": "Toggle",
"enabled": false
"enabled": true
},
"ItemPhysics": {
"settings": {},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": true
},
"Key Strokes": {
"settings": {
@ -576,13 +583,6 @@
"bindtype": "Toggle",
"enabled": false
},
"ItemPhysics": {
"settings": {},
"bind": 0,
"hud": {},
"bindtype": "Toggle",
"enabled": true
},
"Old Animations": {
"settings": {
"Armor Damage Flash": true,
@ -672,8 +672,8 @@
"bind": 0,
"hud": {"packdisplay": {
"visible": true,
"x": 16,
"y": 4,
"x": 199,
"y": 43,
"scale": 1
}},
"bindtype": "Toggle",
@ -717,6 +717,7 @@
"bindtype": "Toggle",
"enabled": true
},
"cape": "Minecon 2016",
"NoHurtCam": {
"settings": {},
"bind": 0,

Some files were not shown because too many files have changed in this diff Show More