diff options
| author | OnyxDarkKnight <sor1n.iliutza16@gmail.com> | 2015-02-21 21:31:16 +0000 |
|---|---|---|
| committer | OnyxDarkKnight <sor1n.iliutza16@gmail.com> | 2015-02-21 21:31:16 +0000 |
| commit | 420faddca46e70e3a70def168fb4e452ef193b0d (patch) | |
| tree | 247e334012e4bf9e4fa6d42718bf601ce6bd42d9 /java/darkknight/jewelrycraft/block/BlockHandPedestal.java | |
| parent | 3f4c717de5ebc9b942d65ae45ac87c43bdf8a31b (diff) | |
Added just a butt ton of stuff, also thanks to pau101 for helping me with the Hand Pedestal animation :)
Diffstat (limited to 'java/darkknight/jewelrycraft/block/BlockHandPedestal.java')
| -rw-r--r-- | java/darkknight/jewelrycraft/block/BlockHandPedestal.java | 117 |
1 files changed, 82 insertions, 35 deletions
diff --git a/java/darkknight/jewelrycraft/block/BlockHandPedestal.java b/java/darkknight/jewelrycraft/block/BlockHandPedestal.java index 95fecfc..6fe5b7f 100644 --- a/java/darkknight/jewelrycraft/block/BlockHandPedestal.java +++ b/java/darkknight/jewelrycraft/block/BlockHandPedestal.java @@ -1,7 +1,5 @@ package darkknight.jewelrycraft.block; -import java.util.Random; - import net.minecraft.block.Block; import net.minecraft.block.BlockContainer; import net.minecraft.block.material.Material; @@ -9,7 +7,6 @@ import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MathHelper; @@ -19,106 +16,156 @@ import darkknight.jewelrycraft.tileentity.TileEntityHandPedestal; public class BlockHandPedestal extends BlockContainer { - Random rand = new Random(); - protected BlockHandPedestal(Material par2Material) + /** + * @param material + */ + protected BlockHandPedestal(Material material) { - super(par2Material); - this.setBlockBounds(0.2F, 0F, 0.2F, 0.8F, 1.0F, 0.8F); + super(material); + setBlockBounds(0.2F, 0F, 0.2F, 0.8F, 1.0F, 0.8F); } + /** + * @param world + * @param var2 + * @return + */ @Override public TileEntity createNewTileEntity(World world, int var2) { return new TileEntityHandPedestal(); } + /** + * @return + */ @Override public boolean renderAsNormalBlock() { return false; } + /** + * @param iblockaccess + * @param i + * @param j + * @param k + * @param l + * @return + */ @Override public boolean shouldSideBeRendered(IBlockAccess iblockaccess, int i, int j, int k, int l) { return false; } + /** + * @return + */ @Override public boolean isOpaqueCube() { return false; } + /** + * @return + */ @Override public int getRenderType() { return -1; } + /** + * @param world + * @param i + * @param j + * @param k + * @param entityPlayer + * @param par6 + * @param par7 + * @param par8 + * @param par9 + * @return + */ @Override public boolean onBlockActivated(World world, int i, int j, int k, EntityPlayer entityPlayer, int par6, float par7, float par8, float par9) { - TileEntityHandPedestal te = (TileEntityHandPedestal) world.getTileEntity(i, j, k); + TileEntityHandPedestal te = (TileEntityHandPedestal)world.getTileEntity(i, j, k); ItemStack item = entityPlayer.inventory.getCurrentItem(); - if (te != null) - { - if (!te.hasObject && item != null && item != new ItemStack(Item.getItemById(0), 0, 0) && !world.isRemote) - { - te.object = item.copy(); - te.object.stackSize = 1; - te.hasObject = true; + if (te != null){ + if (!world.isRemote && te.getHeldItemStack() == null && item != null){ + te.setHeldItemStack(item.copy()); + te.closeHand(); if (!entityPlayer.capabilities.isCreativeMode) item.stackSize--; - te.isDirty = true; te.markDirty(); + }else if (entityPlayer.isSneaking()) if (entityPlayer.inventory.addItemStackToInventory(te.getHeldItemStack())){ + te.removeHeldItemStack(); + te.openHand(); } - else if(entityPlayer.isSneaking()) - { - if(entityPlayer.inventory.addItemStackToInventory(te.object)) - { - te.hasObject = false; - te.object = new ItemStack(Item.getItemById(0), 0, 0); - } - } - te.isDirty = true; te.markDirty(); } return true; } + /** + * @param world + * @param x + * @param y + * @param z + * @param stack + */ public void dropItem(World world, double x, double y, double z, ItemStack stack) { - EntityItem entityitem = new EntityItem(world, x + 0.5D, y + 1.5D, z + 0.5D, stack); + EntityItem entityitem = new EntityItem(world, x + 0.5, y + 1.5, z + 0.5, stack); entityitem.motionX = 0; entityitem.motionZ = 0; entityitem.motionY = 0.11000000298023224D; world.spawnEntityInWorld(entityitem); } + /** + * @param world + * @param i + * @param j + * @param k + * @param block + * @param par6 + */ + @Override public void breakBlock(World world, int i, int j, int k, Block block, int par6) { - TileEntityHandPedestal te = (TileEntityHandPedestal) world.getTileEntity(i, j, k); - - if (te != null && te.hasObject) - { - dropItem(te.getWorldObj(), (double) te.xCoord, (double) te.yCoord, (double) te.zCoord, te.object); + TileEntityHandPedestal te = (TileEntityHandPedestal)world.getTileEntity(i, j, k); + if (te != null && te.getHeldItemStack() != null){ + dropItem(te.getWorldObj(), te.xCoord, te.yCoord, te.zCoord, te.getHeldItemStack()); world.removeTileEntity(i, j, k); } - super.breakBlock(world, i, j, k, block, par6); } + /** + * @param world + * @param i + * @param j + * @param k + * @param entityLiving + * @param par6ItemStack + */ @Override public void onBlockPlacedBy(World world, int i, int j, int k, EntityLivingBase entityLiving, ItemStack par6ItemStack) { - int rotation = MathHelper.floor_double(entityLiving.rotationYaw * 8.0F / 360.0F + 0.5D) & 7; + int rotation = MathHelper.floor_double(entityLiving.rotationYaw * 8 / 360 + 0.5) & 7; world.setBlockMetadataWithNotify(i, j, k, rotation, 2); } + /** + * @param icon + */ @Override public void registerBlockIcons(IIconRegister icon) { - this.blockIcon = icon.registerIcon("minecraft:stonebrick"); + blockIcon = icon.registerIcon("minecraft:stonebrick"); } -} +}
\ No newline at end of file |
