From 3d654685d086079f7a024fb1768fa870e9e62a7b Mon Sep 17 00:00:00 2001 From: Leo dev Date: Wed, 7 May 2025 00:58:38 +0200 Subject: [PATCH] small ui changes --- .../saturnclient/menus/CloaksMenu.java | 2 +- .../saturnclient/menus/HatsMenu.java | 2 +- .../saturnclient/menus/ModMenu.java | 147 ------------------ .../menus/SaturnConfigEditor.java | 1 + .../saturnclient/menus/SaturnMenu.java | 13 -- .../saturnclient/menus/SaturnTitleScreen.java | 78 ---------- .../ui/components/SkinPreview.java | 14 +- 7 files changed, 14 insertions(+), 243 deletions(-) delete mode 100644 src/main/java/org/saturnclient/saturnclient/menus/ModMenu.java delete mode 100644 src/main/java/org/saturnclient/saturnclient/menus/SaturnMenu.java delete mode 100644 src/main/java/org/saturnclient/saturnclient/menus/SaturnTitleScreen.java diff --git a/src/main/java/org/saturnclient/saturnclient/menus/CloaksMenu.java b/src/main/java/org/saturnclient/saturnclient/menus/CloaksMenu.java index f470ec5..e34a3d4 100644 --- a/src/main/java/org/saturnclient/saturnclient/menus/CloaksMenu.java +++ b/src/main/java/org/saturnclient/saturnclient/menus/CloaksMenu.java @@ -102,7 +102,7 @@ public class CloaksMenu extends SaturnUi { .setHeight(rectHeight - 10) .setAnimations(SaturnClientConfig.getAnimations())); - draw(new SkinPreview() + draw(new SkinPreview(-30.0f, false) .setScale(3.0f) .setX((rectX + rectWidth) - 180) .setY(rectY + 8) diff --git a/src/main/java/org/saturnclient/saturnclient/menus/HatsMenu.java b/src/main/java/org/saturnclient/saturnclient/menus/HatsMenu.java index 506f90b..fb8616b 100644 --- a/src/main/java/org/saturnclient/saturnclient/menus/HatsMenu.java +++ b/src/main/java/org/saturnclient/saturnclient/menus/HatsMenu.java @@ -122,7 +122,7 @@ public class HatsMenu extends SaturnUi { .setHeight(rectHeight - 10) .setAnimations(SaturnClientConfig.getAnimations())); - draw(new SkinPreview() + draw(new SkinPreview(170f, true) .setScale(3.0f) .setX((rectX + rectWidth) - 180) .setY(rectY + 8) diff --git a/src/main/java/org/saturnclient/saturnclient/menus/ModMenu.java b/src/main/java/org/saturnclient/saturnclient/menus/ModMenu.java deleted file mode 100644 index 17564da..0000000 --- a/src/main/java/org/saturnclient/saturnclient/menus/ModMenu.java +++ /dev/null @@ -1,147 +0,0 @@ -package org.saturnclient.saturnclient.menus; - -import net.minecraft.text.Text; - -import org.saturnclient.modules.ModManager; -import org.saturnclient.modules.Module; -import org.saturnclient.saturnclient.SaturnClientConfig; -import org.saturnclient.saturnclient.config.ConfigManager; -import org.saturnclient.saturnclient.config.Property; -import org.saturnclient.ui.SaturnUi; -import org.saturnclient.ui.Textures; -import org.saturnclient.ui.components.SaturnModComp; -import org.saturnclient.ui.widgets.SaturnClickableImage; -import org.saturnclient.ui.widgets.SaturnInputBox; -import org.saturnclient.ui.widgets.SaturnScroll; -import org.saturnclient.ui.widgets.SaturnSprite; - -public class ModMenu extends SaturnUi { - - private SaturnScroll scroll; - private Property search = new Property<>(""); - - public ModMenu() { - super(Text.literal("Mods")); - } - - @Override - protected void init() { - int rectWidth = 330; - int rectHeight = 228; - int rectX = (width - rectWidth) / 2; - int rectY = (height - rectHeight + 15) / 2; - - draw( - new SaturnSprite(Textures.SETTINGS_BG) - .setX(rectX) - .setY(rectY) - .setWidth(rectWidth) - .setHeight(rectHeight) - .setAnimations(SaturnClientConfig.getAnimations())); - - int tabsX = (width - 43) / 2; - int tabsY = rectY - 17; - - draw( - new SaturnSprite(Textures.RECT) - .setX(tabsX) - .setY(tabsY) - .setWidth(43) - .setHeight(15) - .setAnimations(SaturnClientConfig.getAnimations())); - - draw( - new SaturnInputBox(search, rectX + rectWidth - 72, tabsY, 70).onUpdate(() -> { - scroll.clear(); - drawItems(rectX, rectY, rectWidth, rectHeight); - }) - .setHeight(15) - .setWidth(72) - .setAnimations(SaturnClientConfig.getAnimations())); - - int tabSize = 9; - tabsX = (width - tabSize) / 2; - draw( - new SaturnClickableImage(Textures.SETTINGS, () -> { - client.setScreen(new SaturnConfigEditor()); - }) - .setX(tabsX) - .setY(tabsY + 3) - .setWidth(tabSize) - .setHeight(tabSize) - .setAnimations(SaturnClientConfig.getAnimations())); - - draw( - new SaturnClickableImage(Textures.MODS_TAB, () -> { - }) - .setSelected(true) - .setX(tabsX - 12) - .setY(tabsY + 3) - .setWidth(tabSize) - .setHeight(tabSize) - .setAnimations(SaturnClientConfig.getAnimations())); - - draw( - new SaturnClickableImage(Textures.SEARCH, () -> { - System.out.println("Pressed"); - }) - .setX(tabsX + 12) - .setY(tabsY + 3) - .setWidth(tabSize) - .setHeight(tabSize) - .setAnimations(SaturnClientConfig.getAnimations())); - - scroll = new SaturnScroll(); - - drawItems(rectX, rectY, rectWidth, rectHeight); - - draw(scroll - .setX(rectX + 17) - .setY(rectY + 10) - .setWidth(rectWidth - 17) - .setHeight(rectHeight - 20) - .setAnimations(SaturnClientConfig.getAnimations())); - - super.init(); - } - - @Override - public void close() { - ConfigManager.save(); - super.close(); - } - - private void drawItems(int rectX, int rectY, int rectWidth, int rectHeight) { - int modX = 0; - int modY = 0; - int col = 0; - - String[] searchTokens = search.value.toLowerCase().split("\\ "); - - outer: for (Module mod : ModManager.MODS) { - String modName = mod.getName().toLowerCase(); - for (String searchToken : searchTokens) { - if (!modName.contains(searchToken)) { - continue outer; - } - } - - scroll.draw( - new SaturnModComp(mod) - .setX(modX) - .setY(modY) - .setWidth(86) - .setHeight(20)); - - col++; - - if (col < 3) { - modX += 86 + 18; - } else { - modX = 0; - modY += 20 + 20; - col = 0; - } - } - } -} diff --git a/src/main/java/org/saturnclient/saturnclient/menus/SaturnConfigEditor.java b/src/main/java/org/saturnclient/saturnclient/menus/SaturnConfigEditor.java index 5a852b6..ea9c3c1 100644 --- a/src/main/java/org/saturnclient/saturnclient/menus/SaturnConfigEditor.java +++ b/src/main/java/org/saturnclient/saturnclient/menus/SaturnConfigEditor.java @@ -4,6 +4,7 @@ import org.saturnclient.saturnclient.SaturnClientConfig; import org.saturnclient.ui.Textures; import org.saturnclient.ui.widgets.SaturnClickableImage; import org.saturnclient.ui.widgets.SaturnSprite; +import org.saturnclient.ui2.screens.ModMenu; public class SaturnConfigEditor extends ConfigEditor { diff --git a/src/main/java/org/saturnclient/saturnclient/menus/SaturnMenu.java b/src/main/java/org/saturnclient/saturnclient/menus/SaturnMenu.java deleted file mode 100644 index bc833ab..0000000 --- a/src/main/java/org/saturnclient/saturnclient/menus/SaturnMenu.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.saturnclient.saturnclient.menus; - -import org.saturnclient.ui2.SaturnScreen; - -public class SaturnMenu extends SaturnScreen { - public SaturnMenu() { - super("Saturn Client"); - } - - @Override - public void ui() { - } -} diff --git a/src/main/java/org/saturnclient/saturnclient/menus/SaturnTitleScreen.java b/src/main/java/org/saturnclient/saturnclient/menus/SaturnTitleScreen.java deleted file mode 100644 index d59a959..0000000 --- a/src/main/java/org/saturnclient/saturnclient/menus/SaturnTitleScreen.java +++ /dev/null @@ -1,78 +0,0 @@ -package org.saturnclient.saturnclient.menus; - -import org.saturnclient.saturnclient.SaturnClientConfig; -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.SaturnButton; -import org.saturnclient.ui.widgets.SaturnImage; -import org.saturnclient.ui2.screens.ShiftMenu; - -import net.minecraft.client.gui.screen.multiplayer.MultiplayerScreen; -import net.minecraft.client.gui.screen.option.OptionsScreen; -import net.minecraft.client.gui.screen.world.SelectWorldScreen; -import net.minecraft.text.Text; - -public class SaturnTitleScreen extends SaturnUi { - public SaturnTitleScreen() { - super(Text.literal("Title Screen")); - } - - @Override - protected void init() { - blur = false; - - int logoSize = 49; - int bX = (width - 150) / 2; - int bY = height / 2 - logoSize - 27; - - draw( - new SaturnImage(SaturnClientConfig.getLogo()) - .setX((width - logoSize) / 2) - .setY(bY) - .setWidth(logoSize) - .setHeight(logoSize) - .setAnimations(new Slide(3, 14))); - - bY += 44; - - draw( - new SaturnImage(Textures.LOGO_TEXT) - .setX((width - logoSize) / 2) - .setY(bY) - .setWidth(logoSize) - .setHeight(8) - .setAnimations(new FadeIn(3))); - - bY += 15; - - draw(new SaturnButton("SINGLEPLAYER", () -> { - client.setScreen(new SelectWorldScreen(new SaturnTitleScreen())); - }).setBold(true).setWidth(210).setHeight(26).setX(bX).setY(bY).setScale(0.69f)); - - bY += 20; - - draw(new SaturnButton("MULTIPLAYER", () -> { - client.setScreen(new MultiplayerScreen(new SaturnTitleScreen())); - }).setBold(true).setWidth(210).setHeight(26).setX(bX).setY(bY).setScale(0.69f)); - - bY += 20; - - draw(new SaturnButton("OPTIONS", () -> { - client.setScreen(new OptionsScreen(new SaturnTitleScreen(), this.client.options)); - }).setBold(true).setWidth(103).setHeight(26).setX(bX).setY(bY).setScale(0.69f)); - - draw(new SaturnButton("QUIT", () -> { - client.scheduleStop(); - }).setBold(true).setWidth(103).setHeight(26).setX(bX + 74).setY(bY).setScale(0.69f)); - - bY += 20; - - draw(new SaturnButton("SATURN OPTIONS", () -> { - client.setScreen(new ShiftMenu()); - }).setBold(true).setWidth(210).setHeight(26).setX(bX).setY(bY).setScale(0.69f)); - - super.init(); - } -} diff --git a/src/main/java/org/saturnclient/ui/components/SkinPreview.java b/src/main/java/org/saturnclient/ui/components/SkinPreview.java index cbf3fd2..a71d26a 100644 --- a/src/main/java/org/saturnclient/ui/components/SkinPreview.java +++ b/src/main/java/org/saturnclient/ui/components/SkinPreview.java @@ -13,6 +13,14 @@ import net.minecraft.entity.LivingEntity; // If you think this code is bad, it's because it's written by Mojang public class SkinPreview extends SaturnWidget { + private boolean negativeAngle = false; + private float angle = 0.0f; + + public SkinPreview(float angle, boolean negativeAngle) { + this.angle = angle; + this.negativeAngle = negativeAngle; + } + public static void drawEntity(DrawContext context, int x1, int y1, int x2, int y2, int size, float f, float mouseX, float mouseY, LivingEntity entity, float angle, boolean negativeAngle) { float g = (float) (x1 + x2) / 2.0F; @@ -28,8 +36,8 @@ public class SkinPreview extends SaturnWidget { float o = entity.headYaw; entity.setYaw(angle); entity.bodyYaw = angle; - entity.setPitch(-j * 20.0F); - entity.headYaw = negativeAngle ? -i * 40.0F : i * 40.0F; + entity.setPitch(negativeAngle ? -(j * 20.0F) : j * 20.0F); + entity.headYaw = negativeAngle ? (i * 40.0F) + 180f : -(i * 40.0F); entity.prevHeadYaw = entity.getHeadYaw(); entity.setCustomNameVisible(false); @@ -73,7 +81,7 @@ public class SkinPreview extends SaturnWidget { public void render(DrawContext context, boolean hovering, int mouseX, int mouseY) { LivingEntity entity = SaturnClient.client.player; if (entity != null) { - drawEntity(context, 0, 0, 75, 78, 30, 0.0625F, mouseX, mouseY, entity, -30.0f, true); + drawEntity(context, 0, 0, 75, 78, 30, 0.0625F, mouseX, mouseY, entity, angle, negativeAngle); } } }