package com.cricketcraft.chisel.item;
import java.util.List;
import com.cricketcraft.chisel.Chisel;
import com.cricketcraft.chisel.api.rendering.TextureType;
import com.cricketcraft.chisel.block.BlockCarvable;
import cpw.mods.fml.common.FMLLog;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import com.cricketcraft.chisel.api.ICarvable;
import com.cricketcraft.chisel.api.carving.IVariationInfo;
import com.cricketcraft.chisel.config.Configurations;
import com.cricketcraft.chisel.utils.General;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.StatCollector;
public class ItemCarvable extends ItemBlock {
public ItemCarvable(Block block) {
super(block);
setMaxDamage(0);
setHasSubtypes(true);
}
@Override
public int getMetadata(int i) {
return i;
}
@Override
public IIcon getIconFromDamage(int damage) {
return Block.getBlockFromItem(this).getIcon(2, damage);
}
@SuppressWarnings({ "unchecked", "rawtypes" })
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List lines, boolean advancedTooltips) {
if (!Configurations.blockDescriptions)
return;
Item item = General.getItem(stack);
if (item == null)
return;
Block block = Block.getBlockFromItem(this);
if (!(block instanceof ICarvable))
return;
ICarvable carvable = (ICarvable) block;
IVariationInfo var = carvable.getManager(stack.getItemDamage());
if (var == null)
return;
lines.add(var.getDescription());
}
}