Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package de.zickzack.base.modules.impl;
- import java.util.ArrayList;
- import de.zickzack.base.modules.Module;
- import net.minecraft.block.BlockAir;
- import net.minecraft.block.BlockGlass;
- import net.minecraft.block.BlockLeavesBase;
- import net.minecraft.block.state.IBlockState;
- import net.minecraft.entity.player.EntityPlayer;
- import net.minecraft.network.play.client.C03PacketPlayer;
- import net.minecraft.network.play.client.C0APacketAnimation;
- import net.minecraft.util.BlockPos;
- import net.minecraft.util.EnumFacing;
- import net.minecraft.util.Vec3;
- public class Tower extends Module{
- private int delay;
- private boolean jump;
- public Tower() {
- super("Tower", "I", 0xFFFFFF, "Tower dich");
- }
- public void onUpdate()
- {
- EntityPlayer p = mc.thePlayer;
- if (this.delay > 2) {
- this.delay -= 1;
- }
- if ((p.onGround) && (this.delay <= 2)) {
- this.jump = true;
- }
- if ((this.jump) && (this.delay <= 80))
- {
- BlockPos above = new BlockPos(mc.thePlayer.posX, mc.thePlayer.posY + 2.0D, mc.thePlayer.posZ);
- IBlockState aboveState = p.worldObj.getBlockState(above);
- if ((mc.thePlayer.onGround) && (
- ((aboveState.getBlock() instanceof BlockAir)) || ((aboveState.getBlock() instanceof BlockLeavesBase)) ||
- ((aboveState.getBlock() instanceof BlockGlass))))
- {
- mc.thePlayer.motionY = 0.2D;
- p.setPositionAndUpdate(mc.thePlayer.posX, mc.thePlayer.posY + 1.0D, mc.thePlayer.posZ);
- }
- ArrayList<BlockPos> collisionBlocks = getCollisionBlocks();
- for (BlockPos pos : collisionBlocks)
- {
- IBlockState state = p.worldObj.getBlockState(pos);
- if ((state.getBlock() instanceof BlockAir))
- {
- mc.thePlayer.sendQueue.addToSendQueue(new C03PacketPlayer.C04PacketPlayerPosition(mc.thePlayer.posX,
- mc.thePlayer.posY, mc.thePlayer.posZ, false));
- mc.thePlayer.sendQueue.netManager
- .sendPacket(new C03PacketPlayer.C05PacketPlayerLook(0.0F, 90.0F, true));
- mc.playerController.func_178890_a(mc.thePlayer, mc.theWorld,
- mc.thePlayer.inventory.getCurrentItem(), pos.add(0, -1, 0), EnumFacing.UP,
- new Vec3(pos.getX(), pos.getY(), pos.getZ()));
- mc.thePlayer.swingItem();
- mc.thePlayer.sendQueue.addToSendQueue(new C0APacketAnimation());
- this.delay = 1;
- }
- }
- }
- }
- public void onEnable()
- {
- mc.gameSettings.keyBindSneak.pressed = true;
- super.onEnable();
- }
- public void onDisable()
- {
- mc.timer.timerSpeed = 1.0F;
- mc.gameSettings.keyBindSneak.pressed = false;
- super.onDisable();
- }
- private ArrayList<BlockPos> getCollisionBlocks()
- {
- ArrayList<BlockPos> collidedBlocks = new ArrayList();
- EntityPlayer p = mc.thePlayer;
- for (int var3 = (int)Math.floor(p.posX); var3 <= (int)Math.floor(p.posX); var3++) {
- for (int var4 = (int)p.posY - 1; var4 <= (int)p.posY; var4++) {
- for (int var5 = (int)Math.floor(p.posZ); var5 <= (int)Math.floor(p.posZ); var5++)
- {
- BlockPos blockPos = new BlockPos(var3, var4, var5);
- try
- {
- if ((var4 > p.posY - 2.0D) && (var4 <= p.posY - 1.0D)) {
- collidedBlocks.add(blockPos);
- }
- }
- catch (Throwable localThrowable) {}
- }
- }
- }
- return collidedBlocks;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement