78 lines
3.5 KiB
Java
78 lines
3.5 KiB
Java
package org.saturnclient.ui.screens;
|
|
|
|
import org.saturnclient.common.provider.Providers;
|
|
import org.saturnclient.common.ref.game.MinecraftClientRef.MinecraftScreen;
|
|
import org.saturnclient.config.AnimationConfig;
|
|
import org.saturnclient.config.Config;
|
|
import org.saturnclient.ui.SaturnScreen;
|
|
import org.saturnclient.ui.anim.Fade;
|
|
import org.saturnclient.ui.anim.SlideFade;
|
|
import org.saturnclient.ui.anim.SlideY;
|
|
import org.saturnclient.ui.elements.AnimationStagger;
|
|
import org.saturnclient.ui.elements.Button;
|
|
import org.saturnclient.ui.elements.ImageTexture;
|
|
import org.saturnclient.ui.elements.TextureButton;
|
|
import org.saturnclient.ui.resources.Fonts;
|
|
import org.saturnclient.ui.resources.Textures;
|
|
import org.saturnclient.ui.screens.cosmetics.CloakMenu;
|
|
|
|
public class TitleMenu extends SaturnScreen {
|
|
public TitleMenu() {
|
|
super("Title Menu");
|
|
}
|
|
|
|
@Override
|
|
public void ui() {
|
|
backgroundBlur = 0;
|
|
|
|
draw(new ImageTexture(Textures.LOGO_TEXT).dimensions(98, 10).center(width, height, 0, -40)
|
|
.animation(new Fade(AnimationConfig.logo.duration.value)));
|
|
draw(new ImageTexture(Config.getLogo()).dimensions(98, 98).center(width, height, 0, -84)
|
|
.animation(new SlideY(AnimationConfig.logo, -20)));
|
|
|
|
AnimationStagger mainButtonStagger = new AnimationStagger(AnimationConfig.mainMenu);
|
|
|
|
mainButtonStagger.draw(new Button("SINGLEPLAYER", () -> {
|
|
Providers.saturn.getClient().setScreen(MinecraftScreen.SelectWorld);
|
|
}).scale(0.69f).dimensions(420, 52).position(0, 0)
|
|
.animation(new SlideFade(AnimationConfig.mainMenu, -10)));
|
|
|
|
mainButtonStagger.draw(new Button("MULTIPLAYER", () -> {
|
|
Providers.saturn.getClient().setScreen(MinecraftScreen.Multiplayer);
|
|
}).scale(0.69f).dimensions(420, 52).position(0, 40)
|
|
.animation(new SlideFade(AnimationConfig.mainMenu, -10)));
|
|
|
|
mainButtonStagger.draw(new Button("OPTIONS", () -> {
|
|
Providers.saturn.getClient().setScreen(MinecraftScreen.Options);
|
|
}).scale(0.69f).dimensions(206, 52).position(0, 80)
|
|
.animation(new SlideFade(AnimationConfig.mainMenu, -10)));
|
|
|
|
mainButtonStagger.draw(new Button("QUIT", () -> {
|
|
Providers.saturn.getClient().scheduleStop();
|
|
}).scale(0.69f).dimensions(206, 52).position(146, 80)
|
|
.animation(new SlideFade(AnimationConfig.mainMenu, -10)));
|
|
|
|
draw(mainButtonStagger.dimensions(289, 143).center(width, height, 0, 50));
|
|
|
|
int s = Fonts.getHeight() + 20;
|
|
|
|
AnimationStagger saturnStagger = new AnimationStagger(AnimationConfig.mainMenu.stagger.value);
|
|
|
|
saturnStagger.draw(new TextureButton(Textures.HUD_ICON, () -> {
|
|
Providers.saturn.getClient().setScreen(new HudEditor());
|
|
}).dimensions(s, s).position(0, 0).animation(new SlideFade(AnimationConfig.mainMenu, s + 8)));
|
|
|
|
saturnStagger.draw(new TextureButton(Textures.SETTINGS, () -> {
|
|
Providers.saturn.getClient().setScreen(new ModMenu());
|
|
}).dimensions(s, s).position(s + 2, 0)
|
|
.animation(new SlideFade(AnimationConfig.mainMenu, s + 8)));
|
|
|
|
saturnStagger.draw(new TextureButton(Textures.CLOAK, () -> {
|
|
Providers.saturn.getClient().setScreen(new CloakMenu());
|
|
}).dimensions(s, s).position((s + 2) * 2, 0)
|
|
.animation(new SlideFade(AnimationConfig.mainMenu, s + 8)));
|
|
|
|
draw(saturnStagger.dimensions(((s + 2) * 2) + s, s).centerHorizontal(width, height, 0, 8));
|
|
}
|
|
}
|