From 22efd8b6e08414440e8011292105cd9552c0ffb9 Mon Sep 17 00:00:00 2001 From: RudideC Date: Tue, 24 Feb 2026 16:23:34 +0100 Subject: [PATCH 1/5] moved to svg yay --- .../saturnclient/textures/gui/mod/clock.png | Bin 1072 -> 0 bytes .../saturnclient/textures/gui/mod/clock.svg | 7 +++++++ .../saturnclient/textures/gui/mod/nametags.png | Bin 800 -> 0 bytes .../saturnclient/textures/gui/mod/nametags.svg | 7 +++++++ .../saturnclient/textures/gui/mod/ping.png | Bin 197 -> 0 bytes .../saturnclient/textures/gui/mod/ping.svg | 7 +++++++ .../assets/saturnclient/textures/gui/mod/tps.png | Bin 777 -> 0 bytes .../assets/saturnclient/textures/gui/mod/tps.svg | 7 +++++++ 8 files changed, 28 insertions(+) delete mode 100644 src/main/resources/assets/saturnclient/textures/gui/mod/clock.png create mode 100644 src/main/resources/assets/saturnclient/textures/gui/mod/clock.svg delete mode 100644 src/main/resources/assets/saturnclient/textures/gui/mod/nametags.png create mode 100644 src/main/resources/assets/saturnclient/textures/gui/mod/nametags.svg delete mode 100644 src/main/resources/assets/saturnclient/textures/gui/mod/ping.png create mode 100644 src/main/resources/assets/saturnclient/textures/gui/mod/ping.svg delete mode 100644 src/main/resources/assets/saturnclient/textures/gui/mod/tps.png create mode 100644 src/main/resources/assets/saturnclient/textures/gui/mod/tps.svg diff --git a/src/main/resources/assets/saturnclient/textures/gui/mod/clock.png b/src/main/resources/assets/saturnclient/textures/gui/mod/clock.png deleted file mode 100644 index b8d46ec6fdb054ffb48f7d675973a0fd352cc79d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1072 zcmV-01kd}4P)k7RCt{2n%i$pK@`SEv|1skyEh)C4gLw2y4RcHjqrj7uP$%I zaBsY2_!Y{e}s<=j_Xz(?fj8PEI>B->kJ~)|xeIZRh^u z9|bTOSPdKkP61DWPrx@l_WOz2tj{W-$<+dYMqmSQ4){)X3;<_=^+3Z&C@>b-3A_)4 z`U+eGc57wk+8YPz^)%^!*0u+@q%j`vfF1U7s-?s-;AJ4dEnp)sF$dQqU=z?4@Vx+9 zE4_`52NT`~7DeP=0^AMwk40Y{V5S5&d2HT^crZZm;l+jg3qnIM8924G6CD~`DwF4h}%CYy+@NMJMG0W5JD4m*ENY)v(& z!ipGxj==cKZ!ut3a89Ihu~kx}4!9?}j&hwF6e<`N7M(n%A_ico=-!uH6$NjD9>PUJ zWJN{=p0vGG$Mfp6F~-EP6)^ytMR~@RxK9iyBF!8CR#A~A-EaC6oiuaCstEY7D% zjlF7|5^1s{ff7HJiNrlsd>@k<%@Y{LM4Ielf+8OxaW{zXYc&*klc31kYADhhYisF3 z_9{V<{YAOcY^^B94on9git9DdqxkJW#MN#tW$fPlt}3_^4}uHXtfE3E0a#PY{d!lq z#}!|RNA`Cfo)`zBWdIEqQ?ZS}N+g6R%ZCfbe9$<_}RV^h9z!uGS+6@O_ojP?5+v(3S*Oj}ih7zNIJCbp2xr64dIxcoK24J~l>nU4? zP--7(UO4#>3k)S6?n}09X)}yI*Sp=-2>A7apQSDeS$#r-EGagx;!>8EX94gr+CxE(-adE_O#?*qzZ2TG@<(-;U zZ5pG;ez)jSv{!w7p1_A4+eYdO2#d|yEupL{KvwkYX1aDn6i9+4lr0x)w>IFUE?B+6 qM>Y2Qv0YEqXT`AhiT`kaKYjpf?zE0jXa!*a0000 + + + + + + \ No newline at end of file diff --git a/src/main/resources/assets/saturnclient/textures/gui/mod/nametags.png b/src/main/resources/assets/saturnclient/textures/gui/mod/nametags.png deleted file mode 100644 index 90a1e97bca0163026f97d58c6ed30fc2f093cd70..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 800 zcmV+*1K<3KP)a`Tb^R zzHjFJW_HFo!!QiPFbuX*e!QK~s{)er(SG-SAd@5UvYj}^v;073mjv!p$A*}%~Lt3iOdE~dby7^gs8 zL-rN$-LJmy17(3cf@Fak8gjFM?=AJc9w-as5hM%j)fL_^V6=nZZs522?r|ldX8{EH zQ&Gb{q^kpo;zyChXnTq$ diff --git a/src/main/resources/assets/saturnclient/textures/gui/mod/nametags.svg b/src/main/resources/assets/saturnclient/textures/gui/mod/nametags.svg new file mode 100644 index 0000000..876a0f0 --- /dev/null +++ b/src/main/resources/assets/saturnclient/textures/gui/mod/nametags.svg @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/src/main/resources/assets/saturnclient/textures/gui/mod/ping.png b/src/main/resources/assets/saturnclient/textures/gui/mod/ping.png deleted file mode 100644 index 01a53a659890cc42115fdbeab30d2deea838e4ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^Mj*_=1|;R|J2nC-&H|6fVg?3oVGw3ym^DWNC|K_4 z;uumf=k588yayO~4jcUczop7)7K5&h$7Xh8!)j4|?`jTBZpBo^B|0rrS|@Bu=J;u$ z=ehVX2m);nc?|*)`!(vd;HR+haxgEt_hi`ZwO;UYIlg q8c@th + + + + + + \ No newline at end of file diff --git a/src/main/resources/assets/saturnclient/textures/gui/mod/tps.png b/src/main/resources/assets/saturnclient/textures/gui/mod/tps.png deleted file mode 100644 index 634c7f4f92414e1fabf5981030e2ed8f39668877..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 777 zcmV+k1NQuhP)X0EEG%xEfr*K)XGX5 z0~Uft!90o-md3(DR0I)4h-;x(2`YjlTBzU)1qBfwY&KDmV7@T%zsa!V-kp_j?+wle z%aS?gOwPaaIy1%u0)apv5Qqm@0rUb-fKjqz6c_?}Y)-X`*aMWwA7!9Wi->Ur-UQl! z29ps$1JDi>mD6}tF`7=%NE|ac1L#z4!$4D#V{bGPCZ{kxGTli|Pvz8Ratg3bISwT` zjmW9d

0OwD6OhCNVjOYI)Ww1Xuuc0E1e9BbuJafkiPf&A=t#J@5;72b>31XCefc z4-6>e5AYaxpyVu%fW;Lt8-bGSUx54iwtNLzvJkRg?%#k7PWwuUu$*+-=c!7toCWIC zUI+B6{b3eDZp;1147L{8UN~*7YI_OPSNPYf-LgJyA$D#PH@AV$cA7bVA5Gf-Z99MI zNL$Et;EtU#F=fSX;G@%aPTlW~>2IIx{izD^EG4Fr0>h!$+Ow&L%=rV9Hlb-y(xen;j)fOWe3pzr1xd~V3TJ*JOB zrc(}!6)m^3> zhm)M5`$D^!tZ|Lb;WyZu>guq9@a$hBC7?12ig!Xe4ZI zyM2QTdKJkVC2tXqm?o9wgU-WU7K|u|F5fC55C{YUf&Z2XBhs5sctRvZ00000NkvXX Hu0mjfKKf7D diff --git a/src/main/resources/assets/saturnclient/textures/gui/mod/tps.svg b/src/main/resources/assets/saturnclient/textures/gui/mod/tps.svg new file mode 100644 index 0000000..f2ad6c9 --- /dev/null +++ b/src/main/resources/assets/saturnclient/textures/gui/mod/tps.svg @@ -0,0 +1,7 @@ + + + + + + performance_line + \ No newline at end of file From 6da9eb55ba39d2226dbef0db50989165bd128eef Mon Sep 17 00:00:00 2001 From: RudideC Date: Tue, 24 Feb 2026 21:27:23 +0100 Subject: [PATCH 2/5] fixed bug, where modmenu wouldn't have scroll --- .../java/org/saturnclient/ui2/elements/AnimationStagger.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/org/saturnclient/ui2/elements/AnimationStagger.java b/src/main/java/org/saturnclient/ui2/elements/AnimationStagger.java index 3865481..c908b82 100644 --- a/src/main/java/org/saturnclient/ui2/elements/AnimationStagger.java +++ b/src/main/java/org/saturnclient/ui2/elements/AnimationStagger.java @@ -27,8 +27,12 @@ public class AnimationStagger extends Element { } ElementRenderer.draw(children, element); + + this.height = Math.max(this.height, element.y + element.height); + this.width = Math.max(this.width, element.x + element.width); } + @Override public void render(RenderScope renderScope, ElementContext ctx) { ElementRenderer.render(children, ctx.elapsed, renderScope, From 48a41af3b04aac9c213ca4a725b723020e2ddc99 Mon Sep 17 00:00:00 2001 From: RudideC Date: Tue, 24 Feb 2026 21:27:46 +0100 Subject: [PATCH 3/5] changed timings personal preference, i think these should be a setting --- src/main/java/org/saturnclient/ui2/screens/ModMenu.java | 2 +- src/main/java/org/saturnclient/ui2/screens/ShiftMenu.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/saturnclient/ui2/screens/ModMenu.java b/src/main/java/org/saturnclient/ui2/screens/ModMenu.java index 83041b1..5761620 100644 --- a/src/main/java/org/saturnclient/ui2/screens/ModMenu.java +++ b/src/main/java/org/saturnclient/ui2/screens/ModMenu.java @@ -26,7 +26,7 @@ public class ModMenu extends SaturnScreen { int row = 0; int col = 0; - AnimationStagger moduleStagger = new AnimationStagger(80); + AnimationStagger moduleStagger = new AnimationStagger(10); for (Module mod : ModManager.ALL_MODS) { moduleStagger.draw( diff --git a/src/main/java/org/saturnclient/ui2/screens/ShiftMenu.java b/src/main/java/org/saturnclient/ui2/screens/ShiftMenu.java index 350a6a1..6277afe 100644 --- a/src/main/java/org/saturnclient/ui2/screens/ShiftMenu.java +++ b/src/main/java/org/saturnclient/ui2/screens/ShiftMenu.java @@ -37,7 +37,7 @@ public class ShiftMenu extends SaturnScreen { int spacing = 4; // Create stagger - AnimationStagger stagger = new AnimationStagger(120); + AnimationStagger stagger = new AnimationStagger(50); stagger.draw(new TextureButton(Textures.HUD_ICON, () -> { client.setScreen(new HudEditor()); From fd492b91a0ea816db31397531e94c765be5d4feb Mon Sep 17 00:00:00 2001 From: RudideC Date: Tue, 24 Feb 2026 21:34:56 +0100 Subject: [PATCH 4/5] animation fine-tuning, easing change can change between ease-in-out and ease-out (default) --- .../saturnclient/config/SaturnClientConfig.java | 12 ++++++++++++ .../java/org/saturnclient/ui2/screens/ModMenu.java | 7 +++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/saturnclient/saturnclient/config/SaturnClientConfig.java b/src/main/java/org/saturnclient/saturnclient/config/SaturnClientConfig.java index 0b9a628..31afbc8 100644 --- a/src/main/java/org/saturnclient/saturnclient/config/SaturnClientConfig.java +++ b/src/main/java/org/saturnclient/saturnclient/config/SaturnClientConfig.java @@ -1,6 +1,9 @@ package org.saturnclient.saturnclient.config; +import java.util.function.Function; + import org.lwjgl.glfw.GLFW; +import org.saturnclient.ui2.anim.Curve; import org.saturnclient.ui2.resources.Textures; import net.minecraft.util.Identifier; @@ -13,11 +16,19 @@ public class SaturnClientConfig { public static Property bendyCloaks = Property.bool(true); public static Property openEmoteWheel = Property.keybinding(GLFW.GLFW_KEY_B); public static Property stagger = Property.bool(true); + public static Property animationCurve = Property.select(1, "Ease In Out", "Ease Out"); public static Identifier getLogo() { return realisticLogo.value ? Textures.REALISTIC_LOGO : Textures.LOGO; } + public static Function getAnimationCurve() { + switch (animationCurve.value) { + case 1: return Curve::easeOutCubic; + default: return Curve::easeInOutCubic; + } + } + public static void init() { config = new ConfigManager("Saturn Client"); config.property("Realistic logo", realisticLogo); @@ -25,6 +36,7 @@ public class SaturnClientConfig { config.property("Open Emote Wheel", openEmoteWheel); config.property("Bendy Cloaks", bendyCloaks); config.property("Stagger Animations", stagger); + config.property("Animation Curve", animationCurve); // Initialize a sub namespace for theme Theme.init(config); diff --git a/src/main/java/org/saturnclient/ui2/screens/ModMenu.java b/src/main/java/org/saturnclient/ui2/screens/ModMenu.java index 5761620..2d3af9f 100644 --- a/src/main/java/org/saturnclient/ui2/screens/ModMenu.java +++ b/src/main/java/org/saturnclient/ui2/screens/ModMenu.java @@ -2,6 +2,7 @@ package org.saturnclient.ui2.screens; import org.saturnclient.modules.ModManager; import org.saturnclient.modules.Module; +import org.saturnclient.saturnclient.config.SaturnClientConfig; import org.saturnclient.ui2.SaturnScreen; import org.saturnclient.ui2.anim.SlideFade; import org.saturnclient.ui2.components.SaturnModule; @@ -26,11 +27,13 @@ public class ModMenu extends SaturnScreen { int row = 0; int col = 0; - AnimationStagger moduleStagger = new AnimationStagger(10); + AnimationStagger moduleStagger = new AnimationStagger(20); for (Module mod : ModManager.ALL_MODS) { moduleStagger.draw( - new SaturnModule(mod).position((160 + g) * col, (50 + g) * row).animation(new SlideFade(600, -12))); + new SaturnModule(mod) + .position((160 + g) * col, (50 + g) * row) + .animation(new SlideFade(600, -12), SaturnClientConfig.getAnimationCurve())); if (col == 2) { col = 0; From 434afa7f62836dbf745f8222e1e489a922f34d43 Mon Sep 17 00:00:00 2001 From: RudideC Date: Tue, 24 Feb 2026 21:38:40 +0100 Subject: [PATCH 5/5] 0.0.7-beta1 all code integrated, beta release is ready --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index bac900b..8b0b895 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,7 +11,7 @@ yarn_mappings=1.21.4+build.7 loader_version=0.16.10 fabric_version=0.114.0+1.21.4 -mod_version = 0.0.7-alpha1 +mod_version = 0.0.7-beta1 maven_group = org.saturnclient archives_base_name = saturnclient