001 package net.minecraft.block; 002 003 import cpw.mods.fml.relauncher.Side; 004 import cpw.mods.fml.relauncher.SideOnly; 005 import java.util.Random; 006 import net.minecraft.block.material.Material; 007 import net.minecraft.creativetab.CreativeTabs; 008 009 public class BlockGlass extends BlockBreakable 010 { 011 public BlockGlass(int par1, int par2, Material par3Material, boolean par4) 012 { 013 super(par1, par2, par3Material, par4); 014 this.setCreativeTab(CreativeTabs.tabBlock); 015 } 016 017 /** 018 * Returns the quantity of items to drop on block destruction. 019 */ 020 public int quantityDropped(Random par1Random) 021 { 022 return 0; 023 } 024 025 @SideOnly(Side.CLIENT) 026 027 /** 028 * Returns which pass should this block be rendered on. 0 for solids and 1 for alpha 029 */ 030 public int getRenderBlockPass() 031 { 032 return 0; 033 } 034 035 /** 036 * Is this block (a) opaque and (b) a full 1m cube? This determines whether or not to render the shared face of two 037 * adjacent blocks and also whether the player can attach torches, redstone wire, etc to this block. 038 */ 039 public boolean isOpaqueCube() 040 { 041 return false; 042 } 043 044 /** 045 * If this block doesn't render as an ordinary block it will return False (examples: signs, buttons, stairs, etc) 046 */ 047 public boolean renderAsNormalBlock() 048 { 049 return false; 050 } 051 052 /** 053 * Return true if a player with Silk Touch can harvest this block directly, and not its normal drops. 054 */ 055 protected boolean canSilkHarvest() 056 { 057 return true; 058 } 059 }