Added HAV0X Break
This commit is contained in:
parent
b3ff950abc
commit
7ad28944a4
|
@ -134,6 +134,12 @@ public final class NukerModule extends Module {
|
|||
} else {
|
||||
if (this.currentPos != null) {
|
||||
if (this.rotationTask.isOnline()) {
|
||||
if (SpeedMineModule.autoPos != null) {
|
||||
if (this.currentPos.equals(SpeedMineModule.autoPos)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
if (this.canBreak(this.currentPos)) {
|
||||
mc.playerController.onPlayerDamageBlock(this.currentPos, mc.player.getHorizontalFacing());
|
||||
mc.player.swingArm(EnumHand.MAIN_HAND);
|
||||
|
@ -180,6 +186,9 @@ public final class NukerModule extends Module {
|
|||
for (int revX = 0; revX <= 1; revX++, x = -x) {
|
||||
for (int revZ = 0; revZ <= 1; revZ++, z = -z) {
|
||||
final BlockPos pos = new BlockPos(mc.player.posX + x, mc.player.posY + y, mc.player.posZ + z);
|
||||
if (pos.equals(SpeedMineModule.autoPos)) {
|
||||
continue;
|
||||
}
|
||||
if ((mc.world.getBlockState(pos).getBlock() != Blocks.AIR &&
|
||||
!(mc.world.getBlockState(pos).getBlock() instanceof BlockLiquid)) &&
|
||||
this.canBreak(pos)) {
|
||||
|
@ -203,6 +212,9 @@ public final class NukerModule extends Module {
|
|||
for (float z = maxDist; z >= -maxDist; z--) {
|
||||
final BlockPos pos = new BlockPos(mc.player.posX + x, mc.player.posY + y, mc.player.posZ + z);
|
||||
final double dist = mc.player.getDistance(pos.getX(), pos.getY(), pos.getZ());
|
||||
if (pos.equals(SpeedMineModule.autoPos)) {
|
||||
continue;
|
||||
}
|
||||
if (dist <= maxDist && (mc.world.getBlockState(pos).getBlock() != Blocks.AIR && !(mc.world.getBlockState(pos).getBlock() instanceof BlockLiquid)) && canBreak(pos)) {
|
||||
if (selection) {
|
||||
if ((this.selected == null) || !mc.world.getBlockState(pos).getBlock().equals(this.selected)) {
|
||||
|
|
|
@ -1,11 +1,16 @@
|
|||
package me.rigamortis.seppuku.impl.module.world;
|
||||
|
||||
import java.awt.*;
|
||||
import me.rigamortis.seppuku.Seppuku;
|
||||
import me.rigamortis.seppuku.api.event.EventStageable;
|
||||
import me.rigamortis.seppuku.api.event.player.EventClickBlock;
|
||||
import me.rigamortis.seppuku.api.event.player.EventPlayerDamageBlock;
|
||||
import me.rigamortis.seppuku.api.event.player.EventPlayerUpdate;
|
||||
import me.rigamortis.seppuku.api.event.player.EventResetBlockRemoving;
|
||||
import me.rigamortis.seppuku.api.event.render.EventRender3D;
|
||||
import me.rigamortis.seppuku.api.module.Module;
|
||||
import me.rigamortis.seppuku.api.util.ColorUtil;
|
||||
import me.rigamortis.seppuku.api.util.RenderUtil;
|
||||
import me.rigamortis.seppuku.api.value.Value;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
|
@ -14,6 +19,7 @@ import net.minecraft.init.Blocks;
|
|||
import net.minecraft.network.play.client.CPacketPlayerDigging;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.EnumHand;
|
||||
import net.minecraft.util.math.AxisAlignedBB;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import team.stiff.pomelo.impl.annotated.handler.annotation.Listener;
|
||||
|
||||
|
@ -30,11 +36,15 @@ public final class SpeedMineModule extends Module {
|
|||
}
|
||||
|
||||
public BlockPos seqPos;
|
||||
public static BlockPos autoPos;
|
||||
public EnumFacing seqDir;
|
||||
final Minecraft mc = Minecraft.getMinecraft();
|
||||
|
||||
public final Value<Boolean> reset = new Value<Boolean>("Reset", new String[]{"Res"}, "Stops current block destroy damage from resetting if enabled.", true);
|
||||
public final Value<Boolean> doubleBreak = new Value<Boolean>("DoubleBreak", new String[]{"DoubleBreak", "Double", "DB"}, "Mining a block will also mine the block above it, if enabled.", false);
|
||||
public final Value<Boolean> auto = new Value<Boolean>("Auto", new String[]{"Res"}, "Auto sets the current mode to allow for multimining", true);
|
||||
|
||||
|
||||
|
||||
public SpeedMineModule() {
|
||||
super("SpeedMine", new String[]{"FastMine"}, "Allows you to break blocks faster", "NONE", -1, ModuleType.WORLD);
|
||||
|
@ -76,6 +86,25 @@ public final class SpeedMineModule extends Module {
|
|||
}
|
||||
}
|
||||
|
||||
@Listener
|
||||
public void onRender(EventRender3D event) {
|
||||
if (!auto.getValue()) return;
|
||||
if (autoPos != null && mc.world.getBlockState(autoPos).getBlock() != Blocks.AIR) {
|
||||
RenderUtil.begin3D();
|
||||
final AxisAlignedBB bb = new AxisAlignedBB(
|
||||
autoPos.getX() - mc.getRenderManager().viewerPosX,
|
||||
autoPos.getY() - mc.getRenderManager().viewerPosY,
|
||||
autoPos.getZ() - mc.getRenderManager().viewerPosZ,
|
||||
autoPos.getX() + 1 - mc.getRenderManager().viewerPosX,
|
||||
autoPos.getY() + 1 - mc.getRenderManager().viewerPosY,
|
||||
autoPos.getZ() + 1 - mc.getRenderManager().viewerPosZ
|
||||
);
|
||||
RenderUtil.drawBoundingBox(bb, 2f, new Color(255,255,255).getRGB());
|
||||
RenderUtil.end3D();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Listener
|
||||
public void damageBlock(EventPlayerDamageBlock event) {
|
||||
if (canBreak(event.getPos())) {
|
||||
|
@ -94,6 +123,9 @@ public final class SpeedMineModule extends Module {
|
|||
case DAMAGE:
|
||||
if (mc.playerController.curBlockDamageMP >= 0.7f) {
|
||||
mc.playerController.curBlockDamageMP = 1.0f;
|
||||
if (auto.getValue()) {
|
||||
mode.setValue(Mode.INSTANT);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case INSTANT:
|
||||
|
@ -102,6 +134,10 @@ public final class SpeedMineModule extends Module {
|
|||
mc.player.connection.sendPacket(new CPacketPlayerDigging(CPacketPlayerDigging.Action.STOP_DESTROY_BLOCK, event.getPos(), event.getFace()));
|
||||
mc.playerController.onPlayerDestroyBlock(event.getPos());
|
||||
mc.world.setBlockToAir(event.getPos());
|
||||
if (auto.getValue()) {
|
||||
autoPos = event.getPos();
|
||||
mode.setValue(Mode.DAMAGE);
|
||||
}
|
||||
break;
|
||||
case SEQUENTIAL:
|
||||
mc.player.swingArm(EnumHand.MAIN_HAND);
|
||||
|
|
Loading…
Reference in New Issue