SaturnScreen

This commit is contained in:
2026-03-07 01:01:10 +01:00
parent 0cd192107d
commit 5bd0d249f9
13 changed files with 37 additions and 26 deletions
@@ -0,0 +1,11 @@
package org.saturnclient.ui;
public abstract class SaturnScreen {
public SaturnScreen(String title) {
}
public void draw(Element element) {
}
public abstract void ui();
}
@@ -22,7 +22,7 @@ import org.saturnclient.saturnclient.mixin.DrawContextAccessor;
import org.saturnclient.ui.ElementRenderer; import org.saturnclient.ui.ElementRenderer;
import org.saturnclient.ui.RenderScope; import org.saturnclient.ui.RenderScope;
import org.saturnclient.ui.RenderScopeImpl; import org.saturnclient.ui.RenderScopeImpl;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.components.ElementRendererImpl; import org.saturnclient.ui.components.ElementRendererImpl;
import org.saturnclient.ui.elements.ImageTexture; import org.saturnclient.ui.elements.ImageTexture;
import org.saturnclient.ui.resources.Textures; import org.saturnclient.ui.resources.Textures;
@@ -52,15 +52,15 @@ public class SaturnClient implements ModInitializer {
ModManager.init(new FabricModuleProvider()); ModManager.init(new FabricModuleProvider());
client.execute(() -> { client.execute(() -> {
SaturnScreen.preload(client); SaturnScreenFabric.preload(client);
}); });
ClientLifecycleEvents.CLIENT_STOPPING.register(_o -> ConfigManager.save()); ClientLifecycleEvents.CLIENT_STOPPING.register(_o -> ConfigManager.save());
ScreenEvents.AFTER_INIT.register((client, screen, scaledWidth, scaledHeight) -> { ScreenEvents.AFTER_INIT.register((client, screen, scaledWidth, scaledHeight) -> {
if (screen != null && !(screen instanceof TitleMenu)) { if (screen != null && !(screen instanceof TitleMenu)) {
if (screen instanceof SaturnScreen) { if (screen instanceof SaturnScreenFabric) {
((SaturnScreen) screen).draw(new ImageTexture(Textures.LOGO_TEXT_BIG).dimensions(180, 18) ((SaturnScreenFabric) screen).draw(new ImageTexture(Textures.LOGO_TEXT_BIG).dimensions(180, 18)
.position(screen.width - 180 - 20, screen.height - 18 - 20)); .position(screen.width - 180 - 20, screen.height - 18 - 20));
} else { } else {
ScreenEvents.afterRender(screen).register((screen1, context, mouseX, mouseY, tickDelta) -> { ScreenEvents.afterRender(screen).register((screen1, context, mouseX, mouseY, tickDelta) -> {
@@ -13,7 +13,7 @@ import org.saturnclient.config.manager.ConfigManager;
import org.saturnclient.saturnclient.mixin.DrawContextAccessor; import org.saturnclient.saturnclient.mixin.DrawContextAccessor;
import org.saturnclient.ui.RenderScope; import org.saturnclient.ui.RenderScope;
import org.saturnclient.ui.RenderScopeImpl; import org.saturnclient.ui.RenderScopeImpl;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -93,7 +93,7 @@ public class HudEditor extends Screen {
@Override @Override
public void render(DrawContext context, int mouseX, int mouseY, float delta) { public void render(DrawContext context, int mouseX, int mouseY, float delta) {
if (client.world == null && client.getCurrentServerEntry() == null) { if (client.world == null && client.getCurrentServerEntry() == null) {
SaturnScreen.ROTATING_PANORAMA_RENDERER.render(context, this.width, this.height, 1.0F, delta); SaturnScreenFabric.ROTATING_PANORAMA_RENDERER.render(context, this.width, this.height, 1.0F, delta);
} }
RenderScope scope = new RenderScopeImpl(context.getMatrices(), RenderScope scope = new RenderScopeImpl(context.getMatrices(),
@@ -20,7 +20,7 @@ import net.minecraft.client.util.Pool;
import net.minecraft.text.Text; import net.minecraft.text.Text;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
public abstract class SaturnScreen extends Screen { public abstract class SaturnScreenFabric extends Screen {
private final Pool pool = new Pool(3); private final Pool pool = new Pool(3);
protected List<Element> elements = new ArrayList<>(); protected List<Element> elements = new ArrayList<>();
protected float backgroundOpacity = 1.0f; protected float backgroundOpacity = 1.0f;
@@ -49,7 +49,7 @@ public abstract class SaturnScreen extends Screen {
} }
} }
public SaturnScreen(String title) { public SaturnScreenFabric(String title) {
super(Text.literal(title)); super(Text.literal(title));
} }
@@ -5,7 +5,7 @@ import java.util.Map;
import org.saturnclient.config.Theme; import org.saturnclient.config.Theme;
import org.saturnclient.config.manager.ConfigManager; import org.saturnclient.config.manager.ConfigManager;
import org.saturnclient.config.manager.Property; import org.saturnclient.config.manager.Property;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.components.Sidebar; import org.saturnclient.ui.components.Sidebar;
import org.saturnclient.ui.components.inputs.FloatInput; import org.saturnclient.ui.components.inputs.FloatInput;
import org.saturnclient.ui.components.inputs.HexInput; import org.saturnclient.ui.components.inputs.HexInput;
@@ -17,7 +17,7 @@ import org.saturnclient.ui.elements.Scroll;
import org.saturnclient.ui.elements.Text; import org.saturnclient.ui.elements.Text;
import org.saturnclient.ui.resources.Fonts; import org.saturnclient.ui.resources.Fonts;
public class ConfigEditor extends SaturnScreen { public class ConfigEditor extends SaturnScreenFabric {
private ConfigManager config; private ConfigManager config;
public ConfigEditor(ConfigManager config) { public ConfigEditor(ConfigManager config) {
@@ -5,7 +5,7 @@ import org.saturnclient.saturnclient.SaturnClient;
import org.saturnclient.saturnclient.client.ServiceClient; import org.saturnclient.saturnclient.client.ServiceClient;
import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.AnimationConfig;
import org.saturnclient.config.Config; import org.saturnclient.config.Config;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.Utils; import org.saturnclient.ui.Utils;
import org.saturnclient.ui.anim.Fade; import org.saturnclient.ui.anim.Fade;
import org.saturnclient.ui.anim.SlideY; import org.saturnclient.ui.anim.SlideY;
@@ -19,7 +19,7 @@ import dev.kosmx.playerAnim.minecraftApi.PlayerAnimationAccess;
import dev.kosmx.playerAnim.minecraftApi.PlayerAnimationRegistry; import dev.kosmx.playerAnim.minecraftApi.PlayerAnimationRegistry;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
public class EmoteWheel extends SaturnScreen { public class EmoteWheel extends SaturnScreenFabric {
int page = 1; int page = 1;
public EmoteWheel() { public EmoteWheel() {
@@ -3,7 +3,7 @@ package org.saturnclient.ui.screens;
import org.saturnclient.modules.ModManager; import org.saturnclient.modules.ModManager;
import org.saturnclient.modules.Module; import org.saturnclient.modules.Module;
import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.AnimationConfig;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.anim.SlideFade; import org.saturnclient.ui.anim.SlideFade;
import org.saturnclient.ui.components.SaturnModule; import org.saturnclient.ui.components.SaturnModule;
import org.saturnclient.ui.components.Sidebar; import org.saturnclient.ui.components.Sidebar;
@@ -12,7 +12,7 @@ import org.saturnclient.ui.elements.ImageTexture;
import org.saturnclient.ui.elements.Scroll; import org.saturnclient.ui.elements.Scroll;
import org.saturnclient.ui.resources.Textures; import org.saturnclient.ui.resources.Textures;
public class ModMenu extends SaturnScreen { public class ModMenu extends SaturnScreenFabric {
public ModMenu() { public ModMenu() {
super("Mod Menu"); super("Mod Menu");
} }
@@ -4,7 +4,7 @@ import org.saturnclient.saturnclient.SaturnClient;
import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.AnimationConfig;
import org.saturnclient.config.Config; import org.saturnclient.config.Config;
import org.saturnclient.saturnclient.menus.HudEditor; import org.saturnclient.saturnclient.menus.HudEditor;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.anim.Fade; import org.saturnclient.ui.anim.Fade;
import org.saturnclient.ui.anim.SlideY; import org.saturnclient.ui.anim.SlideY;
import org.saturnclient.ui.elements.AnimationStagger; import org.saturnclient.ui.elements.AnimationStagger;
@@ -14,7 +14,7 @@ import org.saturnclient.ui.elements.TextureButton;
import org.saturnclient.ui.resources.Textures; import org.saturnclient.ui.resources.Textures;
import org.saturnclient.ui.screens.cosmetics.CloakMenu; import org.saturnclient.ui.screens.cosmetics.CloakMenu;
public class ShiftMenu extends SaturnScreen { public class ShiftMenu extends SaturnScreenFabric {
public ShiftMenu() { public ShiftMenu() {
super("Shift Menu"); super("Shift Menu");
} }
@@ -4,7 +4,7 @@ import org.saturnclient.saturnclient.SaturnClient;
import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.AnimationConfig;
import org.saturnclient.config.Config; import org.saturnclient.config.Config;
import org.saturnclient.saturnclient.menus.HudEditor; import org.saturnclient.saturnclient.menus.HudEditor;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.anim.Fade; import org.saturnclient.ui.anim.Fade;
import org.saturnclient.ui.anim.SlideFade; import org.saturnclient.ui.anim.SlideFade;
import org.saturnclient.ui.anim.SlideY; import org.saturnclient.ui.anim.SlideY;
@@ -20,7 +20,7 @@ import net.minecraft.client.gui.screen.multiplayer.MultiplayerScreen;
import net.minecraft.client.gui.screen.option.OptionsScreen; import net.minecraft.client.gui.screen.option.OptionsScreen;
import net.minecraft.client.gui.screen.world.SelectWorldScreen; import net.minecraft.client.gui.screen.world.SelectWorldScreen;
public class TitleMenu extends SaturnScreen { public class TitleMenu extends SaturnScreenFabric {
public TitleMenu() { public TitleMenu() {
super("Title Menu"); super("Title Menu");
} }
@@ -4,7 +4,7 @@ import org.saturnclient.cosmetics.cloak.Cloaks;
import org.saturnclient.saturnclient.SaturnClient; import org.saturnclient.saturnclient.SaturnClient;
import org.saturnclient.saturnclient.client.player.SaturnPlayer; import org.saturnclient.saturnclient.client.player.SaturnPlayer;
import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.AnimationConfig;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.anim.Fade; import org.saturnclient.ui.anim.Fade;
import org.saturnclient.ui.anim.SlideY; import org.saturnclient.ui.anim.SlideY;
import org.saturnclient.ui.components.CosmeticPreview; import org.saturnclient.ui.components.CosmeticPreview;
@@ -16,7 +16,7 @@ import org.saturnclient.ui.elements.TabMenu;
import org.saturnclient.ui.elements.TabMenu.TabMenuComponent; import org.saturnclient.ui.elements.TabMenu.TabMenuComponent;
import org.saturnclient.ui.resources.Textures; import org.saturnclient.ui.resources.Textures;
public class CloakMenu extends SaturnScreen { public class CloakMenu extends SaturnScreenFabric {
public CloakMenu() { public CloakMenu() {
super("Cloaks Menu"); super("Cloaks Menu");
} }
@@ -4,7 +4,7 @@ import org.saturnclient.cosmetics.hat.Hats;
import org.saturnclient.saturnclient.SaturnClient; import org.saturnclient.saturnclient.SaturnClient;
import org.saturnclient.saturnclient.client.player.SaturnPlayer; import org.saturnclient.saturnclient.client.player.SaturnPlayer;
import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.AnimationConfig;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.anim.Fade; import org.saturnclient.ui.anim.Fade;
import org.saturnclient.ui.anim.SlideY; import org.saturnclient.ui.anim.SlideY;
import org.saturnclient.ui.components.CosmeticPreview; import org.saturnclient.ui.components.CosmeticPreview;
@@ -16,7 +16,7 @@ import org.saturnclient.ui.elements.TabMenu;
import org.saturnclient.ui.elements.TabMenu.TabMenuComponent; import org.saturnclient.ui.elements.TabMenu.TabMenuComponent;
import org.saturnclient.ui.resources.Textures; import org.saturnclient.ui.resources.Textures;
public class HatMenu extends SaturnScreen { public class HatMenu extends SaturnScreenFabric {
public HatMenu() { public HatMenu() {
super("Hats Menu"); super("Hats Menu");
} }
@@ -6,7 +6,7 @@ import org.saturnclient.saturnclient.client.ServiceClient;
import org.saturnclient.saturnclient.client.player.SaturnPlayer; import org.saturnclient.saturnclient.client.player.SaturnPlayer;
import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.AnimationConfig;
import org.saturnclient.config.Theme; import org.saturnclient.config.Theme;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.Utils; import org.saturnclient.ui.Utils;
import org.saturnclient.ui.anim.Fade; import org.saturnclient.ui.anim.Fade;
import org.saturnclient.ui.anim.SlideY; import org.saturnclient.ui.anim.SlideY;
@@ -24,7 +24,7 @@ import org.saturnclient.ui.resources.Textures;
import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.systems.RenderSystem;
public class CloakStore extends SaturnScreen { public class CloakStore extends SaturnScreenFabric {
private long lastPurchaseTime = 0; private long lastPurchaseTime = 0;
public CloakStore() { public CloakStore() {
@@ -6,7 +6,7 @@ import org.saturnclient.saturnclient.client.ServiceClient;
import org.saturnclient.saturnclient.client.player.SaturnPlayer; import org.saturnclient.saturnclient.client.player.SaturnPlayer;
import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.AnimationConfig;
import org.saturnclient.config.Theme; import org.saturnclient.config.Theme;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreenFabric;
import org.saturnclient.ui.Utils; import org.saturnclient.ui.Utils;
import org.saturnclient.ui.anim.Fade; import org.saturnclient.ui.anim.Fade;
import org.saturnclient.ui.anim.SlideY; import org.saturnclient.ui.anim.SlideY;
@@ -24,7 +24,7 @@ import org.saturnclient.ui.resources.Textures;
import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.systems.RenderSystem;
public class HatStore extends SaturnScreen { public class HatStore extends SaturnScreenFabric {
private long lastPurchaseTime = 0; private long lastPurchaseTime = 0;
public HatStore() { public HatStore() {