summaryrefslogtreecommitdiff
path: root/common/darkknight/jewelrycraft/block/BlockSmelter.java
diff options
context:
space:
mode:
Diffstat (limited to 'common/darkknight/jewelrycraft/block/BlockSmelter.java')
-rw-r--r--common/darkknight/jewelrycraft/block/BlockSmelter.java60
1 files changed, 60 insertions, 0 deletions
diff --git a/common/darkknight/jewelrycraft/block/BlockSmelter.java b/common/darkknight/jewelrycraft/block/BlockSmelter.java
new file mode 100644
index 0000000..2be6743
--- /dev/null
+++ b/common/darkknight/jewelrycraft/block/BlockSmelter.java
@@ -0,0 +1,60 @@
+package darkknight.jewelrycraft.block;
+
+import darkknight.jewelrycraft.tileentity.TileEntitySmelter;
+import net.minecraft.block.BlockContainer;
+import net.minecraft.block.material.Material;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.tileentity.TileEntity;
+import net.minecraft.world.World;
+
+public class BlockSmelter extends BlockContainer
+{
+ protected BlockSmelter(int par1, Material par2Material)
+ {
+ super(par1, par2Material);
+ }
+
+ @Override
+ public TileEntity createNewTileEntity(World world)
+ {
+ return new TileEntitySmelter();
+ }
+
+ @Override
+ public boolean renderAsNormalBlock()
+ {
+ return false;
+ }
+
+ @Override
+ public boolean onBlockActivated(World world, int i, int j, int k, EntityPlayer entityPlayer, int par6, float par7, float par8, float par9)
+ {
+ TileEntitySmelter te = (TileEntitySmelter) world.getBlockTileEntity(i, j, k);
+ ItemStack item = entityPlayer.inventory.getCurrentItem();
+ if (te != null && !world.isRemote)
+ {
+ if (!te.hasMetal && !te.hasMoltenMetal && item != null && item.getDisplayName().contains("Ingot"))
+ {
+ te.metalID = item.getItem().itemID;
+ te.hasMetal = true;
+ te.melting = 200000;
+ --item.stackSize;
+ }
+ else if (te.hasMetal && !te.hasMoltenMetal && item != null && item.getDisplayName().contains("Ingot"))
+ entityPlayer.addChatMessage("The Smelter already contains a " + new ItemStack(te.metalID, 1, 0).getDisplayName());
+ else if (te.hasMoltenMetal && item != null && item.getDisplayName().contains("Ingot"))
+ entityPlayer.addChatMessage("The Smelter contains molten " + new ItemStack(te.moltenMetalID, 1, 0).getDisplayName().toLowerCase().replace("ingot", ""));
+ else if (item != null && !item.getDisplayName().contains("Ingot"))
+ entityPlayer.addChatMessage("The item needs to be an ingot!");
+
+ if (te.hasMetal && entityPlayer.isSneaking())
+ {
+ entityPlayer.dropPlayerItem(new ItemStack(te.metalID, 1, 0));
+ te.hasMetal = false;
+ }
+ world.setBlockTileEntity(i, j, k, te);
+ }
+ return true;
+ }
+}