/*
* Copyright (c) CovertJaguar, 2014 http://railcraft.info
*
* This code is the property of CovertJaguar
* and may only be used with explicit written
* permission unless otherwise specified on the
* license page at http://railcraft.info/wiki/info:license.
*/
package mods.railcraft.common.blocks.aesthetics.brick;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import mods.railcraft.client.util.textures.TextureAtlasSheet;
import mods.railcraft.common.plugins.forge.CreativePlugin;
import net.minecraft.block.Block;
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.util.IIcon;
import net.minecraft.world.IBlockAccess;
import java.util.List;
public class BlockBrick extends Block {
private final EnumBrick theme;
private IIcon[] icons;
public BlockBrick(EnumBrick theme) {
super(Material.rock);
this.theme = theme;
setResistance(15);
setHardness(5);
setStepSound(Block.soundTypeStone);
setCreativeTab(CreativePlugin.RAILCRAFT_TAB);
setHarvestLevel("pickaxe", 0);
}
@Override
public int damageDropped(int meta) {
return meta;
}
@Override
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister iconRegister) {
icons = TextureAtlasSheet.unstitchIcons(iconRegister, "railcraft:brick." + theme.themeTag(), BrickVariant.VALUES.length);
}
@Override
public IIcon getIcon(int side, int meta) {
if (meta >= icons.length)
meta = 0;
return icons[meta];
}
@Override
public void getSubBlocks(Item item, CreativeTabs tab, List list) {
for (BrickVariant variant : BrickVariant.VALUES) {
list.add(theme.get(variant, 1));
}
}
@Override
public boolean canBeReplacedByLeaves(IBlockAccess world, int x, int y, int z) {
return false;
}
}