mirror of
https://github.com/Athena-Operations/Athena-Client.git
synced 2024-11-10 04:01:32 +01:00
cosmetic menu
This commit is contained in:
parent
0a42ede460
commit
c2c09e505f
3439
logs/latest.log
3439
logs/latest.log
File diff suppressed because it is too large
Load Diff
@ -12,7 +12,7 @@ public enum Category {
|
|||||||
MACROS("MACROS", "Athena/gui/mods/cps.png"),
|
MACROS("MACROS", "Athena/gui/mods/cps.png"),
|
||||||
WAYPOINTS("WAYPOINTS", "Athena/gui/menu/waypoints.png"),
|
WAYPOINTS("WAYPOINTS", "Athena/gui/menu/waypoints.png"),
|
||||||
PROFILES("PROFILES", "Athena/gui/menu/profiles.png"),
|
PROFILES("PROFILES", "Athena/gui/menu/profiles.png"),
|
||||||
CAPES("CAPES", "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"),
|
||||||
THEMES("THEMES", "Athena/gui/menu/themes.png");
|
THEMES("THEMES", "Athena/gui/menu/themes.png");
|
||||||
|
|
||||||
|
@ -28,13 +28,15 @@ public class PageManager {
|
|||||||
private void init() {
|
private void init() {
|
||||||
Minecraft mc = Minecraft.getMinecraft();
|
Minecraft mc = Minecraft.getMinecraft();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
pages.put(Category.MODS, new ModsPage(mc, menu, parent));
|
pages.put(Category.MODS, new ModsPage(mc, menu, parent));
|
||||||
pages.put(Category.SETTINGS, new SettingsPage(mc, menu, parent));
|
pages.put(Category.SETTINGS, new SettingsPage(mc, menu, parent));
|
||||||
pages.put(Category.MACROS, new MacrosPage(mc, menu, parent));
|
pages.put(Category.MACROS, new MacrosPage(mc, menu, parent));
|
||||||
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.CAPES, new CapesPage(mc, menu, parent));
|
pages.put(Category.COSMETICS, new CosmeticsPage(mc, menu, parent));
|
||||||
pages.put(Category.THEMES, new ThemesPage(mc, menu, parent));
|
pages.put(Category.THEMES, new ThemesPage(mc, menu, parent));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,9 +1,11 @@
|
|||||||
package rip.athena.client.gui.clickgui.components.cosmetics;
|
package rip.athena.client.gui.clickgui.components.cosmetics;
|
||||||
|
|
||||||
import net.minecraft.client.renderer.GlStateManager;
|
import net.minecraft.client.renderer.GlStateManager;
|
||||||
|
import rip.athena.client.Athena;
|
||||||
import rip.athena.client.gui.framework.draw.ButtonState;
|
import rip.athena.client.gui.framework.draw.ButtonState;
|
||||||
import rip.athena.client.gui.framework.draw.DrawType;
|
import rip.athena.client.gui.framework.draw.DrawType;
|
||||||
import rip.athena.client.gui.clickgui.components.macros.MacroButton;
|
import rip.athena.client.gui.clickgui.components.macros.MacroButton;
|
||||||
|
import rip.athena.client.theme.ThemeManager;
|
||||||
import rip.athena.client.utils.render.DrawUtils;
|
import rip.athena.client.utils.render.DrawUtils;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
@ -16,12 +18,12 @@ import java.awt.*;
|
|||||||
|
|
||||||
public class CosmeticGenericButton extends MacroButton {
|
public class CosmeticGenericButton extends MacroButton {
|
||||||
protected boolean filledBackground;
|
protected boolean filledBackground;
|
||||||
|
|
||||||
public CosmeticGenericButton(String text, int x, int y, int width, int height, boolean filledBackground) {
|
public CosmeticGenericButton(String text, int x, int y, int width, int height, boolean filledBackground) {
|
||||||
super(text, x, y, width, height, true);
|
super(text, x, y, width, height, true);
|
||||||
this.filledBackground = filledBackground;
|
this.filledBackground = filledBackground;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onInitColors() {
|
public void onInitColors() {
|
||||||
setColor(DrawType.BACKGROUND, ButtonState.NORMAL, new Color(35, 35, 35, 255));
|
setColor(DrawType.BACKGROUND, ButtonState.NORMAL, new Color(35, 35, 35, 255));
|
||||||
@ -42,14 +44,14 @@ public class CosmeticGenericButton extends MacroButton {
|
|||||||
setColor(DrawType.TEXT, ButtonState.HOVERACTIVE, new Color(255, 255, 255, 255));
|
setColor(DrawType.TEXT, ButtonState.HOVERACTIVE, new Color(255, 255, 255, 255));
|
||||||
setColor(DrawType.TEXT, ButtonState.DISABLED, new Color(255, 255, 255, 255));
|
setColor(DrawType.TEXT, ButtonState.DISABLED, new Color(255, 255, 255, 255));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onRender() {
|
public void onRender() {
|
||||||
int x = this.getRenderX();
|
int x = this.getRenderX();
|
||||||
int y = this.getRenderY();
|
int y = this.getRenderY();
|
||||||
int width = (this.width == -1 && this.height == -1) ? (getStringWidth(text) + minOffset * 2) : this.width;
|
int width = (this.width == -1 && this.height == -1) ? (getStringWidth(text) + minOffset * 2) : this.width;
|
||||||
int height = (this.width == -1 && this.height == -1) ? (getStringHeight(text) + minOffset * 2) : this.height;
|
int height = (this.width == -1 && this.height == -1) ? (getStringHeight(text) + minOffset * 2) : this.height;
|
||||||
|
|
||||||
int backgroundColor = getColor(DrawType.BACKGROUND, lastState);
|
int backgroundColor = getColor(DrawType.BACKGROUND, lastState);
|
||||||
int lineColor = getColor(DrawType.LINE, lastState);
|
int lineColor = getColor(DrawType.LINE, lastState);
|
||||||
int textColor = getColor(DrawType.TEXT, lastState);
|
int textColor = getColor(DrawType.TEXT, lastState);
|
||||||
@ -58,11 +60,13 @@ public class CosmeticGenericButton extends MacroButton {
|
|||||||
//rip.athena.client.gui.framework.draw.DrawImpl.drawRect(x, y, width, height, backgroundColor);
|
//rip.athena.client.gui.framework.draw.DrawImpl.drawRect(x, y, width, height, backgroundColor);
|
||||||
}
|
}
|
||||||
|
|
||||||
GlStateManager.color(1,1,1);
|
theme = Athena.INSTANCE.getThemeManager().getTheme();
|
||||||
DrawUtils.drawRoundedRect(x, y, x + width, y + height, 4.0f, new Color(50, 50, 50, 255).getRGB());
|
|
||||||
DrawUtils.drawRoundedRect(x + 1, y + 1, x + width - 1, y + height - 1, 4.0f, lineColor);
|
|
||||||
|
|
||||||
/*drawHorizontalLine(x, y, width + 1, 1, lineColor);
|
GlStateManager.color(1,1,1);
|
||||||
|
DrawUtils.drawRoundedRect(x, y, x + width, y + height, 4.0f, new Color(theme.getFirstColor().getRed(), theme.getFirstColor().getGreen(), theme.getFirstColor().getBlue(), 90).getRGB());
|
||||||
|
DrawUtils.drawRoundedRect(x + 1, y + 1, x + width - 1, y + height - 1, 4.0f, backgroundColor);
|
||||||
|
|
||||||
|
/*drawHorizontalLine(x, y, width + 1, 1, lineColor);
|
||||||
drawVerticalLine(x, y + 1, height - 1, 1, lineColor);
|
drawVerticalLine(x, y + 1, height - 1, 1, lineColor);
|
||||||
drawHorizontalLine(x, y + height, width + 1, 1, lineColor);
|
drawHorizontalLine(x, y + height, width + 1, 1, lineColor);
|
||||||
drawVerticalLine(x + width, y + 1, height - 1, 1, lineColor);
|
drawVerticalLine(x + width, y + 1, height - 1, 1, lineColor);
|
||||||
@ -71,9 +75,9 @@ public class CosmeticGenericButton extends MacroButton {
|
|||||||
drawShadowLeft(x, y, height + 1);
|
drawShadowLeft(x, y, height + 1);
|
||||||
drawShadowDown(x, y + height + 1, width + 1);
|
drawShadowDown(x, y + height + 1, width + 1);
|
||||||
drawShadowRight(x + width + 1, y, height + 1);*/
|
drawShadowRight(x + width + 1, y, height + 1);*/
|
||||||
|
|
||||||
drawText(text, x + (width / 2 - getStringWidth(text) / 2), y + (height / 2 - getStringHeight(text) / 2), textColor);
|
drawText(text, x + (width / 2 - getStringWidth(text) / 2), y + (height / 2 - getStringHeight(text) / 2), textColor);
|
||||||
|
|
||||||
mouseDown = false;
|
mouseDown = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,103 +0,0 @@
|
|||||||
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() {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,21 +1,17 @@
|
|||||||
package rip.athena.client.gui.clickgui.pages;
|
package rip.athena.client.gui.clickgui.pages;
|
||||||
|
|
||||||
import net.minecraft.client.renderer.GlStateManager;
|
|
||||||
import rip.athena.client.font.FontManager;
|
|
||||||
import rip.athena.client.gui.framework.Menu;
|
|
||||||
import rip.athena.client.gui.framework.MenuComponent;
|
|
||||||
import rip.athena.client.gui.clickgui.IngameMenu;
|
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import org.lwjgl.input.Keyboard;
|
|
||||||
|
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.Page;
|
||||||
import rip.athena.client.gui.clickgui.components.cosmetics.*;
|
import rip.athena.client.gui.clickgui.components.capes.CapeButton;
|
||||||
import rip.athena.client.gui.clickgui.components.macros.MacroButton;
|
import rip.athena.client.gui.clickgui.components.cosmetics.CosmeticGenericButton;
|
||||||
import rip.athena.client.gui.clickgui.components.mods.MenuModKeybind;
|
import rip.athena.client.gui.clickgui.components.cosmetics.CosmeticTextComponent;
|
||||||
import rip.athena.client.gui.clickgui.components.mods.ModCategoryButton;
|
|
||||||
import rip.athena.client.gui.clickgui.components.mods.ModScrollPane;
|
import rip.athena.client.gui.clickgui.components.mods.ModScrollPane;
|
||||||
import rip.athena.client.gui.clickgui.pages.cosmetics.BandanaSize;
|
|
||||||
import rip.athena.client.gui.clickgui.pages.cosmetics.CapeType;
|
|
||||||
import rip.athena.client.gui.clickgui.pages.cosmetics.CosmeticType;
|
import rip.athena.client.gui.clickgui.pages.cosmetics.CosmeticType;
|
||||||
|
import rip.athena.client.gui.framework.Menu;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Athena Development
|
* @author Athena Development
|
||||||
@ -24,494 +20,169 @@ import rip.athena.client.gui.clickgui.pages.cosmetics.CosmeticType;
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
public class CosmeticsPage extends Page {
|
public class CosmeticsPage extends Page {
|
||||||
private CosmeticType cosmeticType = CosmeticType.CAPES;
|
private ModScrollPane cosmeticsPane;
|
||||||
|
private ModScrollPane mainPane;
|
||||||
private CosmeticGenericButton capes;
|
|
||||||
private CosmeticGenericButton bandanas;
|
|
||||||
private CosmeticGenericButton emotes;
|
|
||||||
private CosmeticGenericButton flags;
|
|
||||||
|
|
||||||
private MenuModKeybind emoteWheelBind;
|
|
||||||
|
|
||||||
private CosmeticBindButton bindButton1;
|
|
||||||
private CosmeticBindButton bindButton2;
|
|
||||||
private CosmeticBindButton bindButton3;
|
|
||||||
private CosmeticBindButton bindButton4;
|
|
||||||
|
|
||||||
private CosmeticBindButton lastButton;
|
|
||||||
|
|
||||||
private CosmeticList capeLocation;
|
|
||||||
private CosmeticList bandanaLocation;
|
|
||||||
|
|
||||||
private MacroButton resetButton;
|
|
||||||
|
|
||||||
private CosmeticRainbowButton openCrateButton;
|
|
||||||
|
|
||||||
private CosmeticGenericButton resetCape;
|
|
||||||
private CosmeticToggleButton capeEnabled;
|
|
||||||
|
|
||||||
private CosmeticUserPreview userPreview;
|
|
||||||
|
|
||||||
private ModScrollPane scrollpane;
|
|
||||||
|
|
||||||
public CosmeticsPage(Minecraft mc, Menu menu, IngameMenu parent) {
|
|
||||||
super(mc, menu, parent);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
private CosmeticGenericButton capes;
|
||||||
public void onInit() {
|
private CosmeticGenericButton bandanas;
|
||||||
int x = 15;
|
private CosmeticGenericButton emotes;
|
||||||
int y = 59 + 50;
|
private CosmeticGenericButton flags;
|
||||||
int typeWidth = 125;
|
|
||||||
int typeHeight = 20;
|
|
||||||
|
|
||||||
int width = 300;
|
|
||||||
int compWidth = width - 6 - 20 * 2;
|
|
||||||
|
|
||||||
capes = new CosmeticGenericButton(CosmeticType.CAPES.toString(), x, y, typeWidth, typeHeight, false) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
cosmeticType = CosmeticType.CAPES;
|
|
||||||
populateScrollPane();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
bandanas = new CosmeticGenericButton(CosmeticType.BANDANAS.toString(), x + typeWidth + 20, y, typeWidth, typeHeight, false) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
cosmeticType = CosmeticType.BANDANAS;
|
|
||||||
populateScrollPane();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
emotes = new CosmeticGenericButton(CosmeticType.EMOTES.toString(), x, y + typeHeight + 10, typeWidth, typeHeight, false) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
cosmeticType = CosmeticType.EMOTES;
|
|
||||||
populateScrollPane();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
flags = new CosmeticGenericButton(CosmeticType.FLAGS.toString(), x + typeWidth + 20, y + typeHeight + 10, typeWidth, typeHeight, false) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
cosmeticType = CosmeticType.FLAGS;
|
|
||||||
populateScrollPane();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
scrollpane = new ModScrollPane(x, y + typeHeight * 2 + 20, width - x - 2, menu.getHeight() - y - typeHeight * 2 - 20 - 1, true);
|
|
||||||
|
|
||||||
x = menu.getWidth() - width + 20;
|
|
||||||
y -= 30;
|
|
||||||
|
|
||||||
emoteWheelBind = new MenuModKeybind(x - 21 + width / 2 - compWidth / 2, y + 50, compWidth, 22) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
//Athena.INSTANCE.emoteSettings.setKeyBind(getBind());
|
|
||||||
//Athena.INSTANCE.emoteSettings.saveEmoteSettings();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
bindButton1 = new CosmeticBindButton(x - 21 + width / 2 - compWidth / 2, y + 110, compWidth, 22) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
lastButton = this;
|
|
||||||
unpressAll(lastButton);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
bindButton2 = new CosmeticBindButton(x - 21 + width / 2 - compWidth / 2, y + 140, compWidth, 22) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
lastButton = this;
|
|
||||||
unpressAll(lastButton);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
bindButton3 = new CosmeticBindButton(x - 21 + width / 2 - compWidth / 2, y + 170, compWidth, 22) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
lastButton = this;
|
|
||||||
unpressAll(lastButton);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
bindButton4 = new CosmeticBindButton(x - 21 + width / 2 - compWidth / 2, y + 200, compWidth, 22) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
lastButton = this;
|
|
||||||
unpressAll(lastButton);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
capeLocation = new CosmeticList(CapeType.class, x - 21 + width / 2 - compWidth / 2, y + 260, compWidth, 22) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
/*if(Athena.INSTANCE.capeManager != null) {
|
|
||||||
Athena.INSTANCE.capeManager.getSettings().setType(CapeType.valueOf(getValue().replace(' ', '_').toUpperCase()));
|
|
||||||
Athena.INSTANCE.capeManager.saveSettings();
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
bandanaLocation = new CosmeticList(BandanaSize.class, x - 21 + width / 2 - compWidth / 2, y + 320, compWidth, 22) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
/*BandanaPlayerHandler handler = Athena.INSTANCE.bandanaManager.getFromUUID(mc.thePlayer.getUniqueID().toString());
|
|
||||||
|
|
||||||
int bandanaHeightOffset = 0;
|
|
||||||
BandanaSize val = BandanaSize.valueOf(getValue().toUpperCase());
|
|
||||||
|
|
||||||
switch(val) {
|
|
||||||
case LARGE:
|
|
||||||
bandanaHeightOffset = 8;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MEDIUM:
|
|
||||||
bandanaHeightOffset = 7;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case SMALL:
|
|
||||||
bandanaHeightOffset = 5;
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(handler != null) {
|
|
||||||
handler.updateBandanaHeight(bandanaHeightOffset);
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
resetButton = new MacroButton("RESET TO DEFAULT", x - 21 + width / 2 - compWidth / 2, menu.getHeight() - 22 - 20, compWidth, 22, false) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
|
|
||||||
emoteWheelBind.setBind(Keyboard.CHAR_NONE);
|
|
||||||
|
|
||||||
bindButton1.setBind("");
|
|
||||||
bindButton2.setBind("");
|
|
||||||
bindButton3.setBind("");
|
|
||||||
bindButton4.setBind("");
|
|
||||||
|
|
||||||
/*Athena.INSTANCE.emoteSettings.setKeyBind(Keyboard.CHAR_NONE);
|
|
||||||
|
|
||||||
Athena.INSTANCE.emoteSettings.setEmote1("");
|
|
||||||
Athena.INSTANCE.emoteSettings.setEmote2("");
|
|
||||||
Athena.INSTANCE.emoteSettings.setEmote3("");
|
|
||||||
Athena.INSTANCE.emoteSettings.setEmote4("");
|
|
||||||
|
|
||||||
Athena.INSTANCE.emoteSettings.saveEmoteSettings();
|
|
||||||
|
|
||||||
capeLocation.setValue(CapeType.NORMAL.toString());*/
|
private CosmeticType cosmeticType;
|
||||||
bandanaLocation.setValue(BandanaSize.MEDIUM.toString());
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
x = menu.getWidth() / 2;
|
|
||||||
|
|
||||||
width = 350;
|
|
||||||
|
|
||||||
openCrateButton = new CosmeticRainbowButton("OPEN A CRATE", x - width / 2, y, width, 40) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
|
|
||||||
Minecraft.getMinecraft().displayGuiScreen(null);
|
|
||||||
|
|
||||||
/*if(Athena.INSTANCE.crateManager.hasCrate(mc.thePlayer)) {
|
|
||||||
Athena.INSTANCE.notificationManager.showNotification("Please wait for your last crate to finish first.", Color.RED);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
NetworkingClient.sendLine("Opencrate", "emote");*/
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
resetCape = new CosmeticGenericButton("SET CAPE TO NONE", x - width / 2, menu.getHeight() - 40 - 40, width, 20, true) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
|
|
||||||
/*if(Athena.INSTANCE.capeManager != null) {
|
|
||||||
new Thread(() -> {
|
|
||||||
Athena.INSTANCE.capeManager.getCape("none").updateSelectedCape();
|
|
||||||
Athena.INSTANCE.capeManager.capeLookupThread.performUpdate();
|
|
||||||
}).start();
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/*capeEnabled = new CosmeticToggleButton(Athena.INSTANCE.capeManager != null && Athena.INSTANCE.capeManager.getSettings().getEnabled() ? "ENABLED" : "DISABLED", x - width / 2, menu.getHeight() - 40 - 15, width, 20, Athena.INSTANCE.capeManager != null && Athena.INSTANCE.capeManager.getSettings().getEnabled()) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
|
|
||||||
if(Athena.INSTANCE.capeManager != null) {
|
|
||||||
Athena.INSTANCE.capeManager.getSettings().setEnabled(!Athena.INSTANCE.capeManager.getSettings().getEnabled());
|
|
||||||
Athena.INSTANCE.capeManager.saveSettings();
|
|
||||||
|
|
||||||
capeEnabled.setText(Athena.INSTANCE.capeManager.getSettings().getEnabled() ? "ENABLED" : "DISABLED");
|
|
||||||
capeEnabled.setApprove(Athena.INSTANCE.capeManager.getSettings().getEnabled());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};*/
|
|
||||||
|
|
||||||
userPreview = new CosmeticUserPreview(x - width / 2, y + 45, width, 275);
|
|
||||||
|
|
||||||
/*if(Athena.INSTANCE.capeManager != null) {
|
|
||||||
capeLocation.setValue(Athena.INSTANCE.capeManager.getSettings().getType().toString());
|
|
||||||
}*/
|
|
||||||
|
|
||||||
bandanaLocation.setValue(BandanaSize.MEDIUM.toString());
|
|
||||||
|
|
||||||
populateScrollPane();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void updateMenuStates(boolean load) {
|
|
||||||
for(MenuComponent comp : menu.getComponents()) {
|
|
||||||
if(comp instanceof CosmeticGenericButton) {
|
|
||||||
CosmeticGenericButton button = (CosmeticGenericButton) comp;
|
|
||||||
|
|
||||||
if(!button.getText().equalsIgnoreCase(cosmeticType.toString())) {
|
|
||||||
button.setActive(false);
|
|
||||||
} else {
|
|
||||||
button.setActive(true);
|
|
||||||
|
|
||||||
if(load) {
|
|
||||||
button.onAction();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void populateScrollPane() {
|
|
||||||
scrollpane.getComponents().clear();
|
|
||||||
|
|
||||||
updateMenuStates(false);
|
|
||||||
|
|
||||||
/*if(cosmeticType == CosmeticType.CAPES) {
|
|
||||||
int spacing = 10;
|
|
||||||
int originalX = 10;
|
|
||||||
int x = originalX;
|
|
||||||
int y = 10;
|
|
||||||
int width = 120;
|
|
||||||
int height = 170;
|
|
||||||
|
|
||||||
if(Athena.INSTANCE.capeManager != null) {
|
|
||||||
for(Cape cape : Athena.INSTANCE.capeManager.ownedCapes) {
|
|
||||||
CosmeticCapeView view = new CosmeticCapeView(cape, x, y, width, height);
|
|
||||||
scrollpane.addComponent(view);
|
|
||||||
|
|
||||||
scrollpane.addComponent(new CosmeticGenericButton("ENABLE", x + 5, y + view.getHeight() - 25, width - 10, 20, true) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
|
|
||||||
mc.thePlayer.capeOverride = cape.getPreview();
|
|
||||||
|
|
||||||
new Thread(() -> {
|
|
||||||
cape.updateSelectedCape();
|
|
||||||
}).start();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
x += view.getWidth() + spacing;
|
|
||||||
|
|
||||||
if(x + view.getWidth() + spacing > scrollpane.getWidth()) {
|
|
||||||
x = originalX;
|
|
||||||
y += view.getHeight() + spacing;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if(cosmeticType == CosmeticType.EMOTES) {
|
|
||||||
int spacing = 10;
|
|
||||||
int originalX = 0;
|
|
||||||
int x = originalX;
|
|
||||||
int y = 10;
|
|
||||||
int width = scrollpane.getWidth() - 15;
|
|
||||||
int height = 30;
|
|
||||||
|
|
||||||
if(Athena.INSTANCE.emoteManager != null) {
|
|
||||||
for(Emote emote : Athena.INSTANCE.emoteManager.ownedEmotes) {
|
|
||||||
scrollpane.addComponent(new CosmeticActionButton(I18n.format(emote.getTitle().toUpperCase()), emote.getKey(), x, y + height - 25, width - 10, height, true) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
pressEmote(I18n.format(emote.getTitle()));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
y += height + spacing;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if(cosmeticType == CosmeticType.BANDANAS) {
|
|
||||||
int spacing = 10;
|
|
||||||
int originalX = 0;
|
|
||||||
int x = originalX;
|
|
||||||
int y = 10;
|
|
||||||
int width = scrollpane.getWidth() - 15;
|
|
||||||
int height = 30;
|
|
||||||
|
|
||||||
if(Athena.INSTANCE.bandanaManager != null) {
|
|
||||||
for(Bandana bandana : Athena.INSTANCE.bandanaManager.ownedBandanas) {
|
|
||||||
scrollpane.addComponent(new CosmeticActionButton(bandana.getName().toUpperCase(), bandana.getName(), x, y + height - 25, width - 10, height, true) {
|
|
||||||
@Override
|
|
||||||
public void onAction() {
|
|
||||||
setActive(false);
|
|
||||||
|
|
||||||
new Thread(() -> {
|
|
||||||
bandana.updateSelectedBandana(bandanaLocation.getValue());
|
|
||||||
}).start();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
y += height + spacing;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if(cosmeticType == CosmeticType.FLAGS) {
|
|
||||||
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
public CosmeticsPage(Minecraft mc, Menu menu, IngameMenu parent) {
|
||||||
public void onRender() {
|
super(mc, menu, parent);
|
||||||
int width = 300;
|
}
|
||||||
int x = menu.getX() + menu.getWidth() - width + 20;
|
|
||||||
int y = menu.getY() + 59;
|
|
||||||
int height = 32;
|
|
||||||
|
|
||||||
rip.athena.client.gui.framework.draw.DrawImpl.drawRect(menu.getX() + menu.getWidth() - width, menu.getY() + 58, width, menu.getHeight() - 58, MacrosPage.MENU_SIDE_BG_COLOR);
|
@Override
|
||||||
|
public void onInit() {
|
||||||
|
int width = 300;
|
||||||
|
|
||||||
rip.athena.client.gui.framework.draw.DrawImpl.drawRect(menu.getX() + menu.getWidth() - width, menu.getY() + 58, width, height + 1, ModCategoryButton.MAIN_COLOR);
|
mainPane = new ModScrollPane(260, 150, menu.getWidth() - width, menu.getHeight() - 200, false);
|
||||||
drawShadowDown(menu.getX() + menu.getWidth() - width, y + height, width);
|
cosmeticsPane = new ModScrollPane(260, 150, menu.getWidth() - width, menu.getHeight() - 200, false);
|
||||||
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("COSMETIC SETTINGS", menu.getX() + menu.getWidth() - width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width("COSMETIC SETTINGS") / 2, y + height / 2 - FontManager.baloo17.getHeight("COSMETIC SETTINGS") / 2, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
int x = 270;
|
||||||
|
int y = 90;
|
||||||
|
int typeWidth = 145;
|
||||||
|
int typeHeight = 30;
|
||||||
|
|
||||||
rip.athena.client.gui.framework.draw.DrawImpl.drawRect(menu.getX(), menu.getY() + 58, width, menu.getHeight() - 58, MacrosPage.MENU_SIDE_BG_COLOR);
|
cosmeticType = CosmeticType.CAPES;
|
||||||
|
|
||||||
rip.athena.client.gui.framework.draw.DrawImpl.drawRect(menu.getX(), menu.getY() + 58, width, height + 1, ModCategoryButton.MAIN_COLOR);
|
capes = new CosmeticGenericButton(CosmeticType.CAPES.toString(), x, y, typeWidth, typeHeight, false) {
|
||||||
drawShadowDown(menu.getX(), y + height, width);
|
@Override
|
||||||
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("COSMETICS", menu.getX() + width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width("COSMETICS") / 2, y + height / 2 - FontManager.baloo17.getHeight("COSMETICS") / 2, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
drawShadowDown(menu.getX(), y - 1, width);
|
cosmeticType = CosmeticType.CAPES;
|
||||||
drawShadowDown(menu.getX() + menu.getWidth() - width, y - 1, width);
|
popularMainPane();
|
||||||
|
}
|
||||||
x += 3;
|
};
|
||||||
y += 50;
|
|
||||||
|
|
||||||
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("EMOTE WHEEL KEYBIND", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
|
||||||
|
|
||||||
y += 60;
|
|
||||||
|
|
||||||
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("ENABLED EMOTES", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
|
||||||
|
|
||||||
y += 150;
|
|
||||||
|
|
||||||
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("CAPE LOCATION", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
|
||||||
|
|
||||||
y += 60;
|
|
||||||
|
|
||||||
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("BANDANA LOCATION", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onLoad() {
|
|
||||||
/*if(Athena.INSTANCE.capeManager != null) {
|
|
||||||
Athena.INSTANCE.capeManager.updateOwnedCapes();
|
|
||||||
}
|
|
||||||
|
|
||||||
if(Athena.INSTANCE.bandanaManager != null) {
|
|
||||||
Athena.INSTANCE.bandanaManager.updateOwnedBandanas();
|
|
||||||
}
|
|
||||||
|
|
||||||
if(Athena.INSTANCE.emoteManager != null) {
|
|
||||||
Athena.INSTANCE.emoteManager.updateOwnedEmotes();
|
|
||||||
}*/
|
|
||||||
|
|
||||||
menu.addComponent(capes);
|
|
||||||
menu.addComponent(bandanas);
|
|
||||||
menu.addComponent(emotes);
|
|
||||||
menu.addComponent(flags);
|
|
||||||
|
|
||||||
menu.addComponent(emoteWheelBind);
|
|
||||||
|
|
||||||
menu.addComponent(bindButton1);
|
|
||||||
menu.addComponent(bindButton2);
|
|
||||||
menu.addComponent(bindButton3);
|
|
||||||
menu.addComponent(bindButton4);
|
|
||||||
|
|
||||||
menu.addComponent(capeLocation);
|
|
||||||
menu.addComponent(bandanaLocation);
|
|
||||||
|
|
||||||
menu.addComponent(resetButton);
|
|
||||||
|
|
||||||
menu.addComponent(openCrateButton);
|
|
||||||
|
|
||||||
menu.addComponent(resetCape);
|
|
||||||
//menu.addComponent(capeEnabled);
|
|
||||||
|
|
||||||
menu.addComponent(userPreview);
|
|
||||||
|
|
||||||
menu.addComponent(scrollpane);
|
|
||||||
|
|
||||||
updateMenuStates(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onUnload() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
bandanas = new CosmeticGenericButton(CosmeticType.BANDANAS.toString(), x + typeWidth + 20, y, typeWidth, typeHeight, false) {
|
||||||
public void onOpen() {
|
@Override
|
||||||
|
public void onAction() {
|
||||||
}
|
setActive(false);
|
||||||
|
cosmeticType = CosmeticType.BANDANAS;
|
||||||
@Override
|
popularMainPane();
|
||||||
public void onClose() {
|
}
|
||||||
|
};
|
||||||
}
|
|
||||||
|
emotes = new CosmeticGenericButton(CosmeticType.EMOTES.toString(), x + typeWidth + 185, y, typeWidth, typeHeight, false) {
|
||||||
private void pressEmote(String emote) {
|
@Override
|
||||||
if(lastButton != null) {
|
public void onAction() {
|
||||||
lastButton.setBind(emote);
|
setActive(false);
|
||||||
|
cosmeticType = CosmeticType.EMOTES;
|
||||||
/*if(lastButton == bindButton1) {
|
popularMainPane();
|
||||||
Athena.INSTANCE.emoteSettings.setEmote1(emote);
|
}
|
||||||
} else if(lastButton == bindButton2) {
|
};
|
||||||
Athena.INSTANCE.emoteSettings.setEmote2(emote);
|
|
||||||
} else if(lastButton == bindButton3) {
|
flags = new CosmeticGenericButton(CosmeticType.FLAGS.toString(), x + typeWidth + 350, y, typeWidth, typeHeight, false) {
|
||||||
Athena.INSTANCE.emoteSettings.setEmote3(emote);
|
@Override
|
||||||
} else if(lastButton == bindButton4) {
|
public void onAction() {
|
||||||
Athena.INSTANCE.emoteSettings.setEmote4(emote);
|
setActive(false);
|
||||||
}
|
cosmeticType = CosmeticType.FLAGS;
|
||||||
|
popularMainPane();
|
||||||
Athena.INSTANCE.emoteSettings.saveEmoteSettings();*/
|
}
|
||||||
|
};
|
||||||
lastButton = null;
|
|
||||||
unpressAll(lastButton);
|
popularMainPane();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void unpressAll(CosmeticBindButton b) {
|
private void popularMainPane() {
|
||||||
for(MenuComponent comp : menu.getComponents()) {
|
mainPane.getComponents().clear();
|
||||||
if(comp instanceof CosmeticBindButton) {
|
cosmeticsPane.getComponents().clear();
|
||||||
CosmeticBindButton button = (CosmeticBindButton) comp;
|
|
||||||
|
if(cosmeticType == CosmeticType.CAPES) {
|
||||||
if(button != b) {
|
populateCosmeticsScrollPane();
|
||||||
button.setActive(false);
|
} else if(cosmeticType == CosmeticType.EMOTES) {
|
||||||
}
|
populateUnusedPane();
|
||||||
}
|
} else if(cosmeticType == CosmeticType.BANDANAS) {
|
||||||
}
|
populateUnusedPane();
|
||||||
}
|
} else if(cosmeticType == CosmeticType.FLAGS) {
|
||||||
|
populateUnusedPane();
|
||||||
|
} else if(cosmeticType == CosmeticType.NONE) {
|
||||||
|
populateUnusedPane();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void populateUnusedPane() {
|
||||||
|
mainPane.getComponents().clear();
|
||||||
|
cosmeticsPane.getComponents().clear();
|
||||||
|
|
||||||
|
mainPane.addComponent(new CosmeticTextComponent(mainPane.getX() , mainPane.getY() , 0, 0, -1));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void populateCosmeticsScrollPane() {
|
||||||
|
cosmeticsPane.getComponents().clear();
|
||||||
|
|
||||||
|
int spacing = 15;
|
||||||
|
int height = 250;
|
||||||
|
|
||||||
|
int defaultX = spacing;
|
||||||
|
|
||||||
|
int y = spacing;
|
||||||
|
int x = spacing;
|
||||||
|
|
||||||
|
int width = 190;
|
||||||
|
|
||||||
|
int maxWidth = cosmeticsPane.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);
|
||||||
|
populateCosmeticsScrollPane();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
capeButton.setSelected(cape == Athena.INSTANCE.getCosmeticsController().getCapeManager().getSelectedCape());
|
||||||
|
|
||||||
|
cosmeticsPane.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(mainPane);
|
||||||
|
menu.addComponent(cosmeticsPane);
|
||||||
|
|
||||||
|
menu.addComponent(capes);
|
||||||
|
menu.addComponent(bandanas);
|
||||||
|
menu.addComponent(emotes);
|
||||||
|
menu.addComponent(flags);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onUnload() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onOpen() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClose() {
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,516 @@
|
|||||||
|
package rip.athena.client.gui.clickgui.pages;
|
||||||
|
|
||||||
|
import rip.athena.client.font.FontManager;
|
||||||
|
import rip.athena.client.gui.framework.Menu;
|
||||||
|
import rip.athena.client.gui.framework.MenuComponent;
|
||||||
|
import rip.athena.client.gui.clickgui.IngameMenu;
|
||||||
|
import net.minecraft.client.Minecraft;
|
||||||
|
import org.lwjgl.input.Keyboard;
|
||||||
|
import rip.athena.client.gui.clickgui.Page;
|
||||||
|
import rip.athena.client.gui.clickgui.components.cosmetics.*;
|
||||||
|
import rip.athena.client.gui.clickgui.components.macros.MacroButton;
|
||||||
|
import rip.athena.client.gui.clickgui.components.mods.MenuModKeybind;
|
||||||
|
import rip.athena.client.gui.clickgui.components.mods.ModCategoryButton;
|
||||||
|
import rip.athena.client.gui.clickgui.components.mods.ModScrollPane;
|
||||||
|
import rip.athena.client.gui.clickgui.pages.cosmetics.BandanaSize;
|
||||||
|
import rip.athena.client.gui.clickgui.pages.cosmetics.CapeType;
|
||||||
|
import rip.athena.client.gui.clickgui.pages.cosmetics.CosmeticType;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Athena Development
|
||||||
|
* @project Athena-Client
|
||||||
|
* @date 6/2/2023
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class OldCosmeticsPage extends Page {
|
||||||
|
private CosmeticType cosmeticType = CosmeticType.CAPES;
|
||||||
|
|
||||||
|
private CosmeticGenericButton capes;
|
||||||
|
private CosmeticGenericButton bandanas;
|
||||||
|
private CosmeticGenericButton emotes;
|
||||||
|
private CosmeticGenericButton flags;
|
||||||
|
|
||||||
|
private MenuModKeybind emoteWheelBind;
|
||||||
|
|
||||||
|
private CosmeticBindButton bindButton1;
|
||||||
|
private CosmeticBindButton bindButton2;
|
||||||
|
private CosmeticBindButton bindButton3;
|
||||||
|
private CosmeticBindButton bindButton4;
|
||||||
|
|
||||||
|
private CosmeticBindButton lastButton;
|
||||||
|
|
||||||
|
private CosmeticList capeLocation;
|
||||||
|
private CosmeticList bandanaLocation;
|
||||||
|
|
||||||
|
private MacroButton resetButton;
|
||||||
|
|
||||||
|
private CosmeticRainbowButton openCrateButton;
|
||||||
|
|
||||||
|
private CosmeticGenericButton resetCape;
|
||||||
|
private CosmeticToggleButton capeEnabled;
|
||||||
|
|
||||||
|
private CosmeticUserPreview userPreview;
|
||||||
|
|
||||||
|
private ModScrollPane scrollpane;
|
||||||
|
|
||||||
|
public OldCosmeticsPage(Minecraft mc, Menu menu, IngameMenu parent) {
|
||||||
|
super(mc, menu, parent);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onInit() {
|
||||||
|
int x = 15;
|
||||||
|
int y = 59 + 50;
|
||||||
|
int typeWidth = 125;
|
||||||
|
int typeHeight = 20;
|
||||||
|
|
||||||
|
int width = 300;
|
||||||
|
int compWidth = width - 6 - 20 * 2;
|
||||||
|
|
||||||
|
capes = new CosmeticGenericButton(CosmeticType.CAPES.toString(), x, y, typeWidth, typeHeight, false) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
cosmeticType = CosmeticType.CAPES;
|
||||||
|
populateScrollPane();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
bandanas = new CosmeticGenericButton(CosmeticType.BANDANAS.toString(), x + typeWidth + 20, y, typeWidth, typeHeight, false) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
cosmeticType = CosmeticType.BANDANAS;
|
||||||
|
populateScrollPane();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
emotes = new CosmeticGenericButton(CosmeticType.EMOTES.toString(), x, y + typeHeight + 10, typeWidth, typeHeight, false) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
cosmeticType = CosmeticType.EMOTES;
|
||||||
|
populateScrollPane();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
flags = new CosmeticGenericButton(CosmeticType.FLAGS.toString(), x + typeWidth + 20, y + typeHeight + 10, typeWidth, typeHeight, false) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
cosmeticType = CosmeticType.FLAGS;
|
||||||
|
populateScrollPane();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
scrollpane = new ModScrollPane(x, y + typeHeight * 2 + 20, width - x - 2, menu.getHeight() - y - typeHeight * 2 - 20 - 1, true);
|
||||||
|
|
||||||
|
x = menu.getWidth() - width + 20;
|
||||||
|
y -= 30;
|
||||||
|
|
||||||
|
emoteWheelBind = new MenuModKeybind(x - 21 + width / 2 - compWidth / 2, y + 50, compWidth, 22) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
//Athena.INSTANCE.emoteSettings.setKeyBind(getBind());
|
||||||
|
//Athena.INSTANCE.emoteSettings.saveEmoteSettings();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
bindButton1 = new CosmeticBindButton(x - 21 + width / 2 - compWidth / 2, y + 110, compWidth, 22) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
lastButton = this;
|
||||||
|
unpressAll(lastButton);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
bindButton2 = new CosmeticBindButton(x - 21 + width / 2 - compWidth / 2, y + 140, compWidth, 22) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
lastButton = this;
|
||||||
|
unpressAll(lastButton);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
bindButton3 = new CosmeticBindButton(x - 21 + width / 2 - compWidth / 2, y + 170, compWidth, 22) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
lastButton = this;
|
||||||
|
unpressAll(lastButton);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
bindButton4 = new CosmeticBindButton(x - 21 + width / 2 - compWidth / 2, y + 200, compWidth, 22) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
lastButton = this;
|
||||||
|
unpressAll(lastButton);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
capeLocation = new CosmeticList(CapeType.class, x - 21 + width / 2 - compWidth / 2, y + 260, compWidth, 22) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
/*if(Athena.INSTANCE.capeManager != null) {
|
||||||
|
Athena.INSTANCE.capeManager.getSettings().setType(CapeType.valueOf(getValue().replace(' ', '_').toUpperCase()));
|
||||||
|
Athena.INSTANCE.capeManager.saveSettings();
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
bandanaLocation = new CosmeticList(BandanaSize.class, x - 21 + width / 2 - compWidth / 2, y + 320, compWidth, 22) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
/*BandanaPlayerHandler handler = Athena.INSTANCE.bandanaManager.getFromUUID(mc.thePlayer.getUniqueID().toString());
|
||||||
|
|
||||||
|
int bandanaHeightOffset = 0;
|
||||||
|
BandanaSize val = BandanaSize.valueOf(getValue().toUpperCase());
|
||||||
|
|
||||||
|
switch(val) {
|
||||||
|
case LARGE:
|
||||||
|
bandanaHeightOffset = 8;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MEDIUM:
|
||||||
|
bandanaHeightOffset = 7;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SMALL:
|
||||||
|
bandanaHeightOffset = 5;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(handler != null) {
|
||||||
|
handler.updateBandanaHeight(bandanaHeightOffset);
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
resetButton = new MacroButton("RESET TO DEFAULT", x - 21 + width / 2 - compWidth / 2, menu.getHeight() - 22 - 20, compWidth, 22, false) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
|
||||||
|
emoteWheelBind.setBind(Keyboard.CHAR_NONE);
|
||||||
|
|
||||||
|
bindButton1.setBind("");
|
||||||
|
bindButton2.setBind("");
|
||||||
|
bindButton3.setBind("");
|
||||||
|
bindButton4.setBind("");
|
||||||
|
|
||||||
|
/*Athena.INSTANCE.emoteSettings.setKeyBind(Keyboard.CHAR_NONE);
|
||||||
|
|
||||||
|
Athena.INSTANCE.emoteSettings.setEmote1("");
|
||||||
|
Athena.INSTANCE.emoteSettings.setEmote2("");
|
||||||
|
Athena.INSTANCE.emoteSettings.setEmote3("");
|
||||||
|
Athena.INSTANCE.emoteSettings.setEmote4("");
|
||||||
|
|
||||||
|
Athena.INSTANCE.emoteSettings.saveEmoteSettings();
|
||||||
|
|
||||||
|
capeLocation.setValue(CapeType.NORMAL.toString());*/
|
||||||
|
bandanaLocation.setValue(BandanaSize.MEDIUM.toString());
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
x = menu.getWidth() / 2;
|
||||||
|
|
||||||
|
width = 350;
|
||||||
|
|
||||||
|
openCrateButton = new CosmeticRainbowButton("OPEN A CRATE", x - width / 2, y, width, 40) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
|
||||||
|
Minecraft.getMinecraft().displayGuiScreen(null);
|
||||||
|
|
||||||
|
/*if(Athena.INSTANCE.crateManager.hasCrate(mc.thePlayer)) {
|
||||||
|
Athena.INSTANCE.notificationManager.showNotification("Please wait for your last crate to finish first.", Color.RED);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkingClient.sendLine("Opencrate", "emote");*/
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
resetCape = new CosmeticGenericButton("SET CAPE TO NONE", x - width / 2, menu.getHeight() - 40 - 40, width, 20, true) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
|
||||||
|
/*if(Athena.INSTANCE.capeManager != null) {
|
||||||
|
new Thread(() -> {
|
||||||
|
Athena.INSTANCE.capeManager.getCape("none").updateSelectedCape();
|
||||||
|
Athena.INSTANCE.capeManager.capeLookupThread.performUpdate();
|
||||||
|
}).start();
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
/*capeEnabled = new CosmeticToggleButton(Athena.INSTANCE.capeManager != null && Athena.INSTANCE.capeManager.getSettings().getEnabled() ? "ENABLED" : "DISABLED", x - width / 2, menu.getHeight() - 40 - 15, width, 20, Athena.INSTANCE.capeManager != null && Athena.INSTANCE.capeManager.getSettings().getEnabled()) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
|
||||||
|
if(Athena.INSTANCE.capeManager != null) {
|
||||||
|
Athena.INSTANCE.capeManager.getSettings().setEnabled(!Athena.INSTANCE.capeManager.getSettings().getEnabled());
|
||||||
|
Athena.INSTANCE.capeManager.saveSettings();
|
||||||
|
|
||||||
|
capeEnabled.setText(Athena.INSTANCE.capeManager.getSettings().getEnabled() ? "ENABLED" : "DISABLED");
|
||||||
|
capeEnabled.setApprove(Athena.INSTANCE.capeManager.getSettings().getEnabled());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};*/
|
||||||
|
|
||||||
|
userPreview = new CosmeticUserPreview(x - width / 2, y + 45, width, 275);
|
||||||
|
|
||||||
|
/*if(Athena.INSTANCE.capeManager != null) {
|
||||||
|
capeLocation.setValue(Athena.INSTANCE.capeManager.getSettings().getType().toString());
|
||||||
|
}*/
|
||||||
|
|
||||||
|
bandanaLocation.setValue(BandanaSize.MEDIUM.toString());
|
||||||
|
|
||||||
|
populateScrollPane();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updateMenuStates(boolean load) {
|
||||||
|
for(MenuComponent comp : menu.getComponents()) {
|
||||||
|
if(comp instanceof CosmeticGenericButton) {
|
||||||
|
CosmeticGenericButton button = (CosmeticGenericButton) comp;
|
||||||
|
|
||||||
|
if(!button.getText().equalsIgnoreCase(cosmeticType.toString())) {
|
||||||
|
button.setActive(false);
|
||||||
|
} else {
|
||||||
|
button.setActive(true);
|
||||||
|
|
||||||
|
if(load) {
|
||||||
|
button.onAction();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void populateScrollPane() {
|
||||||
|
scrollpane.getComponents().clear();
|
||||||
|
|
||||||
|
updateMenuStates(false);
|
||||||
|
|
||||||
|
/*if(cosmeticType == CosmeticType.CAPES) {
|
||||||
|
int spacing = 10;
|
||||||
|
int originalX = 10;
|
||||||
|
int x = originalX;
|
||||||
|
int y = 10;
|
||||||
|
int width = 120;
|
||||||
|
int height = 170;
|
||||||
|
|
||||||
|
if(Athena.INSTANCE.capeManager != null) {
|
||||||
|
for(Cape cape : Athena.INSTANCE.capeManager.ownedCapes) {
|
||||||
|
CosmeticCapeView view = new CosmeticCapeView(cape, x, y, width, height);
|
||||||
|
scrollpane.addComponent(view);
|
||||||
|
|
||||||
|
scrollpane.addComponent(new CosmeticGenericButton("ENABLE", x + 5, y + view.getHeight() - 25, width - 10, 20, true) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
|
||||||
|
mc.thePlayer.capeOverride = cape.getPreview();
|
||||||
|
|
||||||
|
new Thread(() -> {
|
||||||
|
cape.updateSelectedCape();
|
||||||
|
}).start();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
x += view.getWidth() + spacing;
|
||||||
|
|
||||||
|
if(x + view.getWidth() + spacing > scrollpane.getWidth()) {
|
||||||
|
x = originalX;
|
||||||
|
y += view.getHeight() + spacing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if(cosmeticType == CosmeticType.EMOTES) {
|
||||||
|
int spacing = 10;
|
||||||
|
int originalX = 0;
|
||||||
|
int x = originalX;
|
||||||
|
int y = 10;
|
||||||
|
int width = scrollpane.getWidth() - 15;
|
||||||
|
int height = 30;
|
||||||
|
|
||||||
|
if(Athena.INSTANCE.emoteManager != null) {
|
||||||
|
for(Emote emote : Athena.INSTANCE.emoteManager.ownedEmotes) {
|
||||||
|
scrollpane.addComponent(new CosmeticActionButton(I18n.format(emote.getTitle().toUpperCase()), emote.getKey(), x, y + height - 25, width - 10, height, true) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
pressEmote(I18n.format(emote.getTitle()));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
y += height + spacing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if(cosmeticType == CosmeticType.BANDANAS) {
|
||||||
|
int spacing = 10;
|
||||||
|
int originalX = 0;
|
||||||
|
int x = originalX;
|
||||||
|
int y = 10;
|
||||||
|
int width = scrollpane.getWidth() - 15;
|
||||||
|
int height = 30;
|
||||||
|
|
||||||
|
if(Athena.INSTANCE.bandanaManager != null) {
|
||||||
|
for(Bandana bandana : Athena.INSTANCE.bandanaManager.ownedBandanas) {
|
||||||
|
scrollpane.addComponent(new CosmeticActionButton(bandana.getName().toUpperCase(), bandana.getName(), x, y + height - 25, width - 10, height, true) {
|
||||||
|
@Override
|
||||||
|
public void onAction() {
|
||||||
|
setActive(false);
|
||||||
|
|
||||||
|
new Thread(() -> {
|
||||||
|
bandana.updateSelectedBandana(bandanaLocation.getValue());
|
||||||
|
}).start();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
y += height + spacing;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if(cosmeticType == CosmeticType.FLAGS) {
|
||||||
|
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onRender() {
|
||||||
|
int width = 300;
|
||||||
|
int x = menu.getX() + menu.getWidth() - width + 20;
|
||||||
|
int y = menu.getY() + 59;
|
||||||
|
int height = 32;
|
||||||
|
|
||||||
|
rip.athena.client.gui.framework.draw.DrawImpl.drawRect(menu.getX() + menu.getWidth() - width, menu.getY() + 58, width, menu.getHeight() - 58, MacrosPage.MENU_SIDE_BG_COLOR);
|
||||||
|
|
||||||
|
rip.athena.client.gui.framework.draw.DrawImpl.drawRect(menu.getX() + menu.getWidth() - width, menu.getY() + 58, width, height + 1, ModCategoryButton.MAIN_COLOR);
|
||||||
|
drawShadowDown(menu.getX() + menu.getWidth() - width, y + height, width);
|
||||||
|
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("COSMETIC SETTINGS", menu.getX() + menu.getWidth() - width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width("COSMETIC SETTINGS") / 2, y + height / 2 - FontManager.baloo17.getHeight("COSMETIC SETTINGS") / 2, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
||||||
|
|
||||||
|
rip.athena.client.gui.framework.draw.DrawImpl.drawRect(menu.getX(), menu.getY() + 58, width, menu.getHeight() - 58, MacrosPage.MENU_SIDE_BG_COLOR);
|
||||||
|
|
||||||
|
rip.athena.client.gui.framework.draw.DrawImpl.drawRect(menu.getX(), menu.getY() + 58, width, height + 1, ModCategoryButton.MAIN_COLOR);
|
||||||
|
drawShadowDown(menu.getX(), y + height, width);
|
||||||
|
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("COSMETICS", menu.getX() + width / 2 - rip.athena.client.utils.font.FontManager.getProductSansRegular(30).width("COSMETICS") / 2, y + height / 2 - FontManager.baloo17.getHeight("COSMETICS") / 2, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
||||||
|
|
||||||
|
drawShadowDown(menu.getX(), y - 1, width);
|
||||||
|
drawShadowDown(menu.getX() + menu.getWidth() - width, y - 1, width);
|
||||||
|
|
||||||
|
x += 3;
|
||||||
|
y += 50;
|
||||||
|
|
||||||
|
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("EMOTE WHEEL KEYBIND", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
||||||
|
|
||||||
|
y += 60;
|
||||||
|
|
||||||
|
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("ENABLED EMOTES", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
||||||
|
|
||||||
|
y += 150;
|
||||||
|
|
||||||
|
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("CAPE LOCATION", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
||||||
|
|
||||||
|
y += 60;
|
||||||
|
|
||||||
|
rip.athena.client.utils.font.FontManager.getProductSansRegular(30).drawString("BANDANA LOCATION", x, y, IngameMenu.MENU_HEADER_TEXT_COLOR);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onLoad() {
|
||||||
|
/*if(Athena.INSTANCE.capeManager != null) {
|
||||||
|
Athena.INSTANCE.capeManager.updateOwnedCapes();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Athena.INSTANCE.bandanaManager != null) {
|
||||||
|
Athena.INSTANCE.bandanaManager.updateOwnedBandanas();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Athena.INSTANCE.emoteManager != null) {
|
||||||
|
Athena.INSTANCE.emoteManager.updateOwnedEmotes();
|
||||||
|
}*/
|
||||||
|
|
||||||
|
menu.addComponent(capes);
|
||||||
|
menu.addComponent(bandanas);
|
||||||
|
menu.addComponent(emotes);
|
||||||
|
menu.addComponent(flags);
|
||||||
|
|
||||||
|
menu.addComponent(emoteWheelBind);
|
||||||
|
|
||||||
|
menu.addComponent(bindButton1);
|
||||||
|
menu.addComponent(bindButton2);
|
||||||
|
menu.addComponent(bindButton3);
|
||||||
|
menu.addComponent(bindButton4);
|
||||||
|
|
||||||
|
menu.addComponent(capeLocation);
|
||||||
|
menu.addComponent(bandanaLocation);
|
||||||
|
|
||||||
|
menu.addComponent(resetButton);
|
||||||
|
|
||||||
|
menu.addComponent(openCrateButton);
|
||||||
|
|
||||||
|
menu.addComponent(resetCape);
|
||||||
|
//menu.addComponent(capeEnabled);
|
||||||
|
|
||||||
|
menu.addComponent(userPreview);
|
||||||
|
|
||||||
|
menu.addComponent(scrollpane);
|
||||||
|
|
||||||
|
updateMenuStates(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onUnload() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onOpen() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClose() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void pressEmote(String emote) {
|
||||||
|
if(lastButton != null) {
|
||||||
|
lastButton.setBind(emote);
|
||||||
|
|
||||||
|
/*if(lastButton == bindButton1) {
|
||||||
|
Athena.INSTANCE.emoteSettings.setEmote1(emote);
|
||||||
|
} else if(lastButton == bindButton2) {
|
||||||
|
Athena.INSTANCE.emoteSettings.setEmote2(emote);
|
||||||
|
} else if(lastButton == bindButton3) {
|
||||||
|
Athena.INSTANCE.emoteSettings.setEmote3(emote);
|
||||||
|
} else if(lastButton == bindButton4) {
|
||||||
|
Athena.INSTANCE.emoteSettings.setEmote4(emote);
|
||||||
|
}
|
||||||
|
|
||||||
|
Athena.INSTANCE.emoteSettings.saveEmoteSettings();*/
|
||||||
|
|
||||||
|
lastButton = null;
|
||||||
|
unpressAll(lastButton);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void unpressAll(CosmeticBindButton b) {
|
||||||
|
for(MenuComponent comp : menu.getComponents()) {
|
||||||
|
if(comp instanceof CosmeticBindButton) {
|
||||||
|
CosmeticBindButton button = (CosmeticBindButton) comp;
|
||||||
|
|
||||||
|
if(button != b) {
|
||||||
|
button.setActive(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -7,7 +7,7 @@ package rip.athena.client.gui.clickgui.pages.cosmetics;
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
public enum CosmeticType {
|
public enum CosmeticType {
|
||||||
CAPES("CAPES"), BANDANAS("BANDANAS"), EMOTES("EMOTES"), FLAGS("FLAGS");
|
CAPES("CAPES"), BANDANAS("BANDANAS"), EMOTES("EMOTES"), FLAGS("FLAGS"), NONE("NONE");
|
||||||
|
|
||||||
String type;
|
String type;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user