Architecture #35

This commit is contained in:
2026-03-07 23:14:02 +01:00
parent 5d2a21dd69
commit bdc21920eb
9 changed files with 61 additions and 61 deletions
+1 -1
Submodule common updated: 799d914dba...4501b0c35e
@@ -5,7 +5,7 @@ import java.awt.image.BufferedImage;
import org.lwjgl.glfw.GLFW; import org.lwjgl.glfw.GLFW;
import org.saturnclient.common.IMinecraftClient; import org.saturnclient.common.IMinecraftClient;
import org.saturnclient.common.MinecraftProvider; import org.saturnclient.common.MinecraftProvider;
import org.saturnclient.common.bindings.SaturnIdentifier; import org.saturnclient.common.ref.asset.IdentifierRef;
import org.saturnclient.cosmetics.cloak.utils.IdentifierUtils; import org.saturnclient.cosmetics.cloak.utils.IdentifierUtils;
import org.saturnclient.saturnclient.SaturnClient; import org.saturnclient.saturnclient.SaturnClient;
import org.saturnclient.ui.SaturnScreen; import org.saturnclient.ui.SaturnScreen;
@@ -40,7 +40,7 @@ public class SaturnClientProvider extends MinecraftProvider {
} }
@Override @Override
public void registerBufferedImageTexture(SaturnIdentifier i, BufferedImage bi) { public void registerBufferedImageTexture(IdentifierRef i, BufferedImage bi) {
IdentifierUtils.registerBufferedImageTextureFast((Identifier) i.inner, bi); IdentifierUtils.registerBufferedImageTextureFast((Identifier) i.inner, bi);
} }
@@ -1,8 +1,8 @@
package org.saturnclient.impl.mixins; package org.saturnclient.impl.mixins;
import org.joml.Quaternionf; import org.joml.Quaternionf;
import org.saturnclient.common.bindings.SaturnQuaternionf; import org.saturnclient.common.ref.render.MatrixStackRef;
import org.saturnclient.common.render.IMatrixStack; import org.saturnclient.common.ref.render.SaturnQuaternionf;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.gen.Invoker; import org.spongepowered.asm.mixin.gen.Invoker;
@@ -10,7 +10,7 @@ import org.spongepowered.asm.mixin.gen.Invoker;
import net.minecraft.client.util.math.MatrixStack; import net.minecraft.client.util.math.MatrixStack;
@Mixin(MatrixStack.class) @Mixin(MatrixStack.class)
public abstract class MatrixStackMixin implements IMatrixStack { public abstract class MatrixStackMixin implements MatrixStackRef {
@Shadow @Shadow
public abstract void translate(double x, double y, double z); public abstract void translate(double x, double y, double z);
@@ -4,8 +4,8 @@ import java.io.File;
import java.io.InputStream; import java.io.InputStream;
import org.saturnclient.common.IMinecraftClient; import org.saturnclient.common.IMinecraftClient;
import org.saturnclient.common.bindings.SaturnIdentifier; import org.saturnclient.common.ref.asset.IdentifierRef;
import org.saturnclient.common.render.IWindow; import org.saturnclient.common.ref.render.WindowRef;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
@@ -31,7 +31,7 @@ public class MinecraftClientMixin implements IMinecraftClient {
} }
@Override @Override
public InputStream getResource(SaturnIdentifier identifier) { public InputStream getResource(IdentifierRef identifier) {
try { try {
return resourceManager.getResource((Identifier) identifier.inner).get().getInputStream(); return resourceManager.getResource((Identifier) identifier.inner).get().getInputStream();
} catch (Exception e) { } catch (Exception e) {
@@ -40,7 +40,7 @@ public class MinecraftClientMixin implements IMinecraftClient {
} }
@Override @Override
public IWindow getWindow() { public WindowRef getWindow() {
return (IWindow) (Object) this.window; return (WindowRef) (Object) this.window;
} }
} }
@@ -1,13 +1,13 @@
package org.saturnclient.impl.mixins; package org.saturnclient.impl.mixins;
import org.saturnclient.common.render.IWindow; import org.saturnclient.common.ref.render.WindowRef;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
import net.minecraft.client.util.Window; import net.minecraft.client.util.Window;
@Mixin(Window.class) @Mixin(Window.class)
public abstract class WindowMixin implements IWindow { public abstract class WindowMixin implements WindowRef {
@Shadow @Shadow
public abstract int getWidth(); public abstract int getWidth();
@@ -1,6 +1,6 @@
package org.saturnclient.impl.modules; package org.saturnclient.impl.modules;
import org.saturnclient.common.bindings.SaturnItemStack; import org.saturnclient.common.ref.game.ItemStackRef;
import org.saturnclient.modules.interfaces.ArmorDisplayInterface; import org.saturnclient.modules.interfaces.ArmorDisplayInterface;
import net.minecraft.client.MinecraftClient; import net.minecraft.client.MinecraftClient;
@@ -15,69 +15,69 @@ public class ArmorDisplayFabric implements ArmorDisplayInterface {
} }
@Override @Override
public SaturnItemStack getMainHand() { public ItemStackRef getMainHand() {
return new SaturnItemStack(get(EquipmentSlot.MAINHAND)); return new ItemStackRef(get(EquipmentSlot.MAINHAND));
} }
@Override @Override
public SaturnItemStack getHelmet() { public ItemStackRef getHelmet() {
return new SaturnItemStack(get(EquipmentSlot.HEAD)); return new ItemStackRef(get(EquipmentSlot.HEAD));
} }
@Override @Override
public SaturnItemStack getChestplate() { public ItemStackRef getChestplate() {
return new SaturnItemStack(get(EquipmentSlot.CHEST)); return new ItemStackRef(get(EquipmentSlot.CHEST));
} }
@Override @Override
public SaturnItemStack getLeggings() { public ItemStackRef getLeggings() {
return new SaturnItemStack(get(EquipmentSlot.LEGS)); return new ItemStackRef(get(EquipmentSlot.LEGS));
} }
@Override @Override
public SaturnItemStack getBoots() { public ItemStackRef getBoots() {
return new SaturnItemStack(get(EquipmentSlot.FEET)); return new ItemStackRef(get(EquipmentSlot.FEET));
} }
@Override @Override
public boolean isEmpty(SaturnItemStack stack) { public boolean isEmpty(ItemStackRef stack) {
return ((ItemStack) stack.get()).isEmpty(); return ((ItemStack) stack.get()).isEmpty();
} }
@Override @Override
public int getMaxDamage(SaturnItemStack stack) { public int getMaxDamage(ItemStackRef stack) {
return ((ItemStack) stack.get()).getMaxDamage(); return ((ItemStack) stack.get()).getMaxDamage();
} }
@Override @Override
public int getDamage(SaturnItemStack stack) { public int getDamage(ItemStackRef stack) {
return ((ItemStack) stack.get()).getDamage(); return ((ItemStack) stack.get()).getDamage();
} }
// Dummy items // Dummy items
@Override @Override
public SaturnItemStack getDummyMainHand() { public ItemStackRef getDummyMainHand() {
return new SaturnItemStack(new ItemStack(Items.DIAMOND_SWORD)); return new ItemStackRef(new ItemStack(Items.DIAMOND_SWORD));
} }
@Override @Override
public SaturnItemStack getDummyHelmet() { public ItemStackRef getDummyHelmet() {
return new SaturnItemStack(new ItemStack(Items.DIAMOND_HELMET)); return new ItemStackRef(new ItemStack(Items.DIAMOND_HELMET));
} }
@Override @Override
public SaturnItemStack getDummyChestplate() { public ItemStackRef getDummyChestplate() {
return new SaturnItemStack(new ItemStack(Items.DIAMOND_CHESTPLATE)); return new ItemStackRef(new ItemStack(Items.DIAMOND_CHESTPLATE));
} }
@Override @Override
public SaturnItemStack getDummyLeggings() { public ItemStackRef getDummyLeggings() {
return new SaturnItemStack(new ItemStack(Items.DIAMOND_LEGGINGS)); return new ItemStackRef(new ItemStack(Items.DIAMOND_LEGGINGS));
} }
@Override @Override
public SaturnItemStack getDummyBoots() { public ItemStackRef getDummyBoots() {
return new SaturnItemStack(new ItemStack(Items.DIAMOND_BOOTS)); return new ItemStackRef(new ItemStack(Items.DIAMOND_BOOTS));
} }
} }
@@ -4,8 +4,8 @@ import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import java.util.Arrays; import java.util.Arrays;
import org.saturnclient.common.ref.asset.SpriteRef;
import org.saturnclient.modules.interfaces.StatusEffectsInterface; import org.saturnclient.modules.interfaces.StatusEffectsInterface;
import org.saturnclient.common.bindings.SaturnSprite;
import net.minecraft.client.MinecraftClient; import net.minecraft.client.MinecraftClient;
import net.minecraft.client.texture.StatusEffectSpriteManager; import net.minecraft.client.texture.StatusEffectSpriteManager;
@@ -21,7 +21,7 @@ public class StatusEffectsFabric implements StatusEffectsInterface {
return mc.player.getStatusEffects().stream() return mc.player.getStatusEffects().stream()
.filter(StatusEffectInstance::shouldShowIcon) .filter(StatusEffectInstance::shouldShowIcon)
.map(se -> new Effect( .map(se -> new Effect(
new SaturnSprite(manager.getSprite(se.getEffectType())), new SpriteRef(manager.getSprite(se.getEffectType())),
se.getDuration() / 20, se.getDuration() / 20,
se.isInfinite(), se.isInfinite(),
se.shouldShowIcon(), se.shouldShowIcon(),
@@ -32,7 +32,7 @@ public class StatusEffectsFabric implements StatusEffectsInterface {
@Override @Override
public List<Effect> getDummyEffects() { public List<Effect> getDummyEffects() {
return Arrays.asList( return Arrays.asList(
new Effect(new SaturnSprite(null), 600, false, true, "Infinite"), new Effect(new SpriteRef(null), 600, false, true, "Infinite"),
new Effect(new SaturnSprite(null), 600, false, true, "Infinite")); new Effect(new SpriteRef(null), 600, false, true, "Infinite"));
} }
} }
@@ -3,7 +3,7 @@ package org.saturnclient.ui;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.joml.Quaternionf; import org.joml.Quaternionf;
import org.joml.Vector3f; import org.joml.Vector3f;
import org.saturnclient.common.bindings.SaturnQuaternionf; import org.saturnclient.common.ref.render.SaturnQuaternionf;
import org.saturnclient.saturnclient.SaturnClient; import org.saturnclient.saturnclient.SaturnClient;
import org.saturnclient.ui.components.SkinPreview.EntityDrawer; import org.saturnclient.ui.components.SkinPreview.EntityDrawer;
@@ -11,10 +11,10 @@ import org.joml.Matrix4f;
import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.systems.RenderSystem;
import org.saturnclient.common.MinecraftProvider; import org.saturnclient.common.MinecraftProvider;
import org.saturnclient.common.bindings.SaturnIdentifier; import org.saturnclient.common.ref.asset.IdentifierRef;
import org.saturnclient.common.bindings.SaturnItemStack; import org.saturnclient.common.ref.asset.SpriteRef;
import org.saturnclient.common.bindings.SaturnSprite; import org.saturnclient.common.ref.game.ItemStackRef;
import org.saturnclient.common.render.IMatrixStack; import org.saturnclient.common.ref.render.MatrixStackRef;
import org.saturnclient.saturnclient.SaturnClient; import org.saturnclient.saturnclient.SaturnClient;
import org.saturnclient.saturnclient.mixin.DrawContextAccessor; import org.saturnclient.saturnclient.mixin.DrawContextAccessor;
import org.saturnclient.ui.resources.Fonts; import org.saturnclient.ui.resources.Fonts;
@@ -62,8 +62,8 @@ public class RenderScopeImpl implements RenderScope {
} }
@Override @Override
public IMatrixStack getMatrixStack() { public MatrixStackRef getMatrixStack() {
return (IMatrixStack) matrices; return (MatrixStackRef) matrices;
} }
@Override @Override
@@ -218,24 +218,24 @@ public class RenderScopeImpl implements RenderScope {
} }
@Override @Override
public void drawTexture(SaturnIdentifier sprite, int x, int y, float u, float v, int width, int height, int color) { public void drawTexture(IdentifierRef 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); this.drawTexture(sprite, x, y, u, v, width, height, width, height, width, height, color);
} }
@Override @Override
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) {
this.drawTexture(sprite, x, y, u, v, width, height, width, height, width, height); this.drawTexture(sprite, x, y, u, v, width, height, width, height, width, height);
} }
@Override @Override
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 regionWith,
int regionHeight, int textureWidth, int textureHeight) { int regionHeight, int textureWidth, int textureHeight) {
this.drawTexture(sprite, x, y, u, v, width, height, regionWith, regionHeight, textureWidth, textureHeight, -1); this.drawTexture(sprite, x, y, u, v, width, height, regionWith, regionHeight, textureWidth, textureHeight, -1);
} }
@Override @Override
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 regionWidth,
int regionHeight, int textureWidth, int textureHeight, int color) { int regionHeight, int textureWidth, int textureHeight, int color) {
this.drawTexturedQuad((Identifier) sprite.inner, x, x + width, y, y + height, (u + 0.0F) / (float) textureWidth, this.drawTexturedQuad((Identifier) sprite.inner, x, x + width, y, y + height, (u + 0.0F) / (float) textureWidth,
@@ -270,7 +270,7 @@ public class RenderScopeImpl implements RenderScope {
if (sprite.toString().endsWith(".svg")) { if (sprite.toString().endsWith(".svg")) {
sprite = (Identifier) SvgTexture.getSvg(MinecraftProvider.PROVIDER.getClient(), sprite = (Identifier) SvgTexture.getSvg(MinecraftProvider.PROVIDER.getClient(),
new SaturnIdentifier(sprite), new IdentifierRef(sprite),
(x2 - x1) * 2, (y2 - y1) * 2).inner; (x2 - x1) * 2, (y2 - y1) * 2).inner;
} }
@@ -371,31 +371,31 @@ public class RenderScopeImpl implements RenderScope {
} }
@Override @Override
public void drawItem(SaturnItemStack item, int x, int y) { public void drawItem(ItemStackRef item, int x, int y) {
this.drawItem(SaturnClient.client.player, SaturnClient.client.world, item, x, y, 0); this.drawItem(SaturnClient.client.player, SaturnClient.client.world, item, x, y, 0);
} }
@Override @Override
public void drawItem(SaturnItemStack stack, int x, int y, int seed) { public void drawItem(ItemStackRef stack, int x, int y, int seed) {
this.drawItem(SaturnClient.client.player, SaturnClient.client.world, stack, x, y, seed); this.drawItem(SaturnClient.client.player, SaturnClient.client.world, stack, x, y, seed);
} }
@Override @Override
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) {
this.drawItem(SaturnClient.client.player, SaturnClient.client.world, (ItemStack) stack.inner, x, y, seed, z); this.drawItem(SaturnClient.client.player, SaturnClient.client.world, (ItemStack) stack.inner, x, y, seed, z);
} }
@Override @Override
public void drawItemWithoutEntity(SaturnItemStack stack, int x, int y) { public void drawItemWithoutEntity(ItemStackRef stack, int x, int y) {
this.drawItemWithoutEntity(stack, x, y, 0); this.drawItemWithoutEntity(stack, x, y, 0);
} }
@Override @Override
public void drawItemWithoutEntity(SaturnItemStack stack, int x, int y, int seed) { public void drawItemWithoutEntity(ItemStackRef stack, int x, int y, int seed) {
this.drawItem((LivingEntity) null, SaturnClient.client.world, stack, x, y, seed); this.drawItem((LivingEntity) null, SaturnClient.client.world, stack, x, y, seed);
} }
private void drawItem(@Nullable LivingEntity entity, @Nullable World world, SaturnItemStack stack, int x, int y, private void drawItem(@Nullable LivingEntity entity, @Nullable World world, ItemStackRef stack, int x, int y,
int seed) { int seed) {
this.drawItem(entity, world, (ItemStack) stack.inner, x, y, seed, 0); this.drawItem(entity, world, (ItemStack) stack.inner, x, y, seed, 0);
} }
@@ -442,12 +442,12 @@ public class RenderScopeImpl implements RenderScope {
} }
@Override @Override
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) {
this.drawSpriteStretched(sprite, x, y, width, height, -1); this.drawSpriteStretched(sprite, x, y, width, height, -1);
} }
@Override @Override
public void drawSpriteStretched(SaturnSprite saturnSprite, int x, int y, int width, int height, int color) { public void drawSpriteStretched(SpriteRef saturnSprite, int x, int y, int width, int height, int color) {
Sprite sprite = (Sprite) saturnSprite.inner; Sprite sprite = (Sprite) saturnSprite.inner;
if (color == 0) if (color == 0)
return; return;