diff options
| author | Aaron <51387595+AzureAaron@users.noreply.github.com> | 2025-01-02 17:23:57 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-01-03 06:23:57 +0800 |
| commit | 18ec59c38af52b2fe3d5e315db915d6e50566d24 (patch) | |
| tree | 606d6c6c3718de6d394564f841934a6974958b35 /src/main/java | |
| parent | a09c6ee7931a0af64f4a5be08830bbccdce4c38c (diff) | |
| download | Skyblocker-18ec59c38af52b2fe3d5e315db915d6e50566d24.tar.gz Skyblocker-18ec59c38af52b2fe3d5e315db915d6e50566d24.tar.bz2 Skyblocker-18ec59c38af52b2fe3d5e315db915d6e50566d24.zip | |
Cancel Component Update Animation (#1116)
Diffstat (limited to 'src/main/java')
3 files changed, 31 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java index 3495e1f1..38dff23f 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java @@ -90,6 +90,14 @@ public class UIAndVisualsCategory { newValue -> config.uiAndVisuals.showEquipmentInInventory = newValue) .controller(ConfigUtils::createBooleanController) .build()) + .option(Option.<Boolean>createBuilder() + .name(Text.translatable("skyblocker.config.uiAndVisuals.cancelComponentUpdateAnimation")) + .description(OptionDescription.of(Text.translatable("skyblocker.config.uiAndVisuals.cancelComponentUpdateAnimation.@Tooltip"))) + .binding(defaults.uiAndVisuals.cancelComponentUpdateAnimation, + () -> config.uiAndVisuals.cancelComponentUpdateAnimation, + newValue -> config.uiAndVisuals.cancelComponentUpdateAnimation = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) //Chest Value FIXME change dropdown to color controller .group(OptionGroup.createBuilder() diff --git a/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java index deb981a1..c2f94a36 100644 --- a/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java @@ -36,6 +36,9 @@ public class UIAndVisualsConfig { public boolean showEquipmentInInventory = true; @SerialEntry + public boolean cancelComponentUpdateAnimation = true; + + @SerialEntry public ChestValue chestValue = new ChestValue(); @SerialEntry diff --git a/src/main/java/de/hysky/skyblocker/mixins/HeldItemRendererMixin.java b/src/main/java/de/hysky/skyblocker/mixins/HeldItemRendererMixin.java new file mode 100644 index 00000000..8605fec2 --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/mixins/HeldItemRendererMixin.java @@ -0,0 +1,20 @@ +package de.hysky.skyblocker.mixins; + +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +import com.llamalad7.mixinextras.injector.ModifyReturnValue; + +import de.hysky.skyblocker.config.SkyblockerConfigManager; +import de.hysky.skyblocker.utils.Utils; +import net.minecraft.client.render.item.HeldItemRenderer; +import net.minecraft.item.ItemStack; + +@Mixin(HeldItemRenderer.class) +public class HeldItemRendererMixin { + + @ModifyReturnValue(method = "shouldSkipHandAnimationOnSwap", at = @At("RETURN")) + private boolean skyblocker$cancelComponentUpdateAnimation(boolean original, ItemStack from, ItemStack to) { + return Utils.isOnSkyblock() && from.getItem() == to.getItem() ? original || SkyblockerConfigManager.get().uiAndVisuals.cancelComponentUpdateAnimation : original; + } +} |
