From f39b56fbe78f781c1c33e7c9bfa8081e529bd473 Mon Sep 17 00:00:00 2001 From: vicisacat Date: Wed, 3 Apr 2024 23:00:36 +0200 Subject: warp command auto-complete --- .../mixin/CommandTreeS2CPacketMixin.java | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java (limited to 'src/main/java/de/hysky/skyblocker/mixin') diff --git a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java new file mode 100644 index 00000000..2041fa88 --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java @@ -0,0 +1,24 @@ +package de.hysky.skyblocker.mixin; + +import com.llamalad7.mixinextras.injector.ModifyExpressionValue; +import com.mojang.brigadier.tree.CommandNode; +import com.mojang.brigadier.tree.LiteralCommandNode; +import de.hysky.skyblocker.skyblock.WarpAutocomplete; +import de.hysky.skyblocker.utils.Utils; +import net.minecraft.command.CommandSource; +import net.minecraft.network.packet.s2c.play.CommandTreeS2CPacket; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(targets = "net.minecraft.network.packet.s2c.play.CommandTreeS2CPacket$CommandTree") +public class CommandTreeS2CPacketMixin { + + @ModifyExpressionValue(method = "getNode", at = @At(ordinal = 1, value = "INVOKE", target = "Lnet/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$CommandTree;getNode(I)Lcom/mojang/brigadier/tree/CommandNode;")) + public CommandNode thing(CommandNode original) { + if (original instanceof LiteralCommandNode literalCommandNode && literalCommandNode.getLiteral().equals("warp") && (Utils.isOnHypixel())) { + System.out.println("INJECTED"); + return WarpAutocomplete.COMMAND_THING; + } + return original; + } +} -- cgit From bbd90d0e8b6fcca662aa452447309171eb86e55e Mon Sep 17 00:00:00 2001 From: vicisacat Date: Wed, 3 Apr 2024 23:01:55 +0200 Subject: reformat and imports --- src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java | 1 - 1 file changed, 1 deletion(-) (limited to 'src/main/java/de/hysky/skyblocker/mixin') diff --git a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java index 2041fa88..a64f627d 100644 --- a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java @@ -6,7 +6,6 @@ import com.mojang.brigadier.tree.LiteralCommandNode; import de.hysky.skyblocker.skyblock.WarpAutocomplete; import de.hysky.skyblocker.utils.Utils; import net.minecraft.command.CommandSource; -import net.minecraft.network.packet.s2c.play.CommandTreeS2CPacket; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; -- cgit From e94ab06c0334a882ddb4e061bfb01d2e40bb0340 Mon Sep 17 00:00:00 2001 From: vicisacat Date: Wed, 3 Apr 2024 23:47:49 +0200 Subject: use api --- src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/mixin') diff --git a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java index a64f627d..e0301c9c 100644 --- a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java @@ -14,8 +14,7 @@ public class CommandTreeS2CPacketMixin { @ModifyExpressionValue(method = "getNode", at = @At(ordinal = 1, value = "INVOKE", target = "Lnet/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$CommandTree;getNode(I)Lcom/mojang/brigadier/tree/CommandNode;")) public CommandNode thing(CommandNode original) { - if (original instanceof LiteralCommandNode literalCommandNode && literalCommandNode.getLiteral().equals("warp") && (Utils.isOnHypixel())) { - System.out.println("INJECTED"); + if (WarpAutocomplete.COMMAND_THING != null && original instanceof LiteralCommandNode literalCommandNode && literalCommandNode.getLiteral().equals("warp") && (Utils.isOnHypixel())) { return WarpAutocomplete.COMMAND_THING; } return original; -- cgit From 2a97ba59a62113a997e64e3c43649f7ba65e7f8f Mon Sep 17 00:00:00 2001 From: vicisacat Date: Thu, 4 Apr 2024 00:01:27 +0200 Subject: sleep schedule ruined by aaron real --- .../java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/mixin') diff --git a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java index e0301c9c..ba8f7371 100644 --- a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java @@ -13,8 +13,8 @@ import org.spongepowered.asm.mixin.injection.At; public class CommandTreeS2CPacketMixin { @ModifyExpressionValue(method = "getNode", at = @At(ordinal = 1, value = "INVOKE", target = "Lnet/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$CommandTree;getNode(I)Lcom/mojang/brigadier/tree/CommandNode;")) - public CommandNode thing(CommandNode original) { - if (WarpAutocomplete.COMMAND_THING != null && original instanceof LiteralCommandNode literalCommandNode && literalCommandNode.getLiteral().equals("warp") && (Utils.isOnHypixel())) { + public CommandNode modifyCommandSuggestions(CommandNode original) { + if (WarpAutocomplete.COMMAND_THING != null && original instanceof LiteralCommandNode literalCommandNode && literalCommandNode.getLiteral().equals("warp") && Utils.isOnHypixel()) { return WarpAutocomplete.COMMAND_THING; } return original; -- cgit From 28155109bb079a46d3a7663cd9858f0f554daed0 Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Thu, 4 Apr 2024 15:54:59 -0400 Subject: Refactor WarpAutocomplete --- .../java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/mixin') diff --git a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java index ba8f7371..1cc1b8de 100644 --- a/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixin/CommandTreeS2CPacketMixin.java @@ -11,11 +11,10 @@ import org.spongepowered.asm.mixin.injection.At; @Mixin(targets = "net.minecraft.network.packet.s2c.play.CommandTreeS2CPacket$CommandTree") public class CommandTreeS2CPacketMixin { - - @ModifyExpressionValue(method = "getNode", at = @At(ordinal = 1, value = "INVOKE", target = "Lnet/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$CommandTree;getNode(I)Lcom/mojang/brigadier/tree/CommandNode;")) + @ModifyExpressionValue(method = "getNode", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/packet/s2c/play/CommandTreeS2CPacket$CommandTree;getNode(I)Lcom/mojang/brigadier/tree/CommandNode;", ordinal = 1)) public CommandNode modifyCommandSuggestions(CommandNode original) { - if (WarpAutocomplete.COMMAND_THING != null && original instanceof LiteralCommandNode literalCommandNode && literalCommandNode.getLiteral().equals("warp") && Utils.isOnHypixel()) { - return WarpAutocomplete.COMMAND_THING; + if (Utils.isOnHypixel() && WarpAutocomplete.commandNode != null && original instanceof LiteralCommandNode literalCommandNode && literalCommandNode.getLiteral().equals("warp")) { + return WarpAutocomplete.commandNode; } return original; } -- cgit From 37365dd77a5f706ae8b5fa60655482e407ef2193 Mon Sep 17 00:00:00 2001 From: Aaron <51387595+AzureAaron@users.noreply.github.com> Date: Fri, 5 Apr 2024 04:43:12 -0400 Subject: Custom Animated Dyes --- src/main/java/de/hysky/skyblocker/mixin/DyeableItemMixin.java | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/main/java/de/hysky/skyblocker/mixin') diff --git a/src/main/java/de/hysky/skyblocker/mixin/DyeableItemMixin.java b/src/main/java/de/hysky/skyblocker/mixin/DyeableItemMixin.java index e5697085..64f6a452 100644 --- a/src/main/java/de/hysky/skyblocker/mixin/DyeableItemMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixin/DyeableItemMixin.java @@ -2,6 +2,7 @@ package de.hysky.skyblocker.mixin; import com.llamalad7.mixinextras.injector.ModifyReturnValue; import de.hysky.skyblocker.config.SkyblockerConfigManager; +import de.hysky.skyblocker.skyblock.item.CustomArmorAnimatedDyes; import de.hysky.skyblocker.utils.ItemUtils; import de.hysky.skyblocker.utils.Utils; import net.minecraft.item.DyeableItem; @@ -16,6 +17,10 @@ public interface DyeableItemMixin { if (Utils.isOnSkyblock()) { String itemUuid = ItemUtils.getItemUuid(stack); + if (SkyblockerConfigManager.get().general.customAnimatedDyes.containsKey(itemUuid)) { + return CustomArmorAnimatedDyes.animateColorTransition(SkyblockerConfigManager.get().general.customAnimatedDyes.get(itemUuid)); + } + return SkyblockerConfigManager.get().general.customDyeColors.getOrDefault(itemUuid, originalColor); } -- cgit