package buildcraftAdditions.blocks;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemBlock;
import net.minecraft.world.World;
import cpw.mods.fml.common.registry.GameRegistry;
import buildcraftAdditions.BuildcraftAdditions;
import buildcraftAdditions.utils.Utils;
/**
* Copyright (c) 2014-2015, AEnterprise
* http://buildcraftadditions.wordpress.com/
* Buildcraft Additions is distributed under the terms of GNU GPL v3.0
* Please check the contents of the license located in
* http://buildcraftadditions.wordpress.com/wiki/licensing-stuff/
*/
public abstract class BlockBase extends BlockContainer {
protected final String name;
public BlockBase(String name) {
this(Material.iron, name, name, name, BuildcraftAdditions.bcadditions, null);
}
public BlockBase(Material material, String name) {
this(material, name, name, name, BuildcraftAdditions.bcadditions, null);
}
public BlockBase(String name, String texture, String gameRegistryName) {
this(Material.iron, name, texture, gameRegistryName, BuildcraftAdditions.bcadditions, null);
}
public BlockBase(Material material, String name, String texture, String gameRegistryName, CreativeTabs tab, Class<? extends ItemBlock> clas) {
super(material);
this.name = name;
setBlockName(name);
setBlockTextureName("bcadditions:" + texture);
setHardness(5F);
setResistance(10F);
setCreativeTab(tab);
if (clas == null) {
GameRegistry.registerBlock(this, gameRegistryName);
} else {
GameRegistry.registerBlock(this, clas, gameRegistryName);
}
}
@Override
public void breakBlock(World world, int x, int y, int z, Block block, int meta) {
Utils.dropInventory(world, x, y, z);
super.breakBlock(world, x, y, z, block, meta);
}
}