TinkersConstruct/mods/tinker/tconstruct/blocks/LightCrystalBase.java
2013-06-27 06:43:54 -07:00

97 lines
2.5 KiB
Java

package mods.tinker.tconstruct.blocks;
import java.util.List;
import mods.natura.common.NContent;
import mods.tinker.tconstruct.client.block.CrystalBlockRender;
import mods.tinker.tconstruct.crystal.TheftValueTracker;
import mods.tinker.tconstruct.library.TConstructRegistry;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.client.renderer.texture.IconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Icon;
import net.minecraft.world.World;
public class LightCrystalBase extends Block
{
String[] textureNames = { "amber_crystal" };
Icon[] icons;
public LightCrystalBase(int id)
{
super(id, Material.glass);
this.setCreativeTab(TConstructRegistry.blockTab);
}
@Override
public Icon getIcon (int side, int meta)
{
if (meta < 5)
return Block.glowStone.getIcon(side, meta);
if (meta < 10)
return Block.blockNetherQuartz.getIcon(side, 1);
return icons[0];
}
@Override
public boolean renderAsNormalBlock ()
{
return false;
}
@Override
public boolean isOpaqueCube ()
{
return false;
}
@Override
public int getRenderType ()
{
return CrystalBlockRender.model;
}
@Override
public void getSubBlocks (int id, CreativeTabs tab, List list)
{
/*for (int iter = 0; iter < 15; iter++)
{
list.add(new ItemStack(id, 1, iter));
}*/
}
@Override
public void registerIcons (IconRegister iconRegister)
{
this.icons = new Icon[textureNames.length];
for (int i = 0; i < this.icons.length; ++i)
{
this.icons[i] = iconRegister.registerIcon("tinker:" + textureNames[i]);
}
}
@Override
public void breakBlock (World world, int x, int y, int z, int par5, int meta)
{
switch (meta % 5)
{
case 0:
case 4:
TheftValueTracker.updateCrystallinity(world.provider.dimensionId, x, z, -10);
break;
case 1:
TheftValueTracker.updateCrystallinity(world.provider.dimensionId, x, z, -20);
break;
case 2:
TheftValueTracker.updateCrystallinity(world.provider.dimensionId, x, z, -35);
break;
case 3:
TheftValueTracker.updateCrystallinity(world.provider.dimensionId, x, z, -60);
break;
}
}
}