Improved structure and added RenderScope

This commit is contained in:
2026-03-06 00:29:11 +01:00
parent 86d588ffc4
commit 0f41b2786c
15 changed files with 118 additions and 24 deletions
@@ -0,0 +1,9 @@
package org.saturnclient.common.minecraft;
public class MinecraftBinding {
public Object inner;
public MinecraftBinding(Object binding) {
this.inner = binding;
}
}
@@ -1,9 +0,0 @@
package org.saturnclient.common.minecraft;
public class SaturnIdentifier {
public Object id;
public SaturnIdentifier(String namespace, String path) {
this.id = MinecraftProvider.PROVIDER.createIdentifier(namespace, path);
}
}
@@ -0,0 +1,10 @@
package org.saturnclient.common.minecraft.bindings;
import org.saturnclient.common.minecraft.MinecraftBinding;
import org.saturnclient.common.minecraft.MinecraftProvider;
public class SaturnIdentifier extends MinecraftBinding {
public SaturnIdentifier(String namespace, String path) {
super(MinecraftProvider.PROVIDER.createIdentifier(namespace, path));
}
}
@@ -0,0 +1,9 @@
package org.saturnclient.common.minecraft.bindings;
import org.saturnclient.common.minecraft.MinecraftBinding;
public class SaturnItemStack extends MinecraftBinding {
SaturnItemStack(Object binding) {
super(binding);
}
}
@@ -0,0 +1,9 @@
package org.saturnclient.common.minecraft.bindings;
import org.saturnclient.common.minecraft.MinecraftBinding;
public class SaturnSprite extends MinecraftBinding {
SaturnSprite(Object binding) {
super(binding);
}
}
@@ -3,7 +3,7 @@ package org.saturnclient.config;
import java.io.File;
import org.saturnclient.common.minecraft.MinecraftProvider;
import org.saturnclient.common.minecraft.SaturnIdentifier;
import org.saturnclient.common.minecraft.bindings.SaturnIdentifier;
import org.saturnclient.config.manager.ConfigManager;
import org.saturnclient.config.manager.Key;
import org.saturnclient.config.manager.Property;
@@ -0,0 +1,66 @@
package org.saturnclient.ui;
import org.saturnclient.common.minecraft.bindings.SaturnIdentifier;
import org.saturnclient.common.minecraft.bindings.SaturnItemStack;
import org.saturnclient.common.minecraft.bindings.SaturnSprite;
public interface RenderScope {
public void setOpacity(float alpha);
public int getColor(int color);
public void drawRect(int x, int y, int width, int height, int color);
public void drawText(String text, int x, int y, int font, int color);
public void drawText(float scale, String text, int x, int y, int font, int color);
public void drawRoundedRectangle(int x, int y, int width, int height, int radius, int color);
public int getScaledWindowWidth();
public int getScaledWindowHeight();
/* Saturn common sprites */
public void drawTexture(SaturnIdentifier 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(SaturnIdentifier 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,
int regionWidth,
int regionHeight, int textureWidth, int textureHeight, int color);
public void enableScissor(int x1, int y1, int x2, int y2);
public void disableScissor();
public boolean scissorContains(int x, int y);
public void draw();
public void drawItem(SaturnItemStack item, int x, int y);
public void drawItem(SaturnItemStack stack, int x, int y, int seed);
public void drawItem(SaturnItemStack stack, int x, int y, int seed, int z);
public void drawItemWithoutEntity(SaturnItemStack stack, int x, int y);
public void drawItemWithoutEntity(SaturnItemStack stack, int x, int y, int seed);
public void drawItem(SaturnItemStack entity, SaturnItemStack stack, int x, int y, int seed);
public void drawSpriteStretched(SaturnSprite 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 fill(int x1, int y1, int x2, int y2, int color);
public void fill(int x1, int y1, int x2, int y2, int z, int color);
public void drawBorder(int x, int y, int width, int height, int color);
}
@@ -1,6 +1,6 @@
package org.saturnclient.ui.resources;
import org.saturnclient.common.minecraft.SaturnIdentifier;
import org.saturnclient.common.minecraft.bindings.SaturnIdentifier;
public class Textures {
public static final SaturnIdentifier CROSSHAIR_RANGE = new SaturnIdentifier("saturnclient",