From 88c53cd92148c3f63f81e7a4dc32dcbbaa965086 Mon Sep 17 00:00:00 2001 From: noil755 Date: Fri, 29 Nov 2019 19:31:05 -0500 Subject: [PATCH] world modules --- .../impl/module/world/AutoToolModule.java | 8 ++--- .../impl/module/world/NukerModule.java | 25 +++++++------- .../impl/module/world/PhaseModule.java | 30 +++++++++-------- .../impl/module/world/SpeedMineModule.java | 33 ++++++++++--------- .../impl/module/world/TimerModule.java | 8 ++--- .../impl/module/world/WaypointsModule.java | 11 +++---- 6 files changed, 61 insertions(+), 54 deletions(-) diff --git a/src/main/java/me/rigamortis/seppuku/impl/module/world/AutoToolModule.java b/src/main/java/me/rigamortis/seppuku/impl/module/world/AutoToolModule.java index e8add2b..f9db398 100644 --- a/src/main/java/me/rigamortis/seppuku/impl/module/world/AutoToolModule.java +++ b/src/main/java/me/rigamortis/seppuku/impl/module/world/AutoToolModule.java @@ -4,7 +4,7 @@ import me.rigamortis.seppuku.api.event.EventStageable; import me.rigamortis.seppuku.api.event.network.EventSendPacket; import me.rigamortis.seppuku.api.event.player.EventPlayerDamageBlock; import me.rigamortis.seppuku.api.module.Module; -import me.rigamortis.seppuku.api.value.old.BooleanValue; +import me.rigamortis.seppuku.api.value.Value; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; @@ -25,7 +25,7 @@ import team.stiff.pomelo.impl.annotated.handler.annotation.Listener; */ public final class AutoToolModule extends Module { - public final BooleanValue silent = new BooleanValue("Silent", new String[]{"Sil"}, true); + public final Value silent = new Value("Silent", new String[]{"Sil"}, "Hold any item and spoof your mining tool.", true); private boolean send; @@ -136,7 +136,7 @@ public final class AutoToolModule extends Module { @Listener public void damageBlock(EventPlayerDamageBlock event) { final Minecraft mc = Minecraft.getMinecraft(); - if (this.silent.getBoolean()) { + if (this.silent.getValue()) { final int slot = getToolInventory(event.getPos()); if (slot != -1) { mc.playerController.curBlockDamageMP += blockStrength(event.getPos(), mc.player.inventoryContainer.getSlot(slot).getStack()); @@ -162,7 +162,7 @@ public final class AutoToolModule extends Module { this.send = false; return; } - if (event.getPacket() instanceof CPacketPlayerDigging && this.silent.getBoolean()) { + if (event.getPacket() instanceof CPacketPlayerDigging && this.silent.getValue()) { final CPacketPlayerDigging packet = (CPacketPlayerDigging) event.getPacket(); if (packet.getAction() == CPacketPlayerDigging.Action.STOP_DESTROY_BLOCK) { this.position = packet.getPosition(); diff --git a/src/main/java/me/rigamortis/seppuku/impl/module/world/NukerModule.java b/src/main/java/me/rigamortis/seppuku/impl/module/world/NukerModule.java index 2bab2ad..1cb1731 100644 --- a/src/main/java/me/rigamortis/seppuku/impl/module/world/NukerModule.java +++ b/src/main/java/me/rigamortis/seppuku/impl/module/world/NukerModule.java @@ -6,8 +6,7 @@ import me.rigamortis.seppuku.api.event.player.EventRightClickBlock; import me.rigamortis.seppuku.api.event.player.EventUpdateWalkingPlayer; import me.rigamortis.seppuku.api.module.Module; import me.rigamortis.seppuku.api.util.MathUtil; -import me.rigamortis.seppuku.api.value.old.NumberValue; -import me.rigamortis.seppuku.api.value.old.OptionalValue; +import me.rigamortis.seppuku.api.value.Value; import net.minecraft.block.Block; import net.minecraft.block.BlockLiquid; import net.minecraft.block.state.IBlockState; @@ -24,9 +23,13 @@ import team.stiff.pomelo.impl.annotated.handler.annotation.Listener; */ public final class NukerModule extends Module { - public final OptionalValue mode = new OptionalValue("Mode", new String[]{"Mode", "M"}, 0, new String[]{"Selection", "All"}); + public final Value mode = new Value("Mode", new String[]{"Mode", "M"}, "The nuker mode to use.", Mode.SELECTION); - public final NumberValue distance = new NumberValue("Distance", new String[]{"Dist", "D"}, 4.5f, Float.class, 0.0f, 5.0f, 0.1f); + private enum Mode { + SELECTION, ALL + } + + public final Value distance = new Value("Distance", new String[]{"Dist", "D"}, "Maximum distance in blocks the nuker will reach.", 4.5f, 0.0f, 5.0f, 0.1f); private Block selected; @@ -42,7 +45,7 @@ public final class NukerModule extends Module { @Override public String getMetaData() { - return this.mode.getSelectedOption(); + return this.mode.getValue().name(); } @Listener @@ -50,11 +53,11 @@ public final class NukerModule extends Module { if (event.getStage() == EventStageable.EventStage.PRE) { BlockPos pos = null; - switch (this.mode.getInt()) { - case 0: + switch (this.mode.getValue()) { + case SELECTION: pos = this.getClosestBlockSelection(); break; - case 1: + case ALL: pos = this.getClosestBlockAll(); break; } @@ -75,7 +78,7 @@ public final class NukerModule extends Module { @Listener public void clickBlock(EventRightClickBlock event) { - if (this.mode.getInt() == 0) { + if (this.mode.getValue() == Mode.SELECTION) { final Block block = Minecraft.getMinecraft().world.getBlockState(event.getPos()).getBlock(); if (block != null && block != this.selected) { this.selected = block; @@ -94,7 +97,7 @@ public final class NukerModule extends Module { private BlockPos getClosestBlockAll() { final Minecraft mc = Minecraft.getMinecraft(); - float maxDist = this.distance.getFloat(); + float maxDist = this.distance.getValue(); BlockPos ret = null; @@ -118,7 +121,7 @@ public final class NukerModule extends Module { private BlockPos getClosestBlockSelection() { final Minecraft mc = Minecraft.getMinecraft(); - float maxDist = this.distance.getFloat(); + float maxDist = this.distance.getValue(); BlockPos ret = null; diff --git a/src/main/java/me/rigamortis/seppuku/impl/module/world/PhaseModule.java b/src/main/java/me/rigamortis/seppuku/impl/module/world/PhaseModule.java index e744d2d..716195c 100644 --- a/src/main/java/me/rigamortis/seppuku/impl/module/world/PhaseModule.java +++ b/src/main/java/me/rigamortis/seppuku/impl/module/world/PhaseModule.java @@ -9,8 +9,7 @@ import me.rigamortis.seppuku.api.event.world.EventAddCollisionBox; import me.rigamortis.seppuku.api.event.world.EventSetOpaqueCube; import me.rigamortis.seppuku.api.module.Module; import me.rigamortis.seppuku.api.util.MathUtil; -import me.rigamortis.seppuku.api.value.old.BooleanValue; -import me.rigamortis.seppuku.api.value.old.OptionalValue; +import me.rigamortis.seppuku.api.value.Value; import net.minecraft.client.Minecraft; import net.minecraft.entity.item.EntityBoat; import net.minecraft.network.play.client.CPacketPlayer; @@ -23,9 +22,13 @@ import team.stiff.pomelo.impl.annotated.handler.annotation.Listener; */ public final class PhaseModule extends Module { - public final OptionalValue mode = new OptionalValue("Mode", new String[]{"Mode", "M"}, 0, new String[]{"Sand", "Packet", "Skip", "NoClip"}); + public final Value mode = new Value("Mode", new String[]{"Mode", "M"}, "The phase mode to use.", Mode.SAND); - public final BooleanValue floor = new BooleanValue("Floor", new String[]{"Fl"}, true); + private enum Mode { + SAND, PACKET, SKIP, NOCLIP + } + + public final Value floor = new Value("Floor", new String[]{"Fl"}, "Prevents falling out of the world if enabled.", true); public PhaseModule() { super("Phase", new String[]{"NoClip"}, "Allows you to glitch through blocks", "NONE", -1, ModuleType.WORLD); @@ -33,7 +36,7 @@ public final class PhaseModule extends Module { @Override public String getMetaData() { - return this.mode.getSelectedOption(); + return this.mode.getValue().name(); } @Listener @@ -72,9 +75,9 @@ public final class PhaseModule extends Module { if (mc.player != null) { - final boolean floor = this.floor.getBoolean() ? event.getPos().getY() >= 1 : true; + final boolean floor = this.floor.getValue() ? event.getPos().getY() >= 1 : true; - if (this.mode.getInt() == 0) { + if (this.mode.getValue() == Mode.SAND) { if (mc.player.getRidingEntity() != null && event.getEntity() == mc.player.getRidingEntity()) { if (mc.gameSettings.keyBindSprint.isKeyDown() && floor) { event.setCanceled(true); @@ -101,7 +104,7 @@ public final class PhaseModule extends Module { } } - if (this.mode.getInt() == 3) { + if (this.mode.getValue() == Mode.NOCLIP) { if (event.getEntity() == mc.player || mc.player.getRidingEntity() != null && event.getEntity() == mc.player.getRidingEntity()) { event.setCanceled(true); } @@ -111,7 +114,7 @@ public final class PhaseModule extends Module { @Listener public void sendPacket(EventSendPacket event) { if (event.getStage() == EventStageable.EventStage.PRE) { - if (this.mode.getInt() == 3) { + if (this.mode.getValue() == Mode.NOCLIP) { if (event.getPacket() instanceof CPacketPlayer && !(event.getPacket() instanceof CPacketPlayer.Position)) { event.setCanceled(true); } @@ -124,7 +127,7 @@ public final class PhaseModule extends Module { if (event.getStage() == EventStageable.EventStage.PRE) { final Minecraft mc = Minecraft.getMinecraft(); - if (this.mode.getInt() == 3) { + if (this.mode.getValue() == Mode.NOCLIP) { mc.player.setVelocity(0, 0, 0); if (mc.gameSettings.keyBindForward.isKeyDown() || mc.gameSettings.keyBindBack.isKeyDown() || mc.gameSettings.keyBindLeft.isKeyDown() || mc.gameSettings.keyBindRight.isKeyDown()) { final double[] speed = MathUtil.directionSpeed(0.06f); @@ -149,8 +152,7 @@ public final class PhaseModule extends Module { if (event.getStage() == EventStageable.EventStage.PRE) { final Minecraft mc = Minecraft.getMinecraft(); - if (this.mode.getInt() == 0) { - + if (this.mode.getValue() == Mode.SAND) { if (mc.gameSettings.keyBindJump.isKeyDown()) { if (mc.player.getRidingEntity() != null && mc.player.getRidingEntity() instanceof EntityBoat) { final EntityBoat boat = (EntityBoat) mc.player.getRidingEntity(); @@ -161,7 +163,7 @@ public final class PhaseModule extends Module { } } - if (this.mode.getInt() == 1) { + if (this.mode.getValue() == Mode.PACKET) { final Vec3d dir = MathUtil.direction(mc.player.rotationYaw); if (dir != null) { if (mc.player.onGround && mc.player.collidedHorizontally) { @@ -171,7 +173,7 @@ public final class PhaseModule extends Module { } } - if (this.mode.getInt() == 2) { + if (this.mode.getValue() == Mode.SKIP) { final Vec3d dir = MathUtil.direction(mc.player.rotationYaw); if (dir != null) { if (mc.player.onGround && mc.player.collidedHorizontally) { diff --git a/src/main/java/me/rigamortis/seppuku/impl/module/world/SpeedMineModule.java b/src/main/java/me/rigamortis/seppuku/impl/module/world/SpeedMineModule.java index 6d15edf..969a8b3 100644 --- a/src/main/java/me/rigamortis/seppuku/impl/module/world/SpeedMineModule.java +++ b/src/main/java/me/rigamortis/seppuku/impl/module/world/SpeedMineModule.java @@ -6,8 +6,7 @@ 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.module.Module; -import me.rigamortis.seppuku.api.value.old.BooleanValue; -import me.rigamortis.seppuku.api.value.old.OptionalValue; +import me.rigamortis.seppuku.api.value.Value; import net.minecraft.block.Block; import net.minecraft.block.state.IBlockState; import net.minecraft.client.Minecraft; @@ -22,10 +21,14 @@ import team.stiff.pomelo.impl.annotated.handler.annotation.Listener; */ public final class SpeedMineModule extends Module { - public final OptionalValue mode = new OptionalValue("Mode", new String[]{"Mode", "M"}, 0, new String[]{"Packet", "Damage", "Instant"}); + public final Value mode = new Value("Mode", new String[]{"Mode", "M"}, "The speed-mine mode to use.", Mode.PACKET); - public final BooleanValue reset = new BooleanValue("Reset", new String[]{"Res"}, true); - public final BooleanValue doubleBreak = new BooleanValue("DoubleBreak", new String[]{"DoubleBreak", "Double", "DB"}, false); + private enum Mode { + PACKET, DAMAGE, INSTANT + } + + public final Value reset = new Value("Reset", new String[]{"Res"}, "Stops current block destroy damage from resetting if enabled.", true); + public final Value doubleBreak = new Value("DoubleBreak", new String[]{"DoubleBreak", "Double", "DB"}, "Mining a block will also mine the block above it, if enabled.", false); public SpeedMineModule() { super("SpeedMine", new String[]{"FastMine"}, "Allows you to break blocks faster", "NONE", -1, ModuleType.WORLD); @@ -33,7 +36,7 @@ public final class SpeedMineModule extends Module { @Override public String getMetaData() { - return this.mode.getSelectedOption(); + return this.mode.getValue().name(); } @Listener @@ -41,7 +44,7 @@ public final class SpeedMineModule extends Module { if (event.getStage() == EventStageable.EventStage.PRE) { Minecraft.getMinecraft().playerController.blockHitDelay = 0; - if (this.reset.getBoolean() && Minecraft.getMinecraft().gameSettings.keyBindUseItem.isKeyDown()) { + if (this.reset.getValue() && Minecraft.getMinecraft().gameSettings.keyBindUseItem.isKeyDown()) { Minecraft.getMinecraft().playerController.isHittingBlock = false; } } @@ -49,14 +52,14 @@ public final class SpeedMineModule extends Module { @Listener public void resetBlockDamage(EventResetBlockRemoving event) { - if (this.reset.getBoolean()) { + if (this.reset.getValue()) { event.setCanceled(true); } } @Listener public void clickBlock(EventClickBlock event) { - if (this.reset.getBoolean()) { + if (this.reset.getValue()) { if (Minecraft.getMinecraft().playerController.curBlockDamageMP > 0.1f) { Minecraft.getMinecraft().playerController.isHittingBlock = true; } @@ -69,23 +72,23 @@ public final class SpeedMineModule extends Module { final Minecraft mc = Minecraft.getMinecraft(); - if (this.reset.getBoolean()) { + if (this.reset.getValue()) { mc.playerController.isHittingBlock = false; } - switch (this.mode.getInt()) { - case 0: + switch (this.mode.getValue()) { + case PACKET: mc.player.swingArm(EnumHand.MAIN_HAND); mc.player.connection.sendPacket(new CPacketPlayerDigging(CPacketPlayerDigging.Action.START_DESTROY_BLOCK, event.getPos(), event.getFace())); mc.player.connection.sendPacket(new CPacketPlayerDigging(CPacketPlayerDigging.Action.STOP_DESTROY_BLOCK, event.getPos(), event.getFace())); event.setCanceled(true); break; - case 1: + case DAMAGE: if (mc.playerController.curBlockDamageMP >= 0.7f) { mc.playerController.curBlockDamageMP = 1.0f; } break; - case 2: + case INSTANT: mc.player.swingArm(EnumHand.MAIN_HAND); mc.player.connection.sendPacket(new CPacketPlayerDigging(CPacketPlayerDigging.Action.START_DESTROY_BLOCK, event.getPos(), event.getFace())); mc.player.connection.sendPacket(new CPacketPlayerDigging(CPacketPlayerDigging.Action.STOP_DESTROY_BLOCK, event.getPos(), event.getFace())); @@ -95,7 +98,7 @@ public final class SpeedMineModule extends Module { } } - if (this.doubleBreak.getBoolean()) { + if (this.doubleBreak.getValue()) { final BlockPos above = event.getPos().add(0, 1, 0); final Minecraft mc = Minecraft.getMinecraft(); diff --git a/src/main/java/me/rigamortis/seppuku/impl/module/world/TimerModule.java b/src/main/java/me/rigamortis/seppuku/impl/module/world/TimerModule.java index 2be5f43..60b8d65 100644 --- a/src/main/java/me/rigamortis/seppuku/impl/module/world/TimerModule.java +++ b/src/main/java/me/rigamortis/seppuku/impl/module/world/TimerModule.java @@ -3,7 +3,7 @@ package me.rigamortis.seppuku.impl.module.world; import me.rigamortis.seppuku.api.event.EventStageable; import me.rigamortis.seppuku.api.event.player.EventPlayerUpdate; import me.rigamortis.seppuku.api.module.Module; -import me.rigamortis.seppuku.api.value.old.NumberValue; +import me.rigamortis.seppuku.api.value.Value; import net.minecraft.client.Minecraft; import team.stiff.pomelo.impl.annotated.handler.annotation.Listener; @@ -13,7 +13,7 @@ import team.stiff.pomelo.impl.annotated.handler.annotation.Listener; */ public final class TimerModule extends Module { - public final NumberValue speed = new NumberValue("Speed", new String[]{"Spd"}, 4.0f, Float.class, 0.0f, 10.0f, 0.1f); + public final Value speed = new Value("Speed", new String[]{"Spd"}, "Tick-rate multiplier. [(20tps/second) * (this value)]", 4.0f, 0.0f, 10.0f, 0.1f); public TimerModule() { super("Timer", new String[] {"Time", "Tmr"}, "Speeds up the client tick rate", "NONE", -1, ModuleType.WORLD); @@ -27,13 +27,13 @@ public final class TimerModule extends Module { @Override public String getMetaData() { - return "" + this.speed.getFloat(); + return "" + this.speed.getValue(); } @Listener public void onUpdate(EventPlayerUpdate event) { if(event.getStage() == EventStageable.EventStage.PRE) { - Minecraft.getMinecraft().timer.tickLength = 50.0f / speed.getFloat(); + Minecraft.getMinecraft().timer.tickLength = 50.0f / speed.getValue(); } } diff --git a/src/main/java/me/rigamortis/seppuku/impl/module/world/WaypointsModule.java b/src/main/java/me/rigamortis/seppuku/impl/module/world/WaypointsModule.java index 67480a4..dc04874 100644 --- a/src/main/java/me/rigamortis/seppuku/impl/module/world/WaypointsModule.java +++ b/src/main/java/me/rigamortis/seppuku/impl/module/world/WaypointsModule.java @@ -6,8 +6,7 @@ import me.rigamortis.seppuku.api.module.Module; import me.rigamortis.seppuku.api.util.ColorUtil; import me.rigamortis.seppuku.api.util.GLUProjection; import me.rigamortis.seppuku.api.util.RenderUtil; -import me.rigamortis.seppuku.api.value.old.BooleanValue; -import me.rigamortis.seppuku.api.value.old.NumberValue; +import me.rigamortis.seppuku.api.value.Value; import net.minecraft.client.Minecraft; import team.stiff.pomelo.impl.annotated.handler.annotation.Listener; @@ -19,9 +18,9 @@ import java.text.DecimalFormat; */ public final class WaypointsModule extends Module { - public final BooleanValue tracers = new BooleanValue("Tracers", new String[]{"Tracer", "Trace"}, false); + public final Value tracers = new Value("Tracers", new String[]{"Tracer", "Trace"}, "Draws a line from the center of the screen to each waypoint.", false); - public final NumberValue width = new NumberValue("Width", new String[]{"Wid"}, 0.5f, Float.class, 0.0f, 5.0f, 0.1f); + public final Value width = new Value("Width", new String[]{"Wid"}, "Pixel width of each tracer line.", 0.5f, 0.0f, 5.0f, 0.1f); public WaypointsModule() { super("Waypoints", new String[] {"Wp", "Waypoint"}, "Highlights waypoints", "NONE", -1, ModuleType.WORLD); @@ -45,11 +44,11 @@ public final class WaypointsModule extends Module { mc.fontRenderer.drawStringWithShadow(name, (float) projection.getX() - mc.fontRenderer.getStringWidth(name) / 2, (float) projection.getY() - mc.fontRenderer.FONT_HEIGHT / 2, waypointData.getColor()); } - if(this.tracers.getBoolean()) { + if (this.tracers.getValue()) { final GLUProjection.Projection screen = GLUProjection.getInstance().project(waypointData.getX() - mc.getRenderManager().viewerPosX, waypointData.getY() - mc.getRenderManager().viewerPosY, waypointData.getZ() - mc.getRenderManager().viewerPosZ, GLUProjection.ClampMode.NONE, true); if (screen != null) { - RenderUtil.drawLine((float) screen.getX(), (float) screen.getY(), event.getScaledResolution().getScaledWidth() / 2, event.getScaledResolution().getScaledHeight() / 2, this.width.getFloat(), -1); + RenderUtil.drawLine((float) screen.getX(), (float) screen.getY(), event.getScaledResolution().getScaledWidth() / 2, event.getScaledResolution().getScaledHeight() / 2, this.width.getValue(), -1); } } }