public class BlockShrub extends Block implements IShearable {
@SideOnly(Side.CLIENT)
private Icon[] iconArray;
public static final String[] shrubTypes=new String[] {
"1",
"2"
};
public BlockShrub(int id) {
super(id, Material.leaves);
this.setStepSound(soundGrassFootstep);
//this.setCreativeTab(core.tabPlantPack);
this.setHardness(0.01F);
this.setResistance(0.0F);
this.setUnlocalizedName("shrub");
}
public boolean isOpaqueCube() {
return false;
}
public boolean renderAsNormalBlock() {
return false;
}
public AxisAlignedBB getCollisionBoundingBoxFromPool(World wrd, int x, int y, int z) {
return null;
}
@SideOnly(Side.CLIENT)
public Icon getIcon(int par1, int par2) {
return this.iconArray[par2 % this.iconArray.length];
}
public int quantityDropped(Random rdm) {
return 0;
}
public int idDropped(int par1,Random rdm,int par3) {
return par1;
}
public int damageDropped(int par1) {
return par1;
}
@SideOnly(Side.CLIENT)
public void getSubBlocks(int id, CreativeTabs table, List list) {
for(int j=0; j < shrubTypes.length; ++j) {
list.add(new ItemStack(id, 1, j));
}
}
@Override
public ArrayList<ItemStack> getBlockDropped(World wrd, int x, int y, int z, int metadata, int fortune) {
ArrayList<ItemStack> ret=super.getBlockDropped(wrd,x,y,z,metadata,fortune);
ret.add(new ItemStack(core.blockShrub.blockID, 1, metadata));
return ret;
}
@Override
public boolean isShearable(ItemStack is, World wrd, int x, int y, int z) {
return true;
}
@Override
public ArrayList<ItemStack> onSheared(ItemStack is, World wrd, int x, int y, int z, int fortune) {
ArrayList<ItemStack> ret=new ArrayList<ItemStack>();
ret.add(new ItemStack(this, 1, wrd.getBlockMetadata(x, y, z) & 15));
return ret;
}
@SideOnly(Side.CLIENT)
public void registerIcons(IconRegister ir) {
this.iconArray=new Icon[shrubTypes.length];
for(int i=0; i < this.iconArray.length; ++i){
this.iconArray[i]=ir.registerIcon("mod_id:shrub"+shrubTypes[i]);
}
}
}