Advertisement
Guest User

auto32k

a guest
Nov 22nd, 2019
1,741
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.21 KB | None | 0 0
  1. import me.zeroeightsix.kami.module.Module;
  2. import me.zeroeightsix.kami.setting.Setting;
  3. import me.zeroeightsix.kami.setting.Settings;
  4. import net.minecraft.block.Block;
  5. import net.minecraft.block.BlockAir;
  6. import net.minecraft.client.Minecraft;
  7. import net.minecraft.init.Blocks;
  8. import net.minecraft.inventory.ClickType;
  9. import net.minecraft.item.Item;
  10. import net.minecraft.item.ItemShulkerBox;
  11. import net.minecraft.item.ItemStack;
  12. import net.minecraft.network.play.client.CPacketEntityAction;
  13. import net.minecraft.network.play.client.CPacketHeldItemChange;
  14. import net.minecraft.util.EnumFacing;
  15. import net.minecraft.util.EnumHand;
  16. import net.minecraft.util.math.BlockPos;
  17. import net.minecraft.util.math.Vec3d;
  18.  
  19. import static me.zeroeightsix.kami.module.modules.player.Scaffold.faceVectorPacketInstant;
  20.  
  21. /**
  22. * Fluffy made this for waizy <3
  23. */
  24.  
  25. @Module.Info(name = "Auto32kBypass", category = Module.Category.COMBAT)
  26. public class Auto32kBypass extends Module{
  27.  
  28. private Setting<Integer> delay = register(Settings.i("Delay", 15));
  29.  
  30. int hopperIndex, shulkerIndex, redstoneIndex, dispenserIndex, obiIndex;
  31. int placeTick = 1;
  32. BlockPos origin, hopperPos;
  33. EnumFacing horizontalFace;
  34.  
  35. @Override
  36. public void onEnable() {
  37. if(mc == null && mc.player == null) {
  38. return;
  39. }
  40. hopperIndex = shulkerIndex = redstoneIndex = dispenserIndex = obiIndex = -1;
  41. placeTick = 1;
  42. if(mc != null && mc.player != null && mc.objectMouseOver != null) {
  43. origin = new BlockPos((double)mc.objectMouseOver.getBlockPos().getX(),(double)mc.objectMouseOver.getBlockPos().getY(),(double)mc.objectMouseOver.getBlockPos().getZ());
  44. horizontalFace = mc.player.getHorizontalFacing();
  45. hopperPos = origin.offset(horizontalFace.getOpposite()).up();
  46. } else {
  47. this.toggle();
  48. }
  49. }
  50.  
  51. @Override
  52. public void onUpdate() {
  53. if(mc == null && mc.player == null) {
  54. return;
  55. }
  56.  
  57. for (int i = 0; i < 9; i++) {
  58. ItemStack itemStack = Minecraft.getMinecraft().player.inventory.mainInventory.get(i);
  59. if (itemStack.getItem().equals(Item.getItemFromBlock(Blocks.HOPPER))) {hopperIndex = i;}
  60. if (itemStack.getItem().equals(Item.getItemFromBlock(Blocks.OBSIDIAN))) {obiIndex = i;}
  61. if (itemStack.getItem() instanceof ItemShulkerBox) {shulkerIndex = i;}
  62. if (itemStack.getItem().equals(Item.getItemFromBlock(Blocks.REDSTONE_BLOCK))) {redstoneIndex = i;}
  63. if (itemStack.getItem().equals(Item.getItemFromBlock(Blocks.DISPENSER))) {dispenserIndex = i;}}
  64.  
  65. placeTick++;
  66. if(checkNulls()) {
  67. if(placeTick == 3) {
  68. Vec3d vec = new Vec3d(origin.getX(), origin.getY(), origin.getZ());
  69. changeItem(obiIndex);
  70. placeBlock(origin, EnumFacing.UP, vec);
  71.  
  72. changeItem(dispenserIndex);
  73. placeBlock(origin.up(), EnumFacing.UP, vec);
  74.  
  75. changeItem(hopperIndex);
  76. BlockPos obiBase = origin.up();
  77. placeBlock(obiBase, horizontalFace.getOpposite(), new Vec3d(obiBase.getX(), obiBase.getY(), obiBase.getZ()));
  78.  
  79. BlockPos dispenserPos = origin.up().up();
  80. faceBlock(dispenserPos, EnumFacing.DOWN);
  81. mc.playerController.processRightClickBlock(mc.player, mc.world, dispenserPos, EnumFacing.UP, new Vec3d(dispenserPos.getX(), dispenserPos.getY(), dispenserPos.getZ()), EnumHand.MAIN_HAND);
  82. mc.player.swingArm(EnumHand.MAIN_HAND);
  83.  
  84. changeItem(shulkerIndex);
  85. placeTick = 4;
  86. }
  87. if(placeTick == delay.getValue()+4) {
  88. mc.playerController.windowClick(mc.player.openContainer.windowId, 1, mc.player.inventory.currentItem, ClickType.SWAP, mc.player);
  89. mc.player.closeScreen();
  90. placeTick = delay.getValue()+4;
  91. }
  92. if(placeTick == delay.getValue()+10) {
  93. mc.player.connection.sendPacket(new CPacketEntityAction(Minecraft.getMinecraft().player, CPacketEntityAction.Action.START_SNEAKING));
  94.  
  95. EnumFacing left = null, right = null;
  96.  
  97. if(horizontalFace == EnumFacing.NORTH) {left = EnumFacing.WEST; right = EnumFacing.EAST;} else if(horizontalFace == EnumFacing.EAST) {left = EnumFacing.NORTH; right = EnumFacing.SOUTH;} else if(horizontalFace == EnumFacing.SOUTH) {left = EnumFacing.EAST; right = EnumFacing.WEST;} else if(horizontalFace == EnumFacing.WEST) {left = EnumFacing.SOUTH; right = EnumFacing.NORTH;}
  98. changeItem(redstoneIndex);
  99.  
  100. if(left != null && right != null) {
  101. BlockPos dispenserPos = origin.up().up();
  102. if(isAir(dispenserPos.offset(left))) {
  103. placeBlock(dispenserPos, left.getOpposite(), new Vec3d(dispenserPos.getX(), dispenserPos.getY(), dispenserPos.getZ()));
  104. } else if(isAir(dispenserPos.offset(right))) {
  105. placeBlock(dispenserPos, right.getOpposite(), new Vec3d(dispenserPos.getX(), dispenserPos.getY(), dispenserPos.getZ()));
  106. }
  107. }
  108. mc.player.connection.sendPacket(new CPacketEntityAction(Minecraft.getMinecraft().player, CPacketEntityAction.Action.STOP_SNEAKING));
  109. faceBlock(hopperPos, EnumFacing.UP);
  110. mc.playerController.processRightClickBlock(mc.player, mc.world, hopperPos, EnumFacing.UP, new Vec3d(hopperPos.getX(), hopperPos.getY(), hopperPos.getZ()), EnumHand.MAIN_HAND);
  111. mc.player.swingArm(EnumHand.MAIN_HAND);
  112. this.toggle();
  113. }
  114. } else {
  115. this.toggle();
  116. }
  117. }
  118.  
  119. public boolean checkNulls() {
  120. if(hopperIndex != -1 && shulkerIndex != -1 && redstoneIndex != -1 && dispenserIndex != -1 && obiIndex != -1 && origin != null && horizontalFace != null && hopperPos != null) {
  121. return true;
  122. } else {
  123. return false;
  124. }
  125. }
  126.  
  127. public boolean isAir(BlockPos pos) {
  128. if (getBlock(pos) instanceof BlockAir) {
  129. return true;
  130. } else {
  131. return false;
  132. }
  133. }
  134.  
  135. public Block getBlock(BlockPos pos) {
  136. return mc.world.getBlockState(pos).getBlock();
  137. }
  138.  
  139. public void changeItem(int slot) {
  140. mc.player.connection.sendPacket(new CPacketHeldItemChange(slot));
  141. mc.player.inventory.currentItem = slot;
  142. }
  143.  
  144. public void placeBlock(BlockPos pos, EnumFacing facing, Vec3d vec) {
  145. Vec3d hitVec = new Vec3d(pos.offset(facing)).add(0.5, 0.5, 0.5).add(new Vec3d(facing.getDirectionVec()).scale(0.5));
  146. faceVectorPacketInstant(hitVec);
  147. mc.playerController.processRightClickBlock(Minecraft.getMinecraft().player, Minecraft.getMinecraft().world, pos, facing, vec, EnumHand.MAIN_HAND);
  148. mc.player.swingArm(EnumHand.MAIN_HAND);
  149. }
  150.  
  151. public void faceBlock(BlockPos pos, EnumFacing face) {
  152. Vec3d hitVec = new Vec3d(pos.offset(face)).add(0.5, 0.5, 0.5).add(new Vec3d(face.getDirectionVec()).scale(0.5));
  153. faceVectorPacketInstant(hitVec);
  154. }
  155.  
  156. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement