001 package net.minecraft.src;
002
003 import cpw.mods.fml.common.Side;
004 import cpw.mods.fml.common.asm.SideOnly;
005 import java.util.List;
006
007 public class BlockCloth extends Block
008 {
009 public BlockCloth()
010 {
011 super(35, 64, Material.cloth);
012 this.setCreativeTab(CreativeTabs.tabBlock);
013 }
014
015 /**
016 * From the specified side and block metadata retrieves the blocks texture. Args: side, metadata
017 */
018 public int getBlockTextureFromSideAndMetadata(int par1, int par2)
019 {
020 if (par2 == 0)
021 {
022 return this.blockIndexInTexture;
023 }
024 else
025 {
026 par2 = ~(par2 & 15);
027 return 113 + ((par2 & 8) >> 3) + (par2 & 7) * 16;
028 }
029 }
030
031 /**
032 * Determines the damage on the item the block drops. Used in cloth and wood.
033 */
034 protected int damageDropped(int par1)
035 {
036 return par1;
037 }
038
039 /**
040 * Takes a dye damage value and returns the block damage value to match
041 */
042 public static int getBlockFromDye(int par0)
043 {
044 return ~par0 & 15;
045 }
046
047 /**
048 * Takes a block damage value and returns the dye damage value to match
049 */
050 public static int getDyeFromBlock(int par0)
051 {
052 return ~par0 & 15;
053 }
054
055 @SideOnly(Side.CLIENT)
056
057 /**
058 * returns a list of blocks with the same ID, but different meta (eg: wood returns 4 blocks)
059 */
060 public void getSubBlocks(int par1, CreativeTabs par2CreativeTabs, List par3List)
061 {
062 for (int var4 = 0; var4 < 16; ++var4)
063 {
064 par3List.add(new ItemStack(par1, 1, var4));
065 }
066 }
067 }