package crazypants.enderio.machine.painter;
import java.util.List;
import net.minecraft.block.Block;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import crazypants.enderio.EnderIO;
public class BlockItemPaintedGlowstone extends ItemBlock {
public BlockItemPaintedGlowstone(Block p_i45328_1_) {
super(p_i45328_1_);
setHasSubtypes(true);
}
public BlockItemPaintedGlowstone() {
super(EnderIO.blockPaintedGlowstone);
setHasSubtypes(true);
}
@Override
public int getMetadata(int par1) {
return par1;
}
@Override
public boolean placeBlockAt(ItemStack stack, EntityPlayer player, World world, int x, int y, int z, int side, float hitX, float hitY, float hitZ, int metadata) {
if(!super.placeBlockAt(stack, player, world, x, y, z, side, hitX, hitY, hitZ, metadata)) {
return false;
}
Block b = PainterUtil.getSourceBlock(stack);
TileEntity te = world.getTileEntity(x, y, z);
if(te instanceof TileEntityPaintedBlock) {
TileEntityPaintedBlock tef = (TileEntityPaintedBlock) te;
int meta = PainterUtil.getSourceBlockMetadata(stack);
meta = PainterUtil.adjustFacadeMetadata(b, meta, side);
tef.setSourceBlock(b);
tef.setSourceBlockMetadata(meta);
world.markBlockForUpdate(x, y, z);
}
return true;
}
@Override
@SideOnly(Side.CLIENT)
public void addInformation(ItemStack item, EntityPlayer par2EntityPlayer, List list, boolean par4) {
super.addInformation(item, par2EntityPlayer, list, par4);
list.add(PainterUtil.getTooltTipText(item));
}
}