RovkirHexus

SuperFurnaceBlock.java

May 9th, 2016
35
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.40 KB | None | 0 0
  1. package com.HexianMods.HexianOres.tileentity;
  2.  
  3. import com.HexianMods.HexianOres.HexianOres;
  4. import com.HexianMods.HexianOres.network.HexianOresGUIHandler;
  5.  
  6. import net.minecraft.block.BlockContainer;
  7. import net.minecraft.block.material.Material;
  8. import net.minecraft.block.state.IBlockState;
  9. import net.minecraft.entity.EntityLivingBase;
  10. import net.minecraft.entity.player.EntityPlayer;
  11. import net.minecraft.inventory.InventoryHelper;
  12. import net.minecraft.item.ItemStack;
  13. import net.minecraft.tileentity.TileEntity;
  14. import net.minecraft.util.BlockPos;
  15. import net.minecraft.util.EnumFacing;
  16. import net.minecraft.world.World;
  17.  
  18. public class SuperFurnaceBlock extends BlockContainer{
  19.  
  20.     public SuperFurnaceBlock(String unlocalizedName){
  21.         super(Material.iron);
  22.         this.setUnlocalizedName(unlocalizedName);
  23.         this.setHardness(2.0f);
  24.         this.setResistance(6.0f);
  25.         this.setHarvestLevel("pickaxe", 3);
  26.         this.isBlockContainer = true;
  27.     }
  28.    
  29.     @Override
  30.     public TileEntity createNewTileEntity(World worldIn, int meta){
  31.         return new HexianOresTileEntity();
  32.     }
  33.    
  34.     @Override
  35.     public void breakBlock(World world, BlockPos pos, IBlockState state){
  36.         HexianOresTileEntity te = (HexianOresTileEntity) world.getTileEntity(pos);
  37.         InventoryHelper.dropInventoryItems(world, pos, te);
  38.         world.removeTileEntity(pos);
  39.         super.breakBlock(world, pos, state);
  40.     }
  41.    
  42.     @Override
  43.     public boolean onBlockEventReceived(World worldIn, BlockPos pos, IBlockState state, int eventID, int eventParam) {
  44.         super.onBlockEventReceived(worldIn, pos, state, eventID, eventParam);
  45.         TileEntity tileentity = worldIn.getTileEntity(pos);
  46.         return tileentity == null ? false : tileentity.receiveClientEvent(eventID, eventParam);
  47.     }
  48.    
  49.     @Override
  50.     public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack){
  51.         if(stack.hasDisplayName()){
  52.             ((HexianOresTileEntity) worldIn.getTileEntity(pos)).setCustomName(stack.getDisplayName());
  53.         }
  54.     }
  55.    
  56.     @Override
  57.     public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ) {
  58.         if (!world.isRemote) {
  59.             player.openGui(HexianOres.instance, HexianOresGUIHandler.MOD_TILE_ENTITY_GUI, world, pos.getX(), pos.getY(), pos.getZ());
  60.         }
  61.         return true;
  62.     }
  63.    
  64.     @Override
  65.     public int getRenderType(){
  66.         return 3;
  67.     }
  68.    
  69. }
Add Comment
Please, Sign In to add comment