Advertisement
Guest User

Untitled

a guest
Sep 17th, 2014
216
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.02 KB | None | 0 0
  1. package com.javaman.magicwands.magicwands;
  2.  
  3. import com.javaman.magicwands.LogHelper;
  4.  
  5. import net.minecraft.block.Block;
  6. import net.minecraft.client.renderer.texture.IconRegister;
  7. import net.minecraft.creativetab.CreativeTabs;
  8. import net.minecraft.entity.Entity;
  9. import net.minecraft.entity.player.EntityPlayer;
  10. import net.minecraft.item.Item;
  11. import net.minecraft.item.ItemStack;
  12. import net.minecraft.world.World;
  13.  
  14. public class MagicwandRemoveTool extends Item
  15. {
  16.     private int blockStartClickID;
  17.     private int blockEndClickID;
  18.  
  19.     private int blockStartPosX;
  20.     private int blockStartPosY;
  21.     private int blockStartPosZ;
  22.  
  23.     private int blockEndPosX;
  24.     private int blockEndPosY;
  25.     private int blockEndPosZ;
  26.  
  27.     public MagicwandRemoveTool(int id)
  28.     {
  29.         super(id);
  30.         this.setMaxStackSize(1);
  31.         this.setCreativeTab(CreativeTabs.tabTools);
  32.     }
  33.  
  34.     @Override
  35.     public void registerIcons(IconRegister par1IconRegister)
  36.     {
  37.         itemIcon = par1IconRegister.registerIcon("magicwands:" + this.getUnlocalizedName().substring(5));
  38.     }
  39.  
  40.     private boolean isChoosing = false;
  41.     private boolean canChoose = true;
  42.     private int chooseResetTimer = 10;
  43.     private int choosePhase = 1;
  44.  
  45.     public void onUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5)
  46.     {
  47.         if (isChoosing)
  48.         {
  49.             canChoose = false;
  50.             --chooseResetTimer;
  51.  
  52.             if (chooseResetTimer <= 0)
  53.             {
  54.                 isChoosing = false;
  55.                 canChoose = true;
  56.                 chooseResetTimer = 10;
  57.  
  58.                 if (choosePhase == 1) { choosePhase = 2; }
  59.                 else if (choosePhase == 2) { choosePhase = 1; }
  60.             }
  61.         }
  62.     }
  63.  
  64.     public boolean onItemUse(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, World par3World, int x, int y, int z, int par7, float par8, float par9, float par10)
  65.     {  
  66.         if (!isChoosing)
  67.         {
  68.             isChoosing = true;
  69.  
  70.             if (choosePhase == 1)
  71.             {
  72.                 blockStartPosX = x; blockStartPosY = y; blockStartPosZ = z;
  73.                 this.blockStartClickID = par3World.getBlockId(blockStartPosX, blockStartPosY, blockStartPosZ);
  74.             }
  75.  
  76.             else if (choosePhase == 2)
  77.             {
  78.                 blockEndPosX = x; blockEndPosY = y; blockEndPosZ = z;
  79.                 this.blockEndClickID = par3World.getBlockId(blockEndPosX, blockEndPosY, blockEndPosZ);
  80.  
  81.                 LogHelper.info("ID of first block clicked: " + blockStartClickID + ", at the coords: " + "X:" + blockStartPosX + ", Y:" + blockStartPosY + ", Z:" + blockStartPosZ);
  82.                 LogHelper.info("ID of second block clicked: " + blockEndClickID + ", at the coords: " + "X:" + blockEndPosX + ", Y:" + blockEndPosY + ", Z:" + blockEndPosZ);
  83.  
  84.  
  85.                 if (blockStartClickID == blockEndClickID)
  86.                 {
  87.                     if (blockStartPosX < blockEndPosX)
  88.                     {
  89.                         LogHelper.info("The Start Position X is LESS than the End Position X");
  90.  
  91.                         int differenceInXValue = blockEndPosX - blockStartPosX;
  92.  
  93.                         LogHelper.info("Difference: " + differenceInXValue);
  94.                         for (int i = 0; i < differenceInXValue; ++i)
  95.                         {
  96.                             //LogHelper.info("" + (i + 1));
  97.                             par3World.setBlock(blockStartPosX + i + 1, blockStartPosY, blockStartPosZ, Block.bedrock.blockID);
  98.                             par3World.setBlock(blockStartPosX + i, blockStartPosY, blockStartPosZ, Block.bedrock.blockID);
  99.                         }
  100.                     }
  101.                     else if (blockStartPosX > blockEndPosX)
  102.                     {
  103.                         LogHelper.info("The Start Position X is MORE than the End Position X");
  104.  
  105.                         int differenceInXValue = blockStartPosX - blockEndPosX;
  106.  
  107.                         LogHelper.info("Difference: " + differenceInXValue);
  108.                         for (int i = 0; i < differenceInXValue; ++i)
  109.                         {
  110.                             //LogHelper.info("" + (i + 1));
  111.                             par3World.setBlock(blockStartPosX - i - 1, blockStartPosY, blockStartPosZ, Block.bedrock.blockID);
  112.                             par3World.setBlock(blockStartPosX - i, blockStartPosY, blockStartPosZ, Block.bedrock.blockID);
  113.                             //LogHelper.info("setBlook("+blockStartPosX+", "+(blockStartPosY+i)+", "+blockStartPosZ+", "+blockStartClickID);
  114.                         }
  115.                     }
  116.                 }
  117.                 else
  118.                 {
  119.                     par2EntityPlayer.addChatMessage("The Blocks you click must be the same blocks!");
  120.                 }
  121.             }
  122.         }
  123.  
  124.         return true;
  125.     }
  126.  
  127.     public void setBlockStartPositions()
  128.     {
  129.  
  130.     }
  131. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement