package net.minecraft.item;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
public class ItemColored extends ItemBlock
{
private final Block blockRef;
private String[] blockNames;
public ItemColored(int par1, boolean par2)
{
super(par1);
this.blockRef = Block.blocksList[this.getBlockID()];
if (par2)
{
this.setMaxDamage(0);
this.setHasSubtypes(true);
}
}
@SideOnly(Side.CLIENT)
public int getColorFromItemStack(ItemStack par1ItemStack, int par2)
{
return this.blockRef.getRenderColor(par1ItemStack.getItemDamage());
}
/**
* Returns the metadata of the block which this Item (ItemBlock) can place
*/
public int getMetadata(int par1)
{
return par1;
}
/**
* Sets the array of strings to be used for name lookups from item damage to metadata
*/
public ItemColored setBlockNames(String[] par1ArrayOfStr)
{
this.blockNames = par1ArrayOfStr;
return this;
}
@SideOnly(Side.CLIENT)
/**
* Gets an icon index based on an item's damage value
*/
public int getIconFromDamage(int par1)
{
return this.blockRef.getBlockTextureFromSideAndMetadata(0, par1);
}
public String getItemNameIS(ItemStack par1ItemStack)
{
if (this.blockNames == null)
{
return super.getItemNameIS(par1ItemStack);
}
else
{
int var2 = par1ItemStack.getItemDamage();
return var2 >= 0 && var2 < this.blockNames.length ? super.getItemNameIS(par1ItemStack) + "." + this.blockNames[var2] : super.getItemNameIS(par1ItemStack);
}
}
}