custom font and mods
This commit is contained in:
@@ -43,6 +43,7 @@ public class Cloaks {
|
||||
public static void setCloak(String uuid, String cloakName) {
|
||||
SaturnSocket.setCloak(cloakName);
|
||||
setCloakSilent(uuid, cloakName);
|
||||
SaturnClient.LOGGER.info("Cloak set to " + cloakName);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -8,6 +8,7 @@ import org.saturnclient.ui.animations.FadeIn;
|
||||
import org.saturnclient.ui.widgets.SaturnClickableSprite;
|
||||
import org.saturnclient.ui.widgets.SaturnSprite;
|
||||
import org.saturnclient.ui.widgets.SaturnImage;
|
||||
import org.saturnclient.ui.widgets.SaturnScroll;
|
||||
|
||||
import net.minecraft.text.Text;
|
||||
|
||||
@@ -43,35 +44,39 @@ public class CloaksMenu extends SaturnUi {
|
||||
int cloakWidth = 32;
|
||||
int cloakHeight = 70;
|
||||
|
||||
int modX = rectX + 15;
|
||||
int modY = rectY + 10;
|
||||
int modX = 0;
|
||||
int modY = 0;
|
||||
int col = 0;
|
||||
|
||||
for (String cloak : Cloaks.availableCloaks) {
|
||||
draw(new SaturnImage(Textures.getCloakPreview(cloak))
|
||||
.setX(modX)
|
||||
.setY(modY)
|
||||
.setWidth(cloakWidth)
|
||||
.setHeight(cloakHeight));
|
||||
SaturnScroll modsScroll = new SaturnScroll();
|
||||
|
||||
draw(new SaturnClickableSprite(Textures.BUTTON_BORDER, () -> {
|
||||
for (String cloak : Cloaks.availableCloaks) {
|
||||
modsScroll.draw(new SaturnClickableSprite(Textures.BUTTON_BORDER, () -> {
|
||||
Cloaks.setCloak(SaturnSocket.uuid, cloak);
|
||||
})
|
||||
.setColor(10526880)
|
||||
.setX(modX - 3)
|
||||
.setY(modY - 3)
|
||||
.setX(modX)
|
||||
.setY(modY)
|
||||
.setWidth(cloakWidth + 6)
|
||||
.setHeight(cloakHeight + 6));
|
||||
|
||||
modsScroll.draw(new SaturnImage(Textures.getCloakPreview(cloak))
|
||||
.setX(modX + 3)
|
||||
.setY(modY + 3)
|
||||
.setWidth(cloakWidth)
|
||||
.setHeight(cloakHeight));
|
||||
|
||||
col++;
|
||||
|
||||
if (col < 6) {
|
||||
modX += cloakWidth + 21;
|
||||
} else {
|
||||
modX = rectX + 15;
|
||||
modX = 0;
|
||||
modY += cloakHeight + 20;
|
||||
col = 0;
|
||||
}
|
||||
}
|
||||
|
||||
draw(modsScroll.setX(rectX + 17).setY(rectY + 10).setWidth(rectWidth - 17).setHeight(rectHeight - 10));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
package org.saturnclient.saturnclient.menus;
|
||||
|
||||
import org.saturnclient.saturnclient.SaturnClient;
|
||||
import org.saturnclient.saturnmods.ModManager;
|
||||
import org.saturnclient.saturnmods.SaturnMod;
|
||||
import org.saturnclient.ui.SaturnUi;
|
||||
import org.saturnclient.ui.Textures;
|
||||
import org.saturnclient.ui.animations.FadeIn;
|
||||
import org.saturnclient.ui.animations.Slide;
|
||||
import org.saturnclient.ui.widgets.SaturnClickableImage;
|
||||
import org.saturnclient.ui.widgets.SaturnScroll;
|
||||
import org.saturnclient.ui.widgets.SaturnSprite;
|
||||
import org.saturnclient.ui.widgets.SaturnText;
|
||||
|
||||
import net.minecraft.text.Text;
|
||||
|
||||
@@ -26,7 +31,7 @@ public class SettingsMenu extends SaturnUi {
|
||||
.setY(modsY)
|
||||
.setWidth(rectWidth)
|
||||
.setHeight(rectHeight)
|
||||
.setAnimations(new FadeIn(1)));
|
||||
.setAnimations(new Slide(1, 10)));
|
||||
|
||||
int tabsX = (width - 43) / 2;
|
||||
int tabsY = modsY - 17;
|
||||
@@ -36,7 +41,7 @@ public class SettingsMenu extends SaturnUi {
|
||||
.setY(tabsY)
|
||||
.setWidth(43)
|
||||
.setHeight(15)
|
||||
.setAnimations(new FadeIn(1)));
|
||||
.setAnimations(new Slide(1, 10)));
|
||||
|
||||
int tabSize = 9;
|
||||
tabsX = (width - tabSize) / 2;
|
||||
@@ -73,14 +78,19 @@ public class SettingsMenu extends SaturnUi {
|
||||
|
||||
SaturnScroll modsScroll = new SaturnScroll();
|
||||
|
||||
for (int i = 0; i < 30; i++) {
|
||||
for (SaturnMod mod : ModManager.MODS) {
|
||||
modsScroll.draw(new SaturnClickableImage(Textures.MOD, (m) -> {
|
||||
|
||||
})
|
||||
.setSelected(mod.isEnabled())
|
||||
.setX(modX)
|
||||
.setY(modY)
|
||||
.setWidth(86)
|
||||
.setHeight(20));
|
||||
|
||||
modsScroll.draw(new SaturnText(mod.getName()).setX(modX + 27)
|
||||
.setY(modY + (21 - SaturnClient.textRenderer.fontHeight) / 2));
|
||||
|
||||
col++;
|
||||
|
||||
if (col < 3) {
|
||||
@@ -92,6 +102,7 @@ public class SettingsMenu extends SaturnUi {
|
||||
}
|
||||
}
|
||||
|
||||
draw(modsScroll.setX(modsX + 17).setY(modsY + 10).setWidth(rectWidth - 17).setHeight(rectHeight - 10));
|
||||
draw(modsScroll.setX(modsX + 17).setY(modsY + 10).setWidth(rectWidth - 17).setHeight(rectHeight - 10)
|
||||
.setAnimations(new Slide(1, 10)));
|
||||
}
|
||||
}
|
||||
@@ -9,6 +9,9 @@ import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.gui.DrawContext;
|
||||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.text.Style;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.math.ColorHelper;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
|
||||
@@ -50,7 +53,8 @@ public class SaturnButton extends SaturnWidget {
|
||||
|
||||
if (alpha != 0.0f) {
|
||||
int i = this.active ? 16777215 : 10526880;
|
||||
context.drawText(minecraftClient.textRenderer, this.text,
|
||||
context.drawText(minecraftClient.textRenderer,
|
||||
Text.literal(text).setStyle(Style.EMPTY.withFont(Identifier.of("saturnclient:panton"))),
|
||||
this.x + ((this.width - minecraftClient.textRenderer.getWidth(this.text)) / 2),
|
||||
this.y + ((this.height - minecraftClient.textRenderer.fontHeight + 1) / 2),
|
||||
hovering ? hoverColor : i | MathHelper.ceil(this.alpha * 255.0F) << 24, false);
|
||||
|
||||
@@ -8,6 +8,9 @@ import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.font.TextRenderer;
|
||||
import net.minecraft.client.gui.DrawContext;
|
||||
import net.minecraft.client.render.RenderLayer;
|
||||
import net.minecraft.text.Style;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.math.ColorHelper;
|
||||
|
||||
public class SaturnInputBox extends SaturnWidget {
|
||||
@@ -69,7 +72,7 @@ public class SaturnInputBox extends SaturnWidget {
|
||||
String visibleText = text.substring(scrollOffset);
|
||||
|
||||
int textColor = focused ? 0xFFFFFF : 0xAAAAAA;
|
||||
context.drawText(textRenderer, visibleText, x + 5, y + 5, textColor, false);
|
||||
context.drawText(textRenderer, Text.literal(visibleText).setStyle(Style.EMPTY.withFont(Identifier.of("saturnclient:panton"))), x + 5, y + 5, textColor, false);
|
||||
|
||||
if (focused) {
|
||||
int cursorX = x + 5 + textRenderer.getWidth(visibleText.substring(0, cursorPosition - scrollOffset));
|
||||
|
||||
@@ -51,6 +51,8 @@ public class SaturnScroll extends SaturnWidget {
|
||||
|
||||
@Override
|
||||
public void click(int mouseX, int mouseY) {
|
||||
mouseX = mouseX - x;
|
||||
mouseY = mouseY - y;
|
||||
for (SaturnWidget child : children) {
|
||||
boolean isMouseInside = child.x < mouseX && child.x + child.width > mouseX
|
||||
&& child.y < mouseY && child.y + child.height > mouseY;
|
||||
|
||||
@@ -2,12 +2,16 @@ package org.saturnclient.ui.widgets;
|
||||
|
||||
import org.saturnclient.saturnclient.SaturnClient;
|
||||
import org.saturnclient.ui.SaturnWidget;
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.gui.DrawContext;
|
||||
import net.minecraft.text.Style;
|
||||
import net.minecraft.text.Text;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraft.util.math.ColorHelper;
|
||||
import net.minecraft.util.math.MathHelper;
|
||||
|
||||
public class SaturnText extends SaturnWidget {
|
||||
private String text;
|
||||
private int color = ColorHelper.getWhite(1.0f);
|
||||
|
||||
public SaturnText(String text) {
|
||||
this.text = text;
|
||||
@@ -15,8 +19,15 @@ public class SaturnText extends SaturnWidget {
|
||||
this.height = SaturnClient.textRenderer.fontHeight;
|
||||
}
|
||||
|
||||
public SaturnText(String text, int color) {
|
||||
this(text);
|
||||
this.color = color;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) {
|
||||
context.drawText(MinecraftClient.getInstance().textRenderer, text, x, y, ColorHelper.getWhite(alpha), false);
|
||||
context.drawText(SaturnClient.textRenderer,
|
||||
Text.literal(text).setStyle(Style.EMPTY.withFont(Identifier.of("saturnclient:panton"))), x, y,
|
||||
color | MathHelper.ceil(this.alpha * 255.0F) << 24, false);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user