001 package net.minecraft.src;
002
003 import cpw.mods.fml.common.Side;
004 import cpw.mods.fml.common.asm.SideOnly;
005
006 public class BlockBreakable extends Block
007 {
008 private boolean localFlag;
009
010 protected BlockBreakable(int par1, int par2, Material par3Material, boolean par4)
011 {
012 super(par1, par2, par3Material);
013 this.localFlag = par4;
014 }
015
016 /**
017 * Is this block (a) opaque and (b) a full 1m cube? This determines whether or not to render the shared face of two
018 * adjacent blocks and also whether the player can attach torches, redstone wire, etc to this block.
019 */
020 public boolean isOpaqueCube()
021 {
022 return false;
023 }
024
025 @SideOnly(Side.CLIENT)
026
027 /**
028 * Returns true if the given side of this block type should be rendered, if the adjacent block is at the given
029 * coordinates. Args: blockAccess, x, y, z, side
030 */
031 public boolean shouldSideBeRendered(IBlockAccess par1IBlockAccess, int par2, int par3, int par4, int par5)
032 {
033 int var6 = par1IBlockAccess.getBlockId(par2, par3, par4);
034 return !this.localFlag && var6 == this.blockID ? false : super.shouldSideBeRendered(par1IBlockAccess, par2, par3, par4, par5);
035 }
036 }