Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.dungeonmaster.block.SoulFurnace;
- import java.util.Random;
- import javax.swing.Icon;
- import com.dungeonmaster.main.DungeonMasterMain;
- import cpw.mods.fml.relauncher.Side;
- import cpw.mods.fml.relauncher.SideOnly;
- import net.minecraft.block.Block;
- import net.minecraft.block.BlockDirectional;
- import net.minecraft.block.BlockFurnace;
- import net.minecraft.block.BlockMobSpawner;
- import net.minecraft.block.ITileEntityProvider;
- import net.minecraft.block.material.Material;
- import net.minecraft.client.renderer.texture.IIconRegister;
- import net.minecraft.creativetab.CreativeTabs;
- import net.minecraft.entity.EntityLiving;
- import net.minecraft.entity.EntityLivingBase;
- import net.minecraft.entity.item.EntityItem;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.init.Items;
- import net.minecraft.item.ItemStack;
- import net.minecraft.tileentity.TileEntity;
- import net.minecraft.util.IIcon;
- import net.minecraft.util.MathHelper;
- import net.minecraft.world.World;
- public class EvilPumpkin extends Block implements ITileEntityProvider{
- int position;
- public static String name = "Vile Pumpkin Totem";
- private String privatename = "Vile Pumpkin Totem";
- @SideOnly(Side.CLIENT)
- public IIcon Side0;
- @SideOnly(Side.CLIENT)
- public IIcon Side1;
- @SideOnly(Side.CLIENT)
- public IIcon Side2;
- @SideOnly(Side.CLIENT)
- public IIcon Side3;
- @SideOnly(Side.CLIENT)
- public IIcon Side4;
- @SideOnly(Side.CLIENT)
- public IIcon Side5;
- public EvilPumpkin(Material pumpkin)
- {
- super(pumpkin);
- this.setHardness(1.5F);
- this.setResistance(3.0F);
- this.setStepSound(soundTypeWood);
- this.setBlockName("Vile Pumpkin");
- this.setCreativeTab(CreativeTabs.tabDecorations);
- this.setLightLevel(0.3F);
- }
- @SideOnly(Side.CLIENT)
- public void registerBlockIcons(IIconRegister reg)
- {
- this.Side0 = reg.registerIcon("dungeon:PumpkinTop");
- this.Side1 = reg.registerIcon("dungeon:PumpkinTop");
- this.Side2 = reg.registerIcon("dungeon:PumpkinFace");
- this.Side3 = reg.registerIcon("dungeon:PumpkinFace");
- this.Side4 = reg.registerIcon("dungeon:PumpkinFace");
- this.Side5 = reg.registerIcon("dungeon:PumpkinFace");
- }
- public IIcon getIcon(int side, int meta)
- {
- if(side == 0){
- return Side0;
- }else if(side == 1){
- return Side1;
- }else if(side == 2){
- return Side2;
- }else if(side == 3){
- return Side3;
- }else if(side == 4){
- return Side4;
- }else{
- return Side5;
- }
- }
- @SideOnly(Side.CLIENT)
- public void onBlockAdded(World world, int x, int y, int z){
- super.onBlockAdded(world, x, y, z);
- this.direction(world, x, y, z);
- }
- public void direction(World world, int x, int y, int z){
- if(!world.isRemote){
- Block direction = world.getBlock(x, y, z-1);
- Block direction1 = world.getBlock(x, y, z+1);
- Block direction2 = world.getBlock(x-1, y, z);
- Block direction3 = world.getBlock(x+1, y, z);
- byte byte0 = 3;
- if(direction.func_149730_j() && direction.func_149730_j()){
- byte0 = 3;
- }
- if(direction1.func_149730_j() && direction1.func_149730_j()){
- byte0 = 2;
- }
- if(direction2.func_149730_j() && direction2.func_149730_j()){
- byte0 = 5;
- }
- if(direction3.func_149730_j() && direction3.func_149730_j()){
- byte0 = 4;
- }
- world.setBlockMetadataWithNotify(x, y, z, byte0, 2);
- }
- }
- public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase entity, ItemStack itemstack){
- int direction = MathHelper.floor_double((double)(entity.rotationYaw * 4.0F / 360.0F) + 0.5D) & 3;
- if(direction == 0){
- world.setBlockMetadataWithNotify(x, y, z, 2, 2);
- }
- if(direction == 1){
- world.setBlockMetadataWithNotify(x, y, z, 5, 2);
- }
- if(direction == 2){
- world.setBlockMetadataWithNotify(x, y, z, 3, 2);
- }
- if(direction == 3){
- world.setBlockMetadataWithNotify(x, y, z, 4, 2);
- }
- if(itemstack.hasDisplayName()){
- }
- }
- @Override
- public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int metadata, float sideX, float sideY, float sideZ) {
- if (!world.isRemote) {
- ItemStack held = player.getHeldItem();
- if(held == new ItemStack(Items.bone)){
- ItemStack out = new ItemStack(Items.iron_ingot);
- EntityItem entity = new EntityItem(world, player.posX, player.posY, player.posZ, out);
- world.spawnEntityInWorld(entity);
- }
- }
- return true;
- }
- @Override
- public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) {
- return new TileEntityPumpkin();
- }
- @Override
- public boolean hasTileEntity(int metadata){
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment