diff options
| author | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2023-08-10 10:55:45 +0800 |
|---|---|---|
| committer | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2023-08-10 12:16:55 +0800 |
| commit | 16c6debb1cc90be5815cd188264b16ddf8b76f16 (patch) | |
| tree | 0e4e1e3e1d8723c7ef91b5225bf8027fd8195976 /src/main/java/me/xmrvizzy/skyblocker/mixin | |
| parent | a629801cc3ffa5913bc07af173e8a01673a70681 (diff) | |
| download | Skyblocker-16c6debb1cc90be5815cd188264b16ddf8b76f16.tar.gz Skyblocker-16c6debb1cc90be5815cd188264b16ddf8b76f16.tar.bz2 Skyblocker-16c6debb1cc90be5815cd188264b16ddf8b76f16.zip | |
Refactor CustomArmorDyeColors and CustomItemNames
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/mixin')
| -rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/mixin/DyeableItemMixin.java | 18 | ||||
| -rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/mixin/ItemStackMixin.java | 10 |
2 files changed, 12 insertions, 16 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/DyeableItemMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/DyeableItemMixin.java index 4d0b6bae..f04c4cdd 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/DyeableItemMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/DyeableItemMixin.java @@ -1,31 +1,27 @@ package me.xmrvizzy.skyblocker.mixin; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; - import com.llamalad7.mixinextras.injector.ModifyReturnValue; -import com.llamalad7.mixinextras.sugar.Local; - import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import me.xmrvizzy.skyblocker.utils.Utils; import net.minecraft.item.DyeableItem; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NbtCompound; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; @Mixin(DyeableItem.class) public interface DyeableItemMixin { - @ModifyReturnValue(method = "getColor", at = @At("RETURN")) - default public int skyblocker$customDyeColor(int originalColor, @Local ItemStack stack) { + private int skyblocker$customDyeColor(int originalColor, ItemStack stack) { NbtCompound nbt = stack.getNbt(); - + if (Utils.isOnSkyblock() && nbt != null && nbt.contains("ExtraAttributes")) { NbtCompound extraAttributes = nbt.getCompound("ExtraAttributes"); - String itemUuid = extraAttributes.contains("uuid") ? extraAttributes.getString("uuid") : null; - + String itemUuid = extraAttributes.contains("uuid") ? extraAttributes.getString("uuid") : null; + return SkyblockerConfig.get().general.customDyeColors.getOrDefault(itemUuid, originalColor); } - + return originalColor; } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemStackMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemStackMixin.java index 640bce9b..63dc6624 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemStackMixin.java +++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemStackMixin.java @@ -14,20 +14,20 @@ import net.minecraft.nbt.NbtCompound; import net.minecraft.text.Text; @Mixin(ItemStack.class) -public class ItemStackMixin { +public abstract class ItemStackMixin { @Shadow @Nullable private NbtCompound nbt; @ModifyReturnValue(method = "getName", at = @At("RETURN")) - public Text skyblocker$customItemNames(Text original) { + private Text skyblocker$customItemNames(Text original) { if (Utils.isOnSkyblock() && nbt != null && nbt.contains("ExtraAttributes")) { NbtCompound extraAttributes = nbt.getCompound("ExtraAttributes"); - String itemUuid = extraAttributes.contains("uuid") ? extraAttributes.getString("uuid") : null; - + String itemUuid = extraAttributes.contains("uuid") ? extraAttributes.getString("uuid") : null; + return SkyblockerConfig.get().general.customItemNames.getOrDefault(itemUuid, original); } - + return original; } } |
