package com.jaquadro.minecraft.gardenstuff.block;
import com.jaquadro.minecraft.gardenstuff.GardenStuff;
import com.jaquadro.minecraft.gardenstuff.core.ClientProxy;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import java.util.List;
public class BlockFence extends BlockConnected
{
public static final String[] subNames = new String[] { "0", "1", "2", "3" };
public static final int[] postInterval = new int[] { 8, 16, 8, 8, };
@SideOnly(Side.CLIENT)
private IIcon[] icons;
@SideOnly(Side.CLIENT)
private IIcon[] iconsTB;
public BlockFence (String blockName) {
super(blockName, Material.iron);
setBlockTextureName(GardenStuff.MOD_ID + ":wrought_iron_fence");
}
@Override
public int getRenderType () {
return ClientProxy.fenceRenderID;
}
@Override
public void getSubBlocks (Item item, CreativeTabs creativeTab, List list) {
for (int i = 0; i < subNames.length; i++)
list.add(new ItemStack(item, 1, i));
}
@Override
protected float getCollisionHeight () {
return 1.5f;
}
@SideOnly(Side.CLIENT)
@Override
public IIcon getIcon (int side, int meta) {
return iconsTB[meta % icons.length];
}
@SideOnly(Side.CLIENT)
public IIcon getIcon (int meta) {
return icons[meta % icons.length];
}
@SideOnly(Side.CLIENT)
public IIcon getIconTB (int meta) {
return iconsTB[meta % icons.length];
}
public int getPostInterval (int meta) {
return postInterval[meta % icons.length];
}
@SideOnly(Side.CLIENT)
@Override
public void registerBlockIcons (IIconRegister register) {
icons = new IIcon[subNames.length];
iconsTB = new IIcon[subNames.length];
for (int i = 0; i < icons.length; i++) {
icons[i] = register.registerIcon(getTextureName() + "_" + subNames[i]);
iconsTB[i] = register.registerIcon(getTextureName() + "_" + subNames[i] + "_tb");
}
}
}