52 lines
1.8 KiB
Java
52 lines
1.8 KiB
Java
package com.pahimar.ee3.util;
|
|
|
|
import com.pahimar.ee3.reference.Colors;
|
|
import com.pahimar.ee3.reference.Names;
|
|
import net.minecraft.item.ItemStack;
|
|
import net.minecraft.nbt.NBTTagCompound;
|
|
|
|
public class ColorHelper
|
|
{
|
|
public static boolean hasColor(ItemStack itemStack)
|
|
{
|
|
return itemStack.hasTagCompound() && itemStack.getTagCompound().hasKey(Names.NBT.DISPLAY) && itemStack.getTagCompound().getCompoundTag(Names.NBT.DISPLAY).hasKey(Names.NBT.COLOR);
|
|
}
|
|
|
|
public static int getColor(ItemStack itemStack)
|
|
{
|
|
NBTTagCompound nbtTagCompound = itemStack.getTagCompound();
|
|
|
|
if (nbtTagCompound == null)
|
|
{
|
|
return Integer.parseInt(Colors.PURE_WHITE, 16);
|
|
}
|
|
else
|
|
{
|
|
NBTTagCompound displayTagCompound = nbtTagCompound.getCompoundTag(Names.NBT.DISPLAY);
|
|
return displayTagCompound == null ? Integer.parseInt(Colors.PURE_WHITE, 16) : displayTagCompound.hasKey(Names.NBT.COLOR) ? displayTagCompound.getInteger(Names.NBT.COLOR) : Integer.parseInt(Colors.PURE_WHITE, 16);
|
|
}
|
|
}
|
|
|
|
public static void setColor(ItemStack itemStack, int color)
|
|
{
|
|
if (itemStack != null)
|
|
{
|
|
NBTTagCompound nbtTagCompound = itemStack.getTagCompound();
|
|
|
|
if (nbtTagCompound == null)
|
|
{
|
|
nbtTagCompound = new NBTTagCompound();
|
|
itemStack.setTagCompound(nbtTagCompound);
|
|
}
|
|
|
|
NBTTagCompound colourTagCompound = nbtTagCompound.getCompoundTag(Names.NBT.DISPLAY);
|
|
|
|
if (!nbtTagCompound.hasKey(Names.NBT.DISPLAY))
|
|
{
|
|
nbtTagCompound.setTag(Names.NBT.DISPLAY, colourTagCompound);
|
|
}
|
|
|
|
colourTagCompound.setInteger(Names.NBT.COLOR, color);
|
|
}
|
|
}
|
|
}
|