From 2a7e0a624f482a28af1c770dbcf2a20f52f94f78 Mon Sep 17 00:00:00 2001 From: OnyxDarkKnight Date: Sun, 19 Apr 2015 03:30:08 +0100 Subject: Added Midas Touch --- .../jewelrycraft/events/BlockEventHandler.java | 40 ++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/main/java/darkknight/jewelrycraft/events/BlockEventHandler.java (limited to 'src/main/java/darkknight/jewelrycraft/events/BlockEventHandler.java') diff --git a/src/main/java/darkknight/jewelrycraft/events/BlockEventHandler.java b/src/main/java/darkknight/jewelrycraft/events/BlockEventHandler.java new file mode 100644 index 0000000..81fe34b --- /dev/null +++ b/src/main/java/darkknight/jewelrycraft/events/BlockEventHandler.java @@ -0,0 +1,40 @@ +/** + * + */ +package darkknight.jewelrycraft.events; + +import net.minecraft.entity.item.EntityItem; +import net.minecraft.init.Items; +import net.minecraft.item.ItemPickaxe; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import net.minecraftforge.event.world.BlockEvent; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import darkknight.jewelrycraft.block.BlockMidasTouch; +import darkknight.jewelrycraft.tileentity.TileEntityMidasTouch; + +/** + * @author Sorin + */ +public class BlockEventHandler +{ + @SubscribeEvent + public void onBlockDestroyed(BlockEvent.BreakEvent event) + { + // System.out.println("Broken " + event.getResult()); + ItemStack item = event.getPlayer().inventory.getCurrentItem(); + if (event.block instanceof BlockMidasTouch && item != null && item.getItem().getHarvestLevel(item, "pickaxe") >= event.block.getHarvestLevel(event.blockMetadata)){ + TileEntityMidasTouch te = (TileEntityMidasTouch)event.world.getTileEntity(event.x, event.y, event.z); + if (te.target != null) dropItem(te.getWorldObj(), te.xCoord, te.yCoord, te.zCoord, new ItemStack(Items.gold_nugget, (int)(te.target.width * te.target.height * 100), 0)); + } + } + + public void dropItem(World world, double x, double y, double z, ItemStack stack) + { + EntityItem entityitem = new EntityItem(world, x + 0.5D, y + 0.5D, z + 0.5D, stack); + entityitem.motionX = 0; + entityitem.motionZ = 0; + entityitem.motionY = 0.11000000298023224D; + world.spawnEntityInWorld(entityitem); + } +} -- cgit v1.2.3