Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.29 KB | None | 0 0
  1. package pandora.modules.miscellanous;
  2.  
  3. import net.minecraft.block.Block;
  4. import net.minecraft.init.Blocks;
  5. import net.minecraft.item.ItemBlock;
  6. import net.minecraft.item.ItemStack;
  7. import net.minecraft.network.play.client.C09PacketHeldItemChange;
  8. import net.minecraft.network.play.client.C0APacketAnimation;
  9. import net.minecraft.util.BlockPos;
  10. import net.minecraft.util.EnumFacing;
  11. import net.minecraft.util.Vec3;
  12. import org.lwjgl.input.Keyboard;
  13. import org.lwjgl.input.Mouse;
  14. import pandora.events.EventTarget;
  15. import pandora.events.events.Event3D;
  16. import pandora.events.events.EventKeyPress;
  17. import pandora.events.events.EventPostMotionUpdates;
  18. import pandora.events.events.EventPreMotionUpdates;
  19. import pandora.modules.Module;
  20. import pandora.utils.Helper;
  21. import pandora.utils.Logger;
  22. import pandora.utils.utils.BlockUtils;
  23. import pandora.utils.utils.BlockUtils.BlockData;
  24. import pandora.utils.utils.Timer;
  25.  
  26. import java.util.Arrays;
  27. import java.util.List;
  28.  
  29. public class Scaffold extends Module {
  30.     private Timer timer = new Timer(), timerMotion = new Timer();
  31.     private BlockUtils.BlockData blockData;
  32.     private int slot;
  33.     boolean placing;
  34.  
  35.     public Scaffold() {
  36.     super("Scaffold", 0, 0x005C00, Module.Category.MISCELLANEOUS,"Places block below you in the specified direction.", new String[] { "scw", "swalk", "tower", "sc" },true);
  37.     }
  38.  
  39.     @EventTarget
  40.     public void onPre(EventPreMotionUpdates pre) {
  41.     int tempSlot = Helper.blockUtils().getBlockSlot();
  42.     blockData = null;
  43.     slot = -1;
  44.  
  45.     if (!mc.thePlayer.isSneaking() && tempSlot != -1) {
  46.         double x2 = Math.cos(Math.toRadians(mc.thePlayer.rotationYaw + 90.0f));
  47.         double z2 = Math.sin(Math.toRadians(mc.thePlayer.rotationYaw + 90.0f));
  48.         double xOffset = mc.thePlayer.movementInput.moveForward * 0.4 * x2 + mc.thePlayer.movementInput.moveStrafe * 0.4 * z2;
  49.         double zOffset = mc.thePlayer.movementInput.moveForward * 0.4 * z2 - mc.thePlayer.movementInput.moveStrafe * 0.4 * x2;
  50.         double x = mc.thePlayer.posX + xOffset, y = mc.thePlayer.posY - 1, z = mc.thePlayer.posZ + zOffset;
  51.        
  52.         BlockPos blockBelow1 = new BlockPos(x, y, z);
  53.        
  54.         if (mc.theWorld.getBlockState(blockBelow1).getBlock() == Blocks.air) {
  55.         blockData = Helper.blockUtils().getBlockData1(blockBelow1);
  56.         slot = tempSlot;   
  57.        
  58.         if (blockData != null) {
  59.             float yaw = Helper.playerUtils().aimAtLocation((double) this.blockData.position.getX(), (double) this.blockData.position.getY(), (double) this.blockData.position.getZ(), this.blockData.face)[0];
  60.             float pitch = Helper.playerUtils().aimAtLocation((double) this.blockData.position.getX(), (double) this.blockData.position.getY(), (double) this.blockData.position.getZ(), this.blockData.face)[1];  
  61.            
  62.             pre.setYaw(yaw);
  63.             pre.setPitch(pitch);
  64.         }
  65.         }
  66.     }
  67.     }
  68.    
  69.     @EventTarget
  70.     public void onPost(EventPostMotionUpdates post) {
  71.       if (blockData != null) {
  72.               if (timer.hasTimeElapsed(75L)) {
  73.                   mc.rightClickDelayTimer = 0;
  74.                   if (mc.gameSettings.keyBindJump.getIsKeyPressed()) {
  75.                       mc.thePlayer.motionY = 0.42;
  76.                       if (timerMotion.hasTimeElapsed(1500)) {
  77.                           mc.thePlayer.motionY = -0.28;
  78.                           timerMotion.reset();
  79.                           if (timerMotion.hasTimeElapsed(2L)) {
  80.                               mc.thePlayer.motionY = 0.42;
  81.                           }
  82.                       }
  83.                   }
  84.               }
  85.       }
  86.                  
  87.     if (this.blockData != null && this.timer.hasTimeElapsed(75) && slot != -1) {
  88.         boolean dohax;
  89.         mc.rightClickDelayTimer = 3;
  90.  
  91.         boolean bl = dohax = mc.thePlayer.inventory.currentItem != slot;
  92.        
  93.         if (dohax)
  94.         mc.thePlayer.sendQueue.addToSendQueue(new C09PacketHeldItemChange(slot));
  95.        
  96.         if (mc.playerController.func_178890_a(mc.thePlayer, mc.theWorld, mc.thePlayer.inventoryContainer.getSlot(36 + slot).getStack(), blockData.position, blockData.face, new Vec3(blockData.position.getX(), this.blockData.position.getY(), this.blockData.position.getZ())))
  97.         mc.thePlayer.swingItem();
  98.  
  99.         if (dohax)
  100.         mc.thePlayer.sendQueue.addToSendQueue(new C09PacketHeldItemChange(mc.thePlayer.inventory.currentItem));
  101.        
  102.         timer.reset();
  103.     }
  104.     }
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement