diff --git a/src/main/java/org/saturnclient/saturnclient/SaturnClient.java b/src/main/java/org/saturnclient/saturnclient/SaturnClient.java index 1a6c933..482572e 100644 --- a/src/main/java/org/saturnclient/saturnclient/SaturnClient.java +++ b/src/main/java/org/saturnclient/saturnclient/SaturnClient.java @@ -7,6 +7,7 @@ import net.minecraft.client.MinecraftClient; import org.saturnclient.modules.ModManager; import org.saturnclient.saturnclient.auth.Auth; import org.saturnclient.saturnclient.config.ConfigManager; +import org.saturnclient.saturnclient.cosmetics.Emotes; import org.saturnclient.saturnclient.cosmetics.Hats; import org.saturnclient.saturnclient.cosmetics.cloaks.Cloaks; import org.saturnclient.saturnclient.event.KeyInputHandler; @@ -38,6 +39,7 @@ public class SaturnClient implements ModInitializer { }); KeyInputHandler.register(); + Emotes.initialize(); if (Auth.authenticate()) { Cloaks.initialize(); Hats.initialize(); diff --git a/src/main/java/org/saturnclient/saturnclient/cosmetics/Emotes.java b/src/main/java/org/saturnclient/saturnclient/cosmetics/Emotes.java index 12c72b5..dbf72f2 100644 --- a/src/main/java/org/saturnclient/saturnclient/cosmetics/Emotes.java +++ b/src/main/java/org/saturnclient/saturnclient/cosmetics/Emotes.java @@ -5,4 +5,8 @@ import java.util.List; public class Emotes { public static List availableEmotes = new ArrayList<>(); + + public static void initialize() { + availableEmotes.add("backflip"); + } } diff --git a/src/main/java/org/saturnclient/ui2/Utils.java b/src/main/java/org/saturnclient/ui2/Utils.java index e61f4f6..d342a60 100644 --- a/src/main/java/org/saturnclient/ui2/Utils.java +++ b/src/main/java/org/saturnclient/ui2/Utils.java @@ -3,6 +3,7 @@ package org.saturnclient.ui2; import java.util.List; import org.lwjgl.glfw.GLFW; +import org.saturnclient.saturnclient.SaturnClient; public class Utils { public static boolean isHovering(int mouseX, int mouseY, int elementWidth, int elementHeight, float elementScale) { @@ -48,6 +49,7 @@ public class Utils { } public static T getOrNull(List list, int index) { + SaturnClient.LOGGER.info("Accessing index {} in list of size {}", index, list.size()); return (index >= 0 && index < list.size()) ? list.get(index) : null; } } diff --git a/src/main/java/org/saturnclient/ui2/resources/Textures.java b/src/main/java/org/saturnclient/ui2/resources/Textures.java index 65ad17a..2bb3b48 100644 --- a/src/main/java/org/saturnclient/ui2/resources/Textures.java +++ b/src/main/java/org/saturnclient/ui2/resources/Textures.java @@ -15,7 +15,8 @@ public class Textures { public static final Identifier RESET = Identifier.of("saturnclient", "textures/gui/components/reset.png"); public static final Identifier TOGGLE_INDICATOR = Identifier.of("saturnclient", "textures/gui/components/toggle_indicator.png"); - public static final Identifier TOGGLE_BG = Identifier.of("saturnclient", "textures/gui/components/toggle_bg.png"); + public static final Identifier LEFT = Identifier.of("saturnclient", "textures/gui/components/left.png"); + public static final Identifier RIGHT = Identifier.of("saturnclient", "textures/gui/components/right.png"); public static final Identifier LOGO = Identifier.of("saturnclient", "textures/logo/logo.png"); public static final Identifier REALISTIC_LOGO = Identifier.of("saturnclient", "textures/logo/realistic.png"); diff --git a/src/main/java/org/saturnclient/ui2/screens/EmoteWheel.java b/src/main/java/org/saturnclient/ui2/screens/EmoteWheel.java index 4b95d58..e21b752 100644 --- a/src/main/java/org/saturnclient/ui2/screens/EmoteWheel.java +++ b/src/main/java/org/saturnclient/ui2/screens/EmoteWheel.java @@ -28,24 +28,24 @@ public class EmoteWheel extends SaturnScreen { int row = 0; int col = 0; - draw(new ImageTexture(Textures.LOGO_TEXT).dimensions(98, 10).centerOffset(width, height, 0, -150).animation(new Fade(700))); - draw(new ImageTexture(SaturnClientConfig.getLogo()).dimensions(98, 98).centerOffset(width, height, 0, -194).animation(new SlideY(700, -20))); + draw(new ImageTexture(Textures.LOGO_TEXT).dimensions(98, 10).centerOffset(width, height, 0, -105).animation(new Fade(700))); + draw(new ImageTexture(SaturnClientConfig.getLogo()).dimensions(98, 98).centerOffset(width, height, 0, -149).animation(new SlideY(700, -20))); - draw(new TextureButton(Textures.MODS_TAB, () -> { + draw(new TextureButton(Textures.LEFT, () -> { if (page > 1) { page--; elements.clear(); ui(); } - }).dimensions(30, 30).centerOffset(width, height, -25, 0).animation(new Fade(700))); + }).dimensions(30, 30).centerOffset(width, height, -20, 45).animation(new Fade(700))); - draw(new TextureButton(Textures.MODS_TAB, () -> { - if (page > 1) { + draw(new TextureButton(Textures.RIGHT, () -> { + if ((8 * page) < Emotes.availableEmotes.size()) { page++; elements.clear(); ui(); } - }).dimensions(30, 30).centerOffset(width, height, 10, 0).animation(new Fade(700))); + }).dimensions(30, 30).centerOffset(width, height, 20, 45).animation(new Fade(700))); while (row < 3) { int idx = (row * 3 + col) * page; @@ -63,7 +63,7 @@ public class EmoteWheel extends SaturnScreen { AnimationStack animationStack = PlayerAnimationAccess.getPlayerAnimLayer(SaturnClient.client.player); animationStack.addAnimLayer(1000, PlayerAnimationRegistry.getAnimation(Identifier.of("saturnclient", emote)).playAnimation()); close(); - }).dimensions(70, 70).centerOffset(width, height, -90 + (col * 80), -80 + (row * 80)).animation(new Fade(700))); + }).dimensions(70, 70).centerOffset(width, height, -80 + (col * 80), -35 + (row * 80)).animation(new Fade(700))); if (col < 2) { col++; @@ -73,4 +73,9 @@ public class EmoteWheel extends SaturnScreen { } } } + + @Override + public boolean shouldPause() { + return false; + } } diff --git a/src/main/resources/assets/saturnclient/textures/gui/components/left.png b/src/main/resources/assets/saturnclient/textures/gui/components/left.png new file mode 100644 index 0000000..073a748 Binary files /dev/null and b/src/main/resources/assets/saturnclient/textures/gui/components/left.png differ diff --git a/src/main/resources/assets/saturnclient/textures/gui/components/right.png b/src/main/resources/assets/saturnclient/textures/gui/components/right.png new file mode 100644 index 0000000..fa6ee7c Binary files /dev/null and b/src/main/resources/assets/saturnclient/textures/gui/components/right.png differ diff --git a/src/main/resources/assets/saturnclient/textures/gui/emote/none.png b/src/main/resources/assets/saturnclient/textures/gui/emote/none.png new file mode 100644 index 0000000..515541c Binary files /dev/null and b/src/main/resources/assets/saturnclient/textures/gui/emote/none.png differ