diff --git a/common/src/main/java/org/saturnclient/config/Config.java b/common/src/main/java/org/saturnclient/config/Config.java index 018f879..bc7c419 100644 --- a/common/src/main/java/org/saturnclient/config/Config.java +++ b/common/src/main/java/org/saturnclient/config/Config.java @@ -7,7 +7,7 @@ import org.saturnclient.common.minecraft.SaturnIdentifier; import org.saturnclient.config.manager.ConfigManager; import org.saturnclient.config.manager.Key; import org.saturnclient.config.manager.Property; -import org.saturnclient.resources.Textures; +import org.saturnclient.ui.resources.Textures; public class Config { public static ConfigManager config; diff --git a/common/src/main/java/org/saturnclient/resources/Textures.java b/common/src/main/java/org/saturnclient/resources/Textures.java deleted file mode 100644 index 28c3eee..0000000 --- a/common/src/main/java/org/saturnclient/resources/Textures.java +++ /dev/null @@ -1,80 +0,0 @@ -package org.saturnclient.resources; - -import org.saturnclient.common.minecraft.SaturnIdentifier; - -public class Textures { - public static final SaturnIdentifier CROSSHAIR_RANGE = new SaturnIdentifier("saturnclient", - "textures/gui/hud/crosshair_range.png"); - public static final SaturnIdentifier COSMETICS = new SaturnIdentifier("saturnclient", - "textures/gui/components/cosmetics.png"); - public static final SaturnIdentifier HUD_ICON = new SaturnIdentifier("saturnclient", - "textures/gui/components/hud.png"); - public static final SaturnIdentifier SEARCH = new SaturnIdentifier("saturnclient", - "textures/gui/components/search.png"); - public static final SaturnIdentifier CLOSE = new SaturnIdentifier("saturnclient", - "textures/gui/components/close.png"); - public static final SaturnIdentifier MODS_TAB = new SaturnIdentifier("saturnclient", - "textures/gui/components/mods_tab.png"); - public static final SaturnIdentifier SETTINGS = new SaturnIdentifier("saturnclient", - "textures/gui/components/settings.png"); - public static final SaturnIdentifier CLOAK = new SaturnIdentifier("saturnclient", - "textures/gui/components/cloak.png"); - public static final SaturnIdentifier HAT = new SaturnIdentifier("saturnclient", "textures/gui/components/hat.png"); - public static final SaturnIdentifier RESET = new SaturnIdentifier("saturnclient", - "textures/gui/components/reset.png"); - public static final SaturnIdentifier TOGGLE_INDICATOR = new SaturnIdentifier("saturnclient", - "textures/gui/components/toggle_indicator.png"); - public static final SaturnIdentifier LEFT = new SaturnIdentifier("saturnclient", - "textures/gui/components/left.png"); - public static final SaturnIdentifier RIGHT = new SaturnIdentifier("saturnclient", - "textures/gui/components/right.png"); - public static final SaturnIdentifier STORE = new SaturnIdentifier("saturnclient", - "textures/gui/components/store.png"); - public static final SaturnIdentifier COINS = new SaturnIdentifier("saturnclient", - "textures/gui/components/coins.png"); - public static final SaturnIdentifier SHIRT = new SaturnIdentifier("saturnclient", - "textures/gui/components/shirt.png"); - public static final SaturnIdentifier CIRCLE_X = new SaturnIdentifier("saturnclient", - "textures/gui/components/circle_x.png"); - public static final SaturnIdentifier INFO = new SaturnIdentifier("saturnclient", - "textures/gui/components/info.png"); - public static final SaturnIdentifier CHECK = new SaturnIdentifier("saturnclient", - "textures/gui/components/check.png"); - - public static final SaturnIdentifier LOGO = new SaturnIdentifier("saturnclient", "textures/logo/logo.png"); - public static final SaturnIdentifier REALISTIC_LOGO = new SaturnIdentifier("saturnclient", - "textures/logo/realistic.png"); - public static final SaturnIdentifier LOGO_TEXT = new SaturnIdentifier("saturnclient", "textures/logo/text.png"); - public static final SaturnIdentifier LOGO_TEXT_BIG = new SaturnIdentifier("saturnclient", - "textures/logo/text_big.png"); - public static final SaturnIdentifier SPLASH = new SaturnIdentifier("saturnclient", "textures/gui/splash.png"); - - // Widgets - public static final SaturnIdentifier BUTTON_BORDER = new SaturnIdentifier("saturnclient", "button_border"); - public static final SaturnIdentifier BUTTON = new SaturnIdentifier("saturnclient", "button"); - public static final SaturnIdentifier BUTTON_OP = new SaturnIdentifier("saturnclient", "button_op"); - public static final SaturnIdentifier SETTINGS_BG = new SaturnIdentifier("saturnclient", "settings_bg"); - public static final SaturnIdentifier RECT = new SaturnIdentifier("saturnclient", "rect"); - public static final SaturnIdentifier RECT_BORDER = new SaturnIdentifier("saturnclient", "rect_border"); - public static final SaturnIdentifier MOD = new SaturnIdentifier("saturnclient", "textures/gui/components/mod.png"); - public static final SaturnIdentifier MOD_BG = new SaturnIdentifier("saturnclient", - "textures/gui/components/mod_bg.png"); - - public static SaturnIdentifier getCloakPreview(String cloak) { - return new SaturnIdentifier("saturnclient", - "textures/gui/cloak/" + (cloak.isEmpty() ? "none" : cloak) + ".png"); - } - - public static SaturnIdentifier getHatPreview(String hat) { - return new SaturnIdentifier("saturnclient", "textures/gui/hat/" + (hat.isEmpty() ? "none" : hat) + ".png"); - } - - public static SaturnIdentifier getEmotePreview(String emote) { - return new SaturnIdentifier("saturnclient", "textures/gui/emote/" + (emote == null ? "none" : emote) + ".png"); - } - - public static SaturnIdentifier getModIcon(String modId) { - return new SaturnIdentifier("saturnclient", "textures/gui/mod/" + modId + ".svg"); - } - -} diff --git a/versions/1.21.4/src/main/java/org/saturnclient/ui/RenderScope.java b/versions/1.21.4/src/main/java/org/saturnclient/ui/RenderScope.java index 94890a8..3968530 100644 --- a/versions/1.21.4/src/main/java/org/saturnclient/ui/RenderScope.java +++ b/versions/1.21.4/src/main/java/org/saturnclient/ui/RenderScope.java @@ -11,6 +11,7 @@ import org.joml.Matrix4f; import com.mojang.blaze3d.systems.RenderSystem; +import org.saturnclient.common.minecraft.SaturnIdentifier; import org.saturnclient.saturnclient.SaturnClient; import org.saturnclient.saturnclient.mixin.DrawContextAccessor; import org.saturnclient.ui.resources.Fonts; @@ -205,6 +206,31 @@ public class RenderScope { return SaturnClient.client.getWindow().getScaledHeight(); } + /* Saturn common sprites */ + public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height, int color) { + this.drawTexture(sprite, x, y, u, v, width, height, width, height, width, height, color); + } + + public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height) { + this.drawTexture(sprite, x, y, u, v, width, height, width, height, width, height); + } + + public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height, + int regionWith, + int regionHeight, int textureWidth, int textureHeight) { + this.drawTexture(sprite, x, y, u, v, width, height, regionWith, regionHeight, textureWidth, textureHeight, -1); + } + + public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height, + int regionWidth, + int regionHeight, int textureWidth, int textureHeight, int color) { + this.drawTexturedQuad((Identifier) sprite.id, x, x + width, y, y + height, (u + 0.0F) / (float) textureWidth, + (u + (float) regionWidth) / (float) textureWidth, (v + 0.0F) / (float) textureHeight, + (v + (float) regionHeight) / (float) textureHeight, color); + } + + /* Minecraft sprites */ + public void drawTexture(Identifier sprite, int x, int y, float u, float v, int width, int height, int color) { this.drawTexture(sprite, x, y, u, v, width, height, width, height, width, height, color); } diff --git a/versions/1.21.4/src/main/java/org/saturnclient/ui/components/CosmeticPreview.java b/versions/1.21.4/src/main/java/org/saturnclient/ui/components/CosmeticPreview.java index bcd07d8..7162e5c 100644 --- a/versions/1.21.4/src/main/java/org/saturnclient/ui/components/CosmeticPreview.java +++ b/versions/1.21.4/src/main/java/org/saturnclient/ui/components/CosmeticPreview.java @@ -1,5 +1,6 @@ package org.saturnclient.ui.components; +import org.saturnclient.common.minecraft.SaturnIdentifier; import org.saturnclient.config.Theme; import org.saturnclient.ui.Element; import org.saturnclient.ui.ElementContext; @@ -15,8 +16,8 @@ public class CosmeticPreview extends Element { private Runnable onClick; private boolean isSelected; - public CosmeticPreview(boolean isSelected, Identifier sprite, Runnable onClick) { - this.sprite = sprite; + public CosmeticPreview(boolean isSelected, SaturnIdentifier sprite, Runnable onClick) { + this.sprite = (Identifier) sprite.id; this.onClick = onClick; this.isSelected = isSelected; diff --git a/versions/1.21.4/src/main/java/org/saturnclient/ui/components/Sidebar.java b/versions/1.21.4/src/main/java/org/saturnclient/ui/components/Sidebar.java index 0514e39..1be9169 100644 --- a/versions/1.21.4/src/main/java/org/saturnclient/ui/components/Sidebar.java +++ b/versions/1.21.4/src/main/java/org/saturnclient/ui/components/Sidebar.java @@ -1,6 +1,7 @@ package org.saturnclient.ui.components; import org.saturnclient.saturnclient.SaturnClient; +import org.saturnclient.common.minecraft.SaturnIdentifier; import org.saturnclient.config.Config; import org.saturnclient.config.Theme; import org.saturnclient.ui.Element; @@ -22,10 +23,10 @@ public class Sidebar extends Element { boolean end; Identifier sprite; - public SidebarComponent(Identifier sprite, Runnable onClick, boolean end) { + public SidebarComponent(SaturnIdentifier sprite, Runnable onClick, boolean end) { this.onClick = onClick; this.end = end; - this.sprite = sprite; + this.sprite = (Identifier) sprite.id; } } diff --git a/versions/1.21.4/src/main/java/org/saturnclient/ui/elements/TabMenu.java b/versions/1.21.4/src/main/java/org/saturnclient/ui/elements/TabMenu.java index e0248c8..db22caf 100644 --- a/versions/1.21.4/src/main/java/org/saturnclient/ui/elements/TabMenu.java +++ b/versions/1.21.4/src/main/java/org/saturnclient/ui/elements/TabMenu.java @@ -1,5 +1,6 @@ package org.saturnclient.ui.elements; +import org.saturnclient.common.minecraft.SaturnIdentifier; import org.saturnclient.config.Theme; import org.saturnclient.ui.Element; import org.saturnclient.ui.ElementContext; @@ -13,9 +14,9 @@ public class TabMenu extends Element { Runnable onClick; Identifier sprite; - public TabMenuComponent(Identifier sprite, Runnable onClick) { + public TabMenuComponent(SaturnIdentifier sprite, Runnable onClick) { this.onClick = onClick; - this.sprite = sprite; + this.sprite = (Identifier) sprite.id; } } diff --git a/versions/1.21.4/src/main/java/org/saturnclient/ui/elements/TextureButton.java b/versions/1.21.4/src/main/java/org/saturnclient/ui/elements/TextureButton.java index 22ce701..e4de071 100644 --- a/versions/1.21.4/src/main/java/org/saturnclient/ui/elements/TextureButton.java +++ b/versions/1.21.4/src/main/java/org/saturnclient/ui/elements/TextureButton.java @@ -1,5 +1,6 @@ package org.saturnclient.ui.elements; +import org.saturnclient.common.minecraft.SaturnIdentifier; import org.saturnclient.config.Theme; import org.saturnclient.ui.Element; import org.saturnclient.ui.ElementContext; @@ -13,8 +14,8 @@ public class TextureButton extends Element { private Runnable onClick; static int padding = 14; - public TextureButton(Identifier sprite, Runnable onClick) { - this.sprite = sprite; + public TextureButton(SaturnIdentifier sprite, Runnable onClick) { + this.sprite = (Identifier) sprite.id; this.onClick = onClick; } diff --git a/versions/1.21.4/src/main/java/org/saturnclient/ui/resources/Textures.java b/versions/1.21.4/src/main/java/org/saturnclient/ui/resources/Textures.java deleted file mode 100644 index 5b6217d..0000000 --- a/versions/1.21.4/src/main/java/org/saturnclient/ui/resources/Textures.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.saturnclient.ui.resources; - -import net.minecraft.util.Identifier; - -public class Textures { - public static final Identifier CROSSHAIR_RANGE = Identifier.of("saturnclient", "textures/gui/hud/crosshair_range.png"); - public static final Identifier COSMETICS = Identifier.of("saturnclient", "textures/gui/components/cosmetics.png"); - public static final Identifier HUD_ICON = Identifier.of("saturnclient", "textures/gui/components/hud.png"); - public static final Identifier SEARCH = Identifier.of("saturnclient", "textures/gui/components/search.png"); - public static final Identifier CLOSE = Identifier.of("saturnclient", "textures/gui/components/close.png"); - public static final Identifier MODS_TAB = Identifier.of("saturnclient", "textures/gui/components/mods_tab.png"); - public static final Identifier SETTINGS = Identifier.of("saturnclient", "textures/gui/components/settings.png"); - public static final Identifier CLOAK = Identifier.of("saturnclient", "textures/gui/components/cloak.png"); - public static final Identifier HAT = Identifier.of("saturnclient", "textures/gui/components/hat.png"); - public static final Identifier RESET = Identifier.of("saturnclient", "textures/gui/components/reset.png"); - public static final Identifier TOGGLE_INDICATOR = Identifier.of("saturnclient", - "textures/gui/components/toggle_indicator.png"); - public static final Identifier LEFT = Identifier.of("saturnclient", "textures/gui/components/left.png"); - public static final Identifier RIGHT = Identifier.of("saturnclient", "textures/gui/components/right.png"); - public static final Identifier STORE = Identifier.of("saturnclient", "textures/gui/components/store.png"); - public static final Identifier COINS = Identifier.of("saturnclient", "textures/gui/components/coins.png"); - public static final Identifier SHIRT = Identifier.of("saturnclient", "textures/gui/components/shirt.png"); - public static final Identifier CIRCLE_X = Identifier.of("saturnclient", "textures/gui/components/circle_x.png"); - public static final Identifier INFO = Identifier.of("saturnclient", "textures/gui/components/info.png"); - public static final Identifier CHECK = Identifier.of("saturnclient", "textures/gui/components/check.png"); - - public static final Identifier LOGO = Identifier.of("saturnclient", "textures/logo/logo.png"); - public static final Identifier REALISTIC_LOGO = Identifier.of("saturnclient", "textures/logo/realistic.png"); - public static final Identifier LOGO_TEXT = Identifier.of("saturnclient", "textures/logo/text.png"); - public static final Identifier LOGO_TEXT_BIG = Identifier.of("saturnclient", "textures/logo/text_big.png"); - public static final Identifier SPLASH = Identifier.of("saturnclient", "textures/gui/splash.png"); - - // Widgets - public static final Identifier BUTTON_BORDER = Identifier.of("saturnclient", "button_border"); - public static final Identifier BUTTON = Identifier.of("saturnclient", "button"); - public static final Identifier BUTTON_OP = Identifier.of("saturnclient", "button_op"); - public static final Identifier SETTINGS_BG = Identifier.of("saturnclient", "settings_bg"); - public static final Identifier RECT = Identifier.of("saturnclient", "rect"); - public static final Identifier RECT_BORDER = Identifier.of("saturnclient", "rect_border"); - public static final Identifier MOD = Identifier.of("saturnclient", "textures/gui/components/mod.png"); - public static final Identifier MOD_BG = Identifier.of("saturnclient", "textures/gui/components/mod_bg.png"); - - public static Identifier getCloakPreview(String cloak) { - return Identifier.of("saturnclient", "textures/gui/cloak/" + (cloak.isEmpty() ? "none" : cloak) + ".png"); - } - - public static Identifier getHatPreview(String hat) { - return Identifier.of("saturnclient", "textures/gui/hat/" + (hat.isEmpty() ? "none" : hat) + ".png"); - } - - public static Identifier getEmotePreview(String emote) { - return Identifier.of("saturnclient", "textures/gui/emote/" + (emote == null ? "none" : emote) + ".png"); - } - - public static Identifier getModIcon(String modId) { - return Identifier.of("saturnclient", "textures/gui/mod/" + modId + ".svg"); - } - -}