Minecraft
This commit is contained in:
@@ -2,4 +2,5 @@ package org.saturnclient.common.provider;
|
||||
|
||||
public class Providers {
|
||||
public static RefConstructorProvider refConstructor;
|
||||
public static SaturnProvider saturn;
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package org.saturnclient.common.provider;
|
||||
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
|
||||
public abstract class RefConstructorProvider {
|
||||
public interface RefConstructorProvider {
|
||||
public abstract IdentifierRef identifier(String namespace, String path);
|
||||
public abstract IdentifierRef identifier(String fullPath);
|
||||
}
|
||||
|
||||
+2
-17
@@ -1,28 +1,13 @@
|
||||
package org.saturnclient.common;
|
||||
package org.saturnclient.common.provider;
|
||||
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.common.ref.game.MinecraftClientRef;
|
||||
import org.saturnclient.ui.SaturnScreen;
|
||||
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
public abstract class MinecraftProvider {
|
||||
public static MinecraftProvider PROVIDER;
|
||||
|
||||
public static enum MinecraftScreen {
|
||||
SelectWorld,
|
||||
Multiplayer,
|
||||
Options
|
||||
}
|
||||
|
||||
public interface SaturnProvider {
|
||||
public abstract MinecraftClientRef getClient();
|
||||
|
||||
public abstract void setScreen(SaturnScreen screen);
|
||||
|
||||
public abstract void setScreen(MinecraftScreen screen);
|
||||
|
||||
public abstract Object createIdentifier(String namespace, String path);
|
||||
|
||||
public abstract boolean isKeyPressed(int key);
|
||||
|
||||
public abstract int getWidth(String text, int font);
|
||||
@@ -5,12 +5,22 @@ import java.io.InputStream;
|
||||
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.common.ref.render.WindowRef;
|
||||
import org.saturnclient.ui.SaturnScreen;
|
||||
|
||||
public interface MinecraftClientRef {
|
||||
public static enum MinecraftScreen {
|
||||
SelectWorld,
|
||||
Multiplayer,
|
||||
Options
|
||||
}
|
||||
|
||||
public File getRunDirectory();
|
||||
|
||||
public InputStream getResource(IdentifierRef identifier);
|
||||
|
||||
public WindowRef getWindow();
|
||||
|
||||
public void setScreen(SaturnScreen screen);
|
||||
|
||||
public void setScreen(MinecraftScreen screen);
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package org.saturnclient.config;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.config.manager.ConfigManager;
|
||||
import org.saturnclient.config.manager.Key;
|
||||
@@ -23,7 +23,7 @@ public class Config {
|
||||
}
|
||||
|
||||
public static void init() {
|
||||
File configFile = new File(MinecraftProvider.PROVIDER.getClient().getRunDirectory(), "saturn.json");
|
||||
File configFile = new File(Providers.saturn.getClient().getRunDirectory(), "saturn.json");
|
||||
config = new ConfigManager(configFile, "Saturn Client");
|
||||
|
||||
config.property("Realistic logo", realisticLogo);
|
||||
|
||||
@@ -6,7 +6,7 @@ import com.fasterxml.jackson.databind.node.ObjectNode;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
|
||||
public class Property<T> {
|
||||
|
||||
@@ -275,7 +275,7 @@ public class Property<T> {
|
||||
public boolean isKeyPressed() {
|
||||
|
||||
return (Integer) value != -1 &&
|
||||
MinecraftProvider.PROVIDER.isKeyPressed((Integer) value);
|
||||
Providers.saturn.isKeyPressed((Integer) value);
|
||||
}
|
||||
|
||||
public boolean wasKeyPressed() {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.saturnclient.ui.components;
|
||||
|
||||
import org.saturnclient.modules.Module;
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.ui.Element;
|
||||
import org.saturnclient.ui.ElementContext;
|
||||
@@ -141,7 +141,7 @@ public class SaturnModule extends Element {
|
||||
1.0f);
|
||||
|
||||
if (settingsHover) {
|
||||
MinecraftProvider.PROVIDER.setScreen(new ConfigEditor(mod.getConfig()));
|
||||
Providers.saturn.getClient().setScreen(new ConfigEditor(mod.getConfig()));
|
||||
} else {
|
||||
mod.setEnabled(!mod.isEnabled());
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.saturnclient.ui.components;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.config.Config;
|
||||
import org.saturnclient.config.Theme;
|
||||
@@ -30,14 +30,14 @@ public class Sidebar extends Element {
|
||||
Runnable onClose;
|
||||
SidebarComponent[] components = {
|
||||
new Sidebar.SidebarComponent(Textures.MODS_TAB, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new ModMenu());
|
||||
Providers.saturn.getClient().setScreen(new ModMenu());
|
||||
}, false),
|
||||
new Sidebar.SidebarComponent(Textures.SETTINGS, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new ConfigEditor(Config.config));
|
||||
Providers.saturn.getClient().setScreen(new ConfigEditor(Config.config));
|
||||
}, false),
|
||||
|
||||
new Sidebar.SidebarComponent(Textures.SHIRT, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new CloakMenu());
|
||||
Providers.saturn.getClient().setScreen(new CloakMenu());
|
||||
}, false),
|
||||
|
||||
new Sidebar.SidebarComponent(Textures.CLOSE, () -> {
|
||||
@@ -45,7 +45,7 @@ public class Sidebar extends Element {
|
||||
}, true),
|
||||
|
||||
new Sidebar.SidebarComponent(Textures.STORE, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new CloakStore());
|
||||
Providers.saturn.getClient().setScreen(new CloakStore());
|
||||
}, true),
|
||||
};
|
||||
int active = 0;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.saturnclient.ui.components.inputs;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.config.manager.Key;
|
||||
import org.saturnclient.config.manager.Property;
|
||||
@@ -22,7 +22,7 @@ public class KeybindingSelector extends Element {
|
||||
public void render(RenderScope renderScope, ElementContext ctx) {
|
||||
int textColor = focused ? 0xFFFFFF : 0xAAAAAA;
|
||||
renderScope.drawRoundedRectangle(0, 0, width, height, 10, 0xFF000000);
|
||||
String name = MinecraftProvider.PROVIDER.getKeyName(prop.value);
|
||||
String name = Providers.saturn.getKeyName(prop.value);
|
||||
|
||||
renderScope.drawText(0.6f,
|
||||
prop.value == -1 ? "<NONE>"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.saturnclient.ui.elements;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.common.ref.game.MinecraftClientRef;
|
||||
import org.saturnclient.ui.Element;
|
||||
@@ -18,7 +18,7 @@ public class ImageTexture extends Element {
|
||||
@Override
|
||||
public void render(RenderScope renderScope, ElementContext ctx) {
|
||||
if (sprite.toString().endsWith(".svg")) {
|
||||
MinecraftClientRef client = MinecraftProvider.PROVIDER.getClient();
|
||||
MinecraftClientRef client = Providers.saturn.getClient();
|
||||
|
||||
int renderWidth = (int) (width * client.getWindow().getFramebufferWidth() / client.getWindow().getWidth());
|
||||
int renderHeight = (int) (height * client.getWindow().getFramebufferHeight()
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.saturnclient.ui.resources;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
|
||||
public class Fonts {
|
||||
@@ -22,7 +22,7 @@ public class Fonts {
|
||||
public static int getWidth(String text, int font) {
|
||||
int w = 0;
|
||||
for (String line : text.split("\n")) {
|
||||
w = Math.max(w, MinecraftProvider.PROVIDER.getWidth(line, font));
|
||||
w = Math.max(w, Providers.saturn.getWidth(line, font));
|
||||
}
|
||||
if (font == 0) {
|
||||
return w * 2;
|
||||
|
||||
@@ -10,7 +10,7 @@ import java.util.List;
|
||||
import com.kitfox.svg.SVGDiagram;
|
||||
import com.kitfox.svg.SVGUniverse;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.common.ref.asset.IdentifierRef;
|
||||
import org.saturnclient.common.ref.game.MinecraftClientRef;
|
||||
|
||||
@@ -62,7 +62,7 @@ public class SvgTexture {
|
||||
|
||||
BufferedImage image = renderSvg(svgStream, width, height);
|
||||
|
||||
MinecraftProvider.PROVIDER.registerBufferedImageTexture(id, image);
|
||||
Providers.saturn.registerBufferedImageTexture(id, image);
|
||||
|
||||
return id;
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package org.saturnclient.ui.screens;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.config.AnimationConfig;
|
||||
import org.saturnclient.config.Config;
|
||||
import org.saturnclient.ui.SaturnScreen;
|
||||
@@ -41,17 +41,17 @@ public class ShiftMenu extends SaturnScreen {
|
||||
AnimationStagger stagger = new AnimationStagger(AnimationConfig.shiftMenu.stagger.value);
|
||||
|
||||
stagger.draw(new TextureButton(Textures.HUD_ICON, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new HudEditor());
|
||||
Providers.saturn.setScreen(new HudEditor());
|
||||
}).dimensions(btnHeight, btnHeight).position(0, 0)
|
||||
.animation(new Fade(AnimationConfig.shiftMenu)));
|
||||
|
||||
stagger.draw(new Button("Settings", () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new ModMenu());
|
||||
Providers.saturn.setScreen(new ModMenu());
|
||||
}).dimensions(btnWidth, btnHeight).position(btnHeight + spacing, 0)
|
||||
.animation(new Fade(AnimationConfig.shiftMenu)));
|
||||
|
||||
stagger.draw(new TextureButton(Textures.COSMETICS, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new CloakMenu());
|
||||
Providers.saturn.setScreen(new CloakMenu());
|
||||
}).dimensions(btnHeight, btnHeight).position(btnWidth + btnHeight + (spacing * 2), 0)
|
||||
.animation(new Fade(AnimationConfig.shiftMenu)));
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.saturnclient.ui.screens;
|
||||
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.MinecraftProvider.MinecraftScreen;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.common.provider.SaturnProvider.MinecraftScreen;
|
||||
import org.saturnclient.config.AnimationConfig;
|
||||
import org.saturnclient.config.Config;
|
||||
import org.saturnclient.ui.SaturnScreen;
|
||||
@@ -33,22 +33,22 @@ public class TitleMenu extends SaturnScreen {
|
||||
AnimationStagger mainButtonStagger = new AnimationStagger(AnimationConfig.mainMenu);
|
||||
|
||||
mainButtonStagger.draw(new Button("SINGLEPLAYER", () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(MinecraftScreen.SelectWorld);
|
||||
Providers.saturn.setScreen(MinecraftScreen.SelectWorld);
|
||||
}).scale(0.69f).dimensions(420, 52).position(0, 0)
|
||||
.animation(new SlideFade(AnimationConfig.mainMenu, -10)));
|
||||
|
||||
mainButtonStagger.draw(new Button("MULTIPLAYER", () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(MinecraftScreen.Multiplayer);
|
||||
Providers.saturn.setScreen(MinecraftScreen.Multiplayer);
|
||||
}).scale(0.69f).dimensions(420, 52).position(0, 40)
|
||||
.animation(new SlideFade(AnimationConfig.mainMenu, -10)));
|
||||
|
||||
mainButtonStagger.draw(new Button("OPTIONS", () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(MinecraftScreen.Options);
|
||||
Providers.saturn.setScreen(MinecraftScreen.Options);
|
||||
}).scale(0.69f).dimensions(206, 52).position(0, 80)
|
||||
.animation(new SlideFade(AnimationConfig.mainMenu, -10)));
|
||||
|
||||
mainButtonStagger.draw(new Button("QUIT", () -> {
|
||||
MinecraftProvider.PROVIDER.stop();
|
||||
Providers.saturn.stop();
|
||||
}).scale(0.69f).dimensions(206, 52).position(146, 80)
|
||||
.animation(new SlideFade(AnimationConfig.mainMenu, -10)));
|
||||
|
||||
@@ -59,16 +59,16 @@ public class TitleMenu extends SaturnScreen {
|
||||
AnimationStagger saturnStagger = new AnimationStagger(AnimationConfig.mainMenu.stagger.value);
|
||||
|
||||
saturnStagger.draw(new TextureButton(Textures.HUD_ICON, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new HudEditor());
|
||||
Providers.saturn.setScreen(new HudEditor());
|
||||
}).dimensions(s, s).position(0, 0).animation(new SlideFade(AnimationConfig.mainMenu, s + 8)));
|
||||
|
||||
saturnStagger.draw(new TextureButton(Textures.SETTINGS, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new ModMenu());
|
||||
Providers.saturn.setScreen(new ModMenu());
|
||||
}).dimensions(s, s).position(s + 2, 0)
|
||||
.animation(new SlideFade(AnimationConfig.mainMenu, s + 8)));
|
||||
|
||||
saturnStagger.draw(new TextureButton(Textures.CLOAK, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new CloakMenu());
|
||||
Providers.saturn.setScreen(new CloakMenu());
|
||||
}).dimensions(s, s).position((s + 2) * 2, 0)
|
||||
.animation(new SlideFade(AnimationConfig.mainMenu, s + 8)));
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.saturnclient.ui.screens.cosmetics;
|
||||
|
||||
import org.saturnclient.client.player.SaturnPlayer;
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.config.AnimationConfig;
|
||||
import org.saturnclient.ui.SaturnScreen;
|
||||
import org.saturnclient.ui.anim.Fade;
|
||||
@@ -74,7 +74,7 @@ public class CloakMenu extends SaturnScreen {
|
||||
new TabMenuComponent(Textures.CLOAK, () -> {
|
||||
}),
|
||||
new TabMenuComponent(Textures.HAT, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new HatMenu());
|
||||
Providers.saturn.getClient().setScreen(new HatMenu());
|
||||
}))
|
||||
.centerOffset(width, height, 0, -195));
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package org.saturnclient.ui.screens.cosmetics;
|
||||
|
||||
import org.saturnclient.client.player.SaturnPlayer;
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.config.AnimationConfig;
|
||||
import org.saturnclient.cosmetics.Hats;
|
||||
import org.saturnclient.ui.SaturnScreen;
|
||||
@@ -73,7 +73,7 @@ public class HatMenu extends SaturnScreen {
|
||||
|
||||
draw(new TabMenu(1,
|
||||
new TabMenuComponent(Textures.CLOAK, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new CloakMenu());
|
||||
Providers.saturn.getClient().setScreen(new CloakMenu());
|
||||
}),
|
||||
new TabMenuComponent(Textures.HAT, () -> {
|
||||
}))
|
||||
|
||||
@@ -3,7 +3,7 @@ package org.saturnclient.ui.screens.store;
|
||||
// import org.saturnclient.cosmetics.cloak.Cloaks;
|
||||
import org.saturnclient.client.ServiceClient;
|
||||
import org.saturnclient.client.player.SaturnPlayer;
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.config.AnimationConfig;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.ui.SaturnScreen;
|
||||
@@ -104,7 +104,7 @@ public class CloakStore extends SaturnScreen {
|
||||
new TabMenuComponent(Textures.CLOAK, () -> {
|
||||
}),
|
||||
new TabMenuComponent(Textures.HAT, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new HatStore());
|
||||
Providers.saturn.setScreen(new HatStore());
|
||||
}))
|
||||
.centerOffset(width, height, 0, -195));
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ package org.saturnclient.ui.screens.store;
|
||||
|
||||
import org.saturnclient.client.ServiceClient;
|
||||
import org.saturnclient.client.player.SaturnPlayer;
|
||||
import org.saturnclient.common.MinecraftProvider;
|
||||
import org.saturnclient.common.provider.Providers;
|
||||
import org.saturnclient.config.AnimationConfig;
|
||||
import org.saturnclient.config.Theme;
|
||||
import org.saturnclient.cosmetics.Hats;
|
||||
@@ -103,7 +103,7 @@ public class HatStore extends SaturnScreen {
|
||||
|
||||
draw(new TabMenu(1,
|
||||
new TabMenuComponent(Textures.CLOAK, () -> {
|
||||
MinecraftProvider.PROVIDER.setScreen(new CloakStore());
|
||||
Providers.saturn.setScreen(new CloakStore());
|
||||
}),
|
||||
new TabMenuComponent(Textures.HAT, () -> {
|
||||
}))
|
||||
|
||||
Reference in New Issue
Block a user