diff --git a/src/main/java/org/saturnclient/common/minecraft/MinecraftProvider.java b/src/main/java/org/saturnclient/common/minecraft/MinecraftProvider.java index 928f604..8d65972 100644 --- a/src/main/java/org/saturnclient/common/minecraft/MinecraftProvider.java +++ b/src/main/java/org/saturnclient/common/minecraft/MinecraftProvider.java @@ -8,10 +8,18 @@ import java.awt.image.BufferedImage; public abstract class MinecraftProvider { public static MinecraftProvider PROVIDER; + public static enum MinecraftScreen { + SelectWorld, + Multiplayer, + Options + } + public abstract IMinecraftClient 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); @@ -21,4 +29,6 @@ public abstract class MinecraftProvider { public abstract void registerBufferedImageTexture(SaturnIdentifier i, BufferedImage bi); public abstract String getKeyName(int key); + + public abstract void stop(); } diff --git a/src/main/java/org/saturnclient/ui/screens/TitleMenu.java b/src/main/java/org/saturnclient/ui/screens/TitleMenu.java index 9c224d6..1da39b5 100644 --- a/src/main/java/org/saturnclient/ui/screens/TitleMenu.java +++ b/src/main/java/org/saturnclient/ui/screens/TitleMenu.java @@ -1,6 +1,7 @@ package org.saturnclient.ui.screens; import org.saturnclient.common.minecraft.MinecraftProvider; +import org.saturnclient.common.minecraft.MinecraftProvider.MinecraftScreen; import org.saturnclient.config.AnimationConfig; import org.saturnclient.config.Config; import org.saturnclient.ui.SaturnScreen; @@ -31,25 +32,23 @@ public class TitleMenu extends SaturnScreen { AnimationStagger mainButtonStagger = new AnimationStagger(AnimationConfig.mainMenu); - // TODO implement all of these - mainButtonStagger.draw(new Button("SINGLEPLAYER", () -> { - // MinecraftProvider.PROVIDER.setScreen(new SelectWorldScreen(new TitleMenu())); + MinecraftProvider.PROVIDER.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(new MultiplayerScreen(new TitleMenu())); + MinecraftProvider.PROVIDER.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(new OptionsScreen(new TitleMenu(), SaturnClient.client.options)); + MinecraftProvider.PROVIDER.setScreen(MinecraftScreen.Options); }).scale(0.69f).dimensions(206, 52).position(0, 80) .animation(new SlideFade(AnimationConfig.mainMenu, -10))); mainButtonStagger.draw(new Button("QUIT", () -> { - // client.scheduleStop(); + MinecraftProvider.PROVIDER.stop(); }).scale(0.69f).dimensions(206, 52).position(146, 80) .animation(new SlideFade(AnimationConfig.mainMenu, -10)));