diff --git a/src/main/java/github/kasuminova/stellarcore/common/itemstack/SharedEmptyTag.java b/src/main/java/github/kasuminova/stellarcore/common/itemstack/SharedEmptyTag.java new file mode 100644 index 0000000..5a71540 --- /dev/null +++ b/src/main/java/github/kasuminova/stellarcore/common/itemstack/SharedEmptyTag.java @@ -0,0 +1,62 @@ +package github.kasuminova.stellarcore.common.itemstack; + +import net.minecraft.nbt.NBTBase; +import net.minecraft.nbt.NBTTagCompound; + +import java.util.UUID; + +public class SharedEmptyTag { + + public static final NBTTagCompound EMPTY_TAG = new NBTTagCompound() { + + @Override + public void setTag(final String key, final NBTBase value) { + } + + @Override + public void setByte(final String key, final byte value) { + } + + @Override + public void setShort(final String key, final short value) { + } + + @Override + public void setInteger(final String key, final int value) { + } + + @Override + public void setLong(final String key, final long value) { + } + + @Override + public void setUniqueId(final String key, final UUID value) { + } + + @Override + public void setFloat(final String key, final float value) { + } + + @Override + public void setDouble(final String key, final double value) { + } + + @Override + public void setString(final String key, final String value) { + } + + @Override + public void setByteArray(final String key, final byte[] value) { + } + + @Override + public void setIntArray(final String key, final int[] value) { + } + + @Override + public void setBoolean(final String key, final boolean value) { + } + + }; + +} diff --git a/src/main/java/github/kasuminova/stellarcore/mixin/minecraft/itemstack/MixinItemStack.java b/src/main/java/github/kasuminova/stellarcore/mixin/minecraft/itemstack/MixinItemStack.java index 61b6041..b6951fd 100644 --- a/src/main/java/github/kasuminova/stellarcore/mixin/minecraft/itemstack/MixinItemStack.java +++ b/src/main/java/github/kasuminova/stellarcore/mixin/minecraft/itemstack/MixinItemStack.java @@ -2,6 +2,7 @@ import github.kasuminova.stellarcore.common.itemstack.ItemStackCapInitTask; import github.kasuminova.stellarcore.common.itemstack.ItemStackCapInitializer; +import github.kasuminova.stellarcore.common.itemstack.SharedEmptyTag; import github.kasuminova.stellarcore.mixin.util.StellarItemStack; import net.minecraft.init.Items; import net.minecraft.item.Item; @@ -23,9 +24,6 @@ @Mixin(ItemStack.class) public abstract class MixinItemStack implements StellarItemStack { - @Unique - private static final NBTTagCompound stellar_core$EMPTY_TAG = new NBTTagCompound(); - @Nullable @Shadow(remap = false) protected abstract Item getItemRaw(); @@ -216,7 +214,7 @@ private void injectAreCapsCompatible(final ItemStack other, final CallbackInfoRe @Override public NBTTagCompound stellar_core$getCapNBT() { stellar_core$ensureCapNBTInitialized(); - return this.capNBT == null ? stellar_core$EMPTY_TAG : this.capNBT; + return this.capNBT == null ? SharedEmptyTag.EMPTY_TAG : this.capNBT; } }