Architecture #35
This commit is contained in:
@@ -1,12 +1,12 @@
|
||||
package org.saturnclient.ui;
|
||||
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.bindings.SaturnItemStack;
|
||||
import org.saturnclient.common.bindings.SaturnSprite;
|
||||
import org.saturnclient.common.render.IMatrixStack;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.common.ref.asset.SpriteRef;
|
||||
import org.saturnclient.common.ref.game.ItemStackRef;
|
||||
import org.saturnclient.common.ref.render.MatrixStackRef;
|
||||
|
||||
public interface RenderScope {
|
||||
public IMatrixStack getMatrixStack();
|
||||
public MatrixStackRef getMatrixStack();
|
||||
|
||||
public void setOpacity(float alpha);
|
||||
|
||||
@@ -25,16 +25,16 @@ public interface RenderScope {
|
||||
public int getScaledWindowHeight();
|
||||
|
||||
/* Saturn common sprites */
|
||||
public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height,
|
||||
public void drawTexture(IdentifierRef sprite, int x, int y, float u, float v, int width, int height,
|
||||
int color);
|
||||
|
||||
public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height);
|
||||
public void drawTexture(IdentifierRef sprite, int x, int y, float u, float v, int width, int height);
|
||||
|
||||
public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height,
|
||||
public void drawTexture(IdentifierRef sprite, int x, int y, float u, float v, int width, int height,
|
||||
int regionWith,
|
||||
int regionHeight, int textureWidth, int textureHeight);
|
||||
|
||||
public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height,
|
||||
public void drawTexture(IdentifierRef sprite, int x, int y, float u, float v, int width, int height,
|
||||
int regionWidth,
|
||||
int regionHeight, int textureWidth, int textureHeight, int color);
|
||||
|
||||
@@ -46,19 +46,19 @@ public interface RenderScope {
|
||||
|
||||
public void draw();
|
||||
|
||||
public void drawItem(SaturnItemStack item, int x, int y);
|
||||
public void drawItem(ItemStackRef item, int x, int y);
|
||||
|
||||
public void drawItem(SaturnItemStack stack, int x, int y, int seed);
|
||||
public void drawItem(ItemStackRef stack, int x, int y, int seed);
|
||||
|
||||
public void drawItem(SaturnItemStack stack, int x, int y, int seed, int z);
|
||||
public void drawItem(ItemStackRef stack, int x, int y, int seed, int z);
|
||||
|
||||
public void drawItemWithoutEntity(SaturnItemStack stack, int x, int y);
|
||||
public void drawItemWithoutEntity(ItemStackRef stack, int x, int y);
|
||||
|
||||
public void drawItemWithoutEntity(SaturnItemStack stack, int x, int y, int seed);
|
||||
public void drawItemWithoutEntity(ItemStackRef stack, int x, int y, int seed);
|
||||
|
||||
public void drawSpriteStretched(SaturnSprite sprite, int x, int y, int width, int height);
|
||||
public void drawSpriteStretched(SpriteRef sprite, int x, int y, int width, int height);
|
||||
|
||||
public void drawSpriteStretched(SaturnSprite sprite, int x, int y, int width, int height, int color);
|
||||
public void drawSpriteStretched(SpriteRef sprite, int x, int y, int width, int height, int color);
|
||||
|
||||
public void fill(int x1, int y1, int x2, int y2, int color);
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.saturnclient.ui.components;
|
||||
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.ui.Element;
|
||||
import org.saturnclient.ui.ElementContext;
|
||||
@@ -9,11 +9,11 @@ import org.saturnclient.ui.RenderScope;
|
||||
public class CosmeticPreview extends Element {
|
||||
static int padding = 14;
|
||||
|
||||
SaturnIdentifier sprite;
|
||||
IdentifierRef sprite;
|
||||
private Runnable onClick;
|
||||
private boolean isSelected;
|
||||
|
||||
public CosmeticPreview(boolean isSelected, SaturnIdentifier sprite, Runnable onClick) {
|
||||
public CosmeticPreview(boolean isSelected, IdentifierRef sprite, Runnable onClick) {
|
||||
this.sprite = sprite;
|
||||
this.onClick = onClick;
|
||||
this.isSelected = isSelected;
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.saturnclient.ui.components;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.config.Config;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.ui.Element;
|
||||
@@ -18,9 +18,9 @@ public class Sidebar extends Element {
|
||||
public static class SidebarComponent {
|
||||
Runnable onClick;
|
||||
boolean end;
|
||||
SaturnIdentifier sprite;
|
||||
IdentifierRef sprite;
|
||||
|
||||
public SidebarComponent(SaturnIdentifier sprite, Runnable onClick, boolean end) {
|
||||
public SidebarComponent(IdentifierRef sprite, Runnable onClick, boolean end) {
|
||||
this.onClick = onClick;
|
||||
this.end = end;
|
||||
this.sprite = sprite;
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
package org.saturnclient.ui.elements;
|
||||
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.ui.Element;
|
||||
import org.saturnclient.ui.ElementContext;
|
||||
import org.saturnclient.ui.RenderScope;
|
||||
|
||||
public class ClickableTexture extends Element {
|
||||
SaturnIdentifier sprite;
|
||||
IdentifierRef sprite;
|
||||
private Runnable onClick;
|
||||
|
||||
public ClickableTexture(SaturnIdentifier sprite, Runnable onClick) {
|
||||
public ClickableTexture(IdentifierRef sprite, Runnable onClick) {
|
||||
this.sprite = sprite;
|
||||
this.onClick = onClick;
|
||||
}
|
||||
|
||||
@@ -2,16 +2,16 @@ package org.saturnclient.ui.elements;
|
||||
|
||||
import org.saturnclient.common.IMinecraftClient;
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.ui.Element;
|
||||
import org.saturnclient.ui.ElementContext;
|
||||
import org.saturnclient.ui.RenderScope;
|
||||
import org.saturnclient.ui.resources.SvgTexture;
|
||||
|
||||
public class ImageTexture extends Element {
|
||||
SaturnIdentifier sprite;
|
||||
IdentifierRef sprite;
|
||||
|
||||
public ImageTexture(SaturnIdentifier sprite) {
|
||||
public ImageTexture(IdentifierRef sprite) {
|
||||
this.sprite = sprite;
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ public class ImageTexture extends Element {
|
||||
int renderHeight = (int) (height * client.getWindow().getFramebufferHeight()
|
||||
/ client.getWindow().getHeight());
|
||||
|
||||
SaturnIdentifier pngId = SvgTexture.getSvg(client, sprite, renderWidth * 2, renderHeight * 2);
|
||||
IdentifierRef pngId = SvgTexture.getSvg(client, sprite, renderWidth * 2, renderHeight * 2);
|
||||
|
||||
this.sprite = pngId;
|
||||
if (pngId == null) {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.saturnclient.ui.elements;
|
||||
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.ui.Element;
|
||||
import org.saturnclient.ui.ElementContext;
|
||||
@@ -10,9 +10,9 @@ import org.saturnclient.ui.Utils;
|
||||
public class TabMenu extends Element {
|
||||
public static class TabMenuComponent {
|
||||
Runnable onClick;
|
||||
SaturnIdentifier sprite;
|
||||
IdentifierRef sprite;
|
||||
|
||||
public TabMenuComponent(SaturnIdentifier sprite, Runnable onClick) {
|
||||
public TabMenuComponent(IdentifierRef sprite, Runnable onClick) {
|
||||
this.onClick = onClick;
|
||||
this.sprite = sprite;
|
||||
}
|
||||
|
||||
@@ -1,17 +1,17 @@
|
||||
package org.saturnclient.ui.elements;
|
||||
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.ui.Element;
|
||||
import org.saturnclient.ui.ElementContext;
|
||||
import org.saturnclient.ui.RenderScope;
|
||||
|
||||
public class TextureButton extends Element {
|
||||
SaturnIdentifier sprite;
|
||||
IdentifierRef sprite;
|
||||
private Runnable onClick;
|
||||
static int padding = 14;
|
||||
|
||||
public TextureButton(SaturnIdentifier sprite, Runnable onClick) {
|
||||
public TextureButton(IdentifierRef sprite, Runnable onClick) {
|
||||
this.sprite = sprite;
|
||||
this.onClick = onClick;
|
||||
}
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
package org.saturnclient.ui.resources;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
|
||||
public class Fonts {
|
||||
public static final SaturnIdentifier INTER = SaturnIdentifier.of("saturnclient", "inter");
|
||||
public static final SaturnIdentifier INTER_BOLD = SaturnIdentifier.of("saturnclient", "inter_bold");
|
||||
public static final SaturnIdentifier DEFAULT = SaturnIdentifier.ofVanilla("default");
|
||||
public static final IdentifierRef INTER = IdentifierRef.of("saturnclient", "inter");
|
||||
public static final IdentifierRef INTER_BOLD = IdentifierRef.of("saturnclient", "inter_bold");
|
||||
public static final IdentifierRef DEFAULT = IdentifierRef.ofVanilla("default");
|
||||
|
||||
public static SaturnIdentifier getFont(int font) {
|
||||
public static IdentifierRef getFont(int font) {
|
||||
switch (font) {
|
||||
case 0:
|
||||
return DEFAULT;
|
||||
|
||||
@@ -12,11 +12,11 @@ import com.kitfox.svg.SVGUniverse;
|
||||
|
||||
import org.saturnclient.common.IMinecraftClient;
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
|
||||
public class SvgTexture {
|
||||
|
||||
private static List<SaturnIdentifier> svgCache = new ArrayList<>();
|
||||
private static List<IdentifierRef> svgCache = new ArrayList<>();
|
||||
|
||||
private static BufferedImage renderSvg(InputStream svgStream, int width, int height) throws Exception {
|
||||
// Load SVG
|
||||
@@ -50,8 +50,8 @@ public class SvgTexture {
|
||||
return image;
|
||||
}
|
||||
|
||||
public static SaturnIdentifier getSvg(IMinecraftClient client, SaturnIdentifier svgImage, int width, int height) {
|
||||
SaturnIdentifier id = SaturnIdentifier
|
||||
public static IdentifierRef getSvg(IMinecraftClient client, IdentifierRef svgImage, int width, int height) {
|
||||
IdentifierRef id = IdentifierRef
|
||||
.of(svgImage.toString().replaceAll("\\.svg$", (width + "_" + height).toString() + ".png"));
|
||||
|
||||
if (svgCache.contains(id)) {
|
||||
|
||||
@@ -1,84 +1,84 @@
|
||||
package org.saturnclient.ui.resources;
|
||||
|
||||
import org.saturnclient.common.bindings.SaturnIdentifier;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
|
||||
public class Textures {
|
||||
public static final SaturnIdentifier CROSSHAIR_RANGE = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef CROSSHAIR_RANGE = new IdentifierRef("saturnclient",
|
||||
"textures/gui/hud/crosshair_range.png");
|
||||
public static final SaturnIdentifier COSMETICS = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef COSMETICS = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/cosmetics.png");
|
||||
public static final SaturnIdentifier HUD_ICON = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef HUD_ICON = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/hud.png");
|
||||
public static final SaturnIdentifier SEARCH = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef SEARCH = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/search.png");
|
||||
public static final SaturnIdentifier CLOSE = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef CLOSE = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/close.png");
|
||||
public static final SaturnIdentifier MODS_TAB = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef MODS_TAB = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/mods_tab.png");
|
||||
public static final SaturnIdentifier SETTINGS = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef SETTINGS = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/settings.png");
|
||||
public static final SaturnIdentifier CLOAK = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef CLOAK = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/cloak.png");
|
||||
public static final SaturnIdentifier HAT = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef HAT = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/hat.png");
|
||||
public static final SaturnIdentifier RESET = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef RESET = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/reset.png");
|
||||
public static final SaturnIdentifier TOGGLE_INDICATOR = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef TOGGLE_INDICATOR = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/toggle_indicator.png");
|
||||
public static final SaturnIdentifier LEFT = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef LEFT = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/left.png");
|
||||
public static final SaturnIdentifier RIGHT = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef RIGHT = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/right.png");
|
||||
public static final SaturnIdentifier STORE = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef STORE = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/store.png");
|
||||
public static final SaturnIdentifier COINS = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef COINS = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/coins.png");
|
||||
public static final SaturnIdentifier SHIRT = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef SHIRT = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/shirt.png");
|
||||
public static final SaturnIdentifier CIRCLE_X = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef CIRCLE_X = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/circle_x.png");
|
||||
public static final SaturnIdentifier INFO = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef INFO = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/info.png");
|
||||
public static final SaturnIdentifier CHECK = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef CHECK = new IdentifierRef("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",
|
||||
public static final IdentifierRef LOGO = new IdentifierRef("saturnclient", "textures/logo/logo.png");
|
||||
public static final IdentifierRef REALISTIC_LOGO = new IdentifierRef("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",
|
||||
public static final IdentifierRef LOGO_TEXT = new IdentifierRef("saturnclient", "textures/logo/text.png");
|
||||
public static final IdentifierRef LOGO_TEXT_BIG = new IdentifierRef("saturnclient",
|
||||
"textures/logo/text_big.png");
|
||||
public static final SaturnIdentifier SPLASH = new SaturnIdentifier("saturnclient", "textures/gui/splash.png");
|
||||
public static final IdentifierRef SPLASH = new IdentifierRef("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",
|
||||
public static final IdentifierRef BUTTON_BORDER = new IdentifierRef("saturnclient", "button_border");
|
||||
public static final IdentifierRef BUTTON = new IdentifierRef("saturnclient", "button");
|
||||
public static final IdentifierRef BUTTON_OP = new IdentifierRef("saturnclient", "button_op");
|
||||
public static final IdentifierRef SETTINGS_BG = new IdentifierRef("saturnclient", "settings_bg");
|
||||
public static final IdentifierRef RECT = new IdentifierRef("saturnclient", "rect");
|
||||
public static final IdentifierRef RECT_BORDER = new IdentifierRef("saturnclient", "rect_border");
|
||||
public static final IdentifierRef MOD = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/mod.png");
|
||||
public static final SaturnIdentifier MOD_BG = new SaturnIdentifier("saturnclient",
|
||||
public static final IdentifierRef MOD_BG = new IdentifierRef("saturnclient",
|
||||
"textures/gui/components/mod_bg.png");
|
||||
|
||||
public static SaturnIdentifier getCloakPreview(String cloak) {
|
||||
return new SaturnIdentifier("saturnclient",
|
||||
public static IdentifierRef getCloakPreview(String cloak) {
|
||||
return new IdentifierRef("saturnclient",
|
||||
"textures/gui/cloak/" + (cloak.isEmpty() ? "none" : cloak) + ".png");
|
||||
}
|
||||
|
||||
public static SaturnIdentifier getHatPreview(String hat) {
|
||||
return new SaturnIdentifier("saturnclient",
|
||||
public static IdentifierRef getHatPreview(String hat) {
|
||||
return new IdentifierRef("saturnclient",
|
||||
"textures/gui/hat/" + (hat.isEmpty() ? "none" : hat) + ".png");
|
||||
}
|
||||
|
||||
public static SaturnIdentifier getEmotePreview(String emote) {
|
||||
return new SaturnIdentifier("saturnclient",
|
||||
public static IdentifierRef getEmotePreview(String emote) {
|
||||
return new IdentifierRef("saturnclient",
|
||||
"textures/gui/emote/" + (emote == null ? "none" : emote) + ".png");
|
||||
}
|
||||
|
||||
public static SaturnIdentifier getModIcon(String modId) {
|
||||
return new SaturnIdentifier("saturnclient", "textures/gui/mod/" + modId + ".svg");
|
||||
public static IdentifierRef getModIcon(String modId) {
|
||||
return new IdentifierRef("saturnclient", "textures/gui/mod/" + modId + ".svg");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import org.saturnclient.modules.HudMod;
|
||||
import org.saturnclient.modules.ModDimensions;
|
||||
import org.saturnclient.modules.ModManager;
|
||||
import org.saturnclient.modules.Module;
|
||||
import org.saturnclient.common.render.IMatrixStack;
|
||||
import org.saturnclient.common.ref.render.MatrixStackRef;
|
||||
import org.saturnclient.config.manager.ConfigManager;
|
||||
import org.saturnclient.ui.RenderScope;
|
||||
import org.saturnclient.ui.SaturnScreen;
|
||||
@@ -92,7 +92,7 @@ public class HudEditor extends SaturnScreen {
|
||||
public void render(RenderScope renderScope, int mouseX, int mouseY, float delta, long elapsed) {
|
||||
for (HudMod mod : hudMods) {
|
||||
ModDimensions dim = mod.getDimensions();
|
||||
IMatrixStack matrices = renderScope.getMatrixStack();
|
||||
MatrixStackRef matrices = renderScope.getMatrixStack();
|
||||
matrices.push();
|
||||
|
||||
matrices.translate(dim.x.value, dim.y.value, 0);
|
||||
|
||||
Reference in New Issue
Block a user