This commit is contained in:
jackh 2025-03-18 10:02:11 -07:00
parent a6123a902b
commit 3f6fb92f1b
21 changed files with 589 additions and 263 deletions

View File

@ -2,6 +2,7 @@ package keystrokesmod.mixin.impl.entity;
import keystrokesmod.event.StrafeEvent;
import keystrokesmod.module.ModuleManager;
import keystrokesmod.module.impl.player.Fences;
import keystrokesmod.module.impl.player.Safewalk;
import net.minecraft.client.Minecraft;
import net.minecraft.entity.Entity;
@ -32,6 +33,11 @@ public abstract class MixinEntity {
return true;
}
}
if (entity == mc.thePlayer) {
if (Fences.canFence()) {
return true;
}
}
return flag;
}

View File

@ -74,6 +74,8 @@ public class ModuleManager {
public static Blink blink;
public static Velocity velocity;
public static TargetStrafe targetStrafe;
public static Criticals criticals;
public static Fences fences;
public void register() {
this.addModule(autoClicker = new AutoClicker());
@ -173,6 +175,8 @@ public class ModuleManager {
this.addModule(new Shaders());
this.addModule(ctwFly = new CTWFly());
this.addModule(targetStrafe = new TargetStrafe());
this.addModule(criticals = new Criticals());
this.addModule(fences = new Fences());
antiBot.enable();
Collections.sort(this.modules, Comparator.comparing(Module::getName));
}

View File

@ -0,0 +1,115 @@
package keystrokesmod.module.impl.combat;
import keystrokesmod.Raven;
import keystrokesmod.clickgui.ClickGui;
import keystrokesmod.event.PreMotionEvent;
import keystrokesmod.event.PreUpdateEvent;
import keystrokesmod.event.SendPacketEvent;
import keystrokesmod.mixin.impl.accessor.IAccessorMinecraft;
import keystrokesmod.module.Module;
import keystrokesmod.module.ModuleManager;
import keystrokesmod.module.impl.client.Settings;
import keystrokesmod.module.impl.minigames.SkyWars;
import keystrokesmod.module.impl.movement.LongJump;
import keystrokesmod.module.impl.movement.NoSlow;
import keystrokesmod.module.impl.world.AntiBot;
import keystrokesmod.module.setting.impl.ButtonSetting;
import keystrokesmod.module.setting.impl.SliderSetting;
import keystrokesmod.utility.*;
import net.minecraft.client.gui.GuiChat;
import net.minecraft.client.settings.KeyBinding;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityCreature;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityArmorStand;
import net.minecraft.entity.monster.EntityGiantZombie;
import net.minecraft.entity.monster.EntityIronGolem;
import net.minecraft.entity.monster.EntitySilverfish;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemSword;
import net.minecraft.network.Packet;
import net.minecraft.network.handshake.client.C00Handshake;
import net.minecraft.network.login.client.C00PacketLoginStart;
import net.minecraft.network.play.client.*;
import net.minecraft.util.*;
import net.minecraftforge.client.event.MouseEvent;
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
import net.minecraftforge.fml.common.eventhandler.EventPriority;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent;
public class Criticals extends Module {
private SliderSetting mode;
private String[] modes = new String[] { "Packet", "Offset" };
private int ticks0, ticks1, timeout;
private boolean canOffset;
public Criticals() {
super("Criticals", category.combat);
this.registerSetting(mode = new SliderSetting("Mode", 0, modes));
}
@SubscribeEvent(priority = EventPriority.HIGH)
public void onSendPacket(SendPacketEvent e) {
if (!Utils.nullCheck()) {
return;
}
Packet packet = e.getPacket();
if (packet instanceof C02PacketUseEntity) {
canOffset = true;
timeout = 8;
}
}
@SubscribeEvent
public void onPreMotion(PreMotionEvent e) {
if (timeout > 0) {
--timeout;
}
if (NoSlow.noSlowing) {
timeout = 0;
}
if (mode.getInput() == 0 && timeout > 0) {
++ticks0;
if (ticks0 == 1) {
e.setOnGround(false);
if (Raven.debug) {
Utils.sendModuleMessage(this, "ground = false");
}
}
else if (ticks0 >= 2) {
ticks0 = 0;
}
}
else {
ticks0 = 0;
}
if (mode.getInput() == 1 && timeout > 0 && !mc.thePlayer.onGround) {
++ticks1;
if (ticks1 == 1) {
e.setPosY(e.getPosY() - 0.0001);
if (Raven.debug) {
Utils.sendModuleMessage(this, "-offset");
}
}
else if (ticks1 >= 2) {
e.setPosY(e.getPosY() + 0.0001);
ticks1 = 0;
if (Raven.debug) {
Utils.sendModuleMessage(this, "+offset");
}
}
}
else {
ticks1 = 0;
}
}
}

View File

@ -53,6 +53,7 @@ public class KillAura extends Module {
private SliderSetting swingRange;
private SliderSetting blockRange;
private SliderSetting rotationMode;
private SliderSetting rotateMode;
private SliderSetting rotationSmoothing;
private SliderSetting sortMode;
private SliderSetting switchDelay;
@ -72,8 +73,9 @@ public class KillAura extends Module {
private String[] autoBlockModes = new String[] { "Manual", "Vanilla", "Partial", "Interact A", "Interact B" };
private String[] interactAModes = new String[] { "10", "5", "6.5" };
private String[] interactBModes = new String[] { "10", "7", "8.5" };
private String[] interactBModes = new String[] { "10", "7", "9.5" };
private String[] rotationModes = new String[] { "Silent", "Lock view", "None" };
private String[] rotateModes = new String[] { "Attacking", "Swinging" };
private String[] sortModes = new String[] { "Distance", "Health", "Hurttime", "Yaw" };
// autoblock related
@ -87,7 +89,7 @@ public class KillAura extends Module {
private List<Entity> hostileMobs = new ArrayList<>();
private Map<Integer, Boolean> golems = new HashMap<>(); // entity id, is teammate
public boolean justUnTargeted;
private final double reachVal = 0.007;
private final double reachVal = 0.008;
// blocking related
public boolean blockingClient;
@ -125,6 +127,7 @@ public class KillAura extends Module {
private int disableCTicks;
public boolean blocked;
private int lastAttack;
public KillAura() {
super("KillAura", category.combat);
@ -137,6 +140,7 @@ public class KillAura extends Module {
this.registerSetting(swingRange = new SliderSetting("Range (swing)", 3.3, 3.0, 8.0, 0.05));
this.registerSetting(blockRange = new SliderSetting("Range (block)", 6.0, 3.0, 12.0, 0.05));
this.registerSetting(rotationMode = new SliderSetting("Rotation mode", 0, rotationModes));
this.registerSetting(rotateMode = new SliderSetting("Rotate", 0, rotateModes));
this.registerSetting(rotationSmoothing = new SliderSetting("Rotation smoothing", 0, 0, 10, 1));
this.registerSetting(sortMode = new SliderSetting("Sort mode", 0, sortModes));
this.registerSetting(switchDelay = new SliderSetting("Switch delay", "ms", 200.0, 50.0, 1000.0, 25.0));
@ -179,7 +183,7 @@ public class KillAura extends Module {
public void onDisable() {
handleBlocking(false);
hitMap.clear();
if (blinkAutoBlock() || autoBlockMode.getInput() == 2) { // interact autoblock
if (autoBlockOverride()) { // interact autoblock
resetBlinkState(true);
}
blinking.set(false);
@ -232,6 +236,9 @@ public class KillAura extends Module {
if (!Utils.nullCheck()) {
return;
}
if (lastAttack > 0) {
--lastAttack;
}
if (target == null || !manualBlock() && manualBlock.isToggled()) {
if (ModuleUtils.swapTick == 0 && !ModuleUtils.isBlocked) {
interactTicks = firstEdge = 1;
@ -442,7 +449,7 @@ public class KillAura extends Module {
return;
}
if (rotationMode.getInput() != 2) {
if (inRange(target, attackRange.getInput() - reachVal)) {
if (inRange(target, attackRange.getInput() - reachVal) || rotateMode.getInput() == 1 && inRange(target, swingRange.getInput())) {
float[] rotations = RotationUtils.getRotations(target, e.getYaw(), e.getPitch());
float[] smoothedRotations = getRotationsSmoothed(rotations);
if (rotationMode.getInput() == 0) { // silent
@ -468,6 +475,9 @@ public class KillAura extends Module {
}
public void onUpdate() {
if (attackRange.getInput() > swingRange.getInput()) {
swingRange.setValue(attackRange.getInput());
}
if (rotationMode.getInput() == 1 && target != null) {
if (inRange(target, attackRange.getInput() - reachVal)) {
float[] rotations = RotationUtils.getRotations(target, mc.thePlayer.rotationYaw, mc.thePlayer.rotationPitch);
@ -729,7 +739,7 @@ public class KillAura extends Module {
}
}
if (!attackTargets.isEmpty()) {
if (!attackTargets.isEmpty() && lastAttack > 0) {
// Switch aura
int ticksExisted = mc.thePlayer.ticksExisted;
int switchDelayTicks = (int) (switchDelay.getInput() / 50);
@ -765,24 +775,24 @@ public class KillAura extends Module {
private void handleSwingAndAttack(double distance, boolean swung) {
boolean inAttackDistance = inRange(target, attackRange.getInput() - reachVal);
if ((distance <= swingRange.getInput() || inAttackDistance) && shouldAttack && !swung) { // swing if in swing range or needs to attack
if (!mc.thePlayer.isBlocking() || !disableWhileBlocking.isToggled()) {
if (ModuleManager.bedAura.rotate) {
return;
}
if (!isLookingAtEntity()) {
return;
}
if ((distance <= swingRange.getInput() || inAttackDistance && shouldAttack)) { // swing if in swing range or needs to attack
if ((!mc.thePlayer.isBlocking() || autoBlockMode.getInput() > 0 && manualBlock()) || !disableWhileBlocking.isToggled()) {
swingItem();
}
}
if (inAttackDistance) {
attackingEntity = target;
if (shouldAttack) {
shouldAttack = false;
if (ModuleManager.bedAura.rotate) {
return;
}
if (!isLookingAtEntity()) {
return;
}
attackingEntity = target;
if (!mc.thePlayer.isBlocking() || !disableWhileBlocking.isToggled()) {
swingItem();
mc.playerController.attackEntity(mc.thePlayer, target);
lastAttack = (int) (switchDelay.getInput() / 50);
}
}
}
@ -840,7 +850,7 @@ public class KillAura extends Module {
}
public boolean autoBlockOverride() {
return (blinkAutoBlock() || autoBlockMode.getInput() == 2) && Utils.holdingSword() && manualBlock();
return (blinkAutoBlock() || autoBlockMode.getInput() == 1 || autoBlockMode.getInput() == 2) && Utils.holdingSword() && manualBlock();
}
public boolean blinkAutoBlock() {
@ -873,12 +883,23 @@ public class KillAura extends Module {
if (ModuleManager.bedAura.stopAutoblock) {
resetBlinkState(false);
blockingServer = false;
interactTicks = 0;
return;
}
lag = true;
switch ((int) autoBlockMode.getInput()) {
case 1: // vanilla
if (interactTicks == 0) {
handleInteractAndAttack(distance, true, true, swung);
sendBlockPacket();
}
else {
handleInteractAndAttack(distance, true, true, swung);
}
interactTicks++;
break;
case 2: // partial
if (interactTicks >= 3) {
if (interactTicks >= 4) {
interactTicks = 0;
}
interactTicks++;
@ -969,6 +990,9 @@ public class KillAura extends Module {
interactTicks++;
firstEdge++;
if (firstCycle) {
if (interactTicks > 2) {
interactTicks = 0;
}
switch (interactTicks) {
case 1:
blinking.set(true);
@ -986,6 +1010,9 @@ public class KillAura extends Module {
}
}
else {
if (interactTicks > 4) {
interactTicks = 0;
}
switch (interactTicks) {
case 1:
blinking.set(true);
@ -1066,17 +1093,8 @@ public class KillAura extends Module {
case 1:
blinking.set(true);
if (ModuleUtils.isBlocked) {
if (firstGyatt == 2) {
setSwapSlot();
swapped = true;
}
else {
sendUnBlockPacket();
}
firstGyatt++;
if (firstGyatt > 3) {
firstGyatt = 0;
}
setSwapSlot();
swapped = true;
}
break;
case 2:
@ -1087,9 +1105,12 @@ public class KillAura extends Module {
handleInteractAndAttack(distance, true, true, swung);
sendBlockPacket();
releasePackets(); // release
break;
case 3:
firstCycle = false;
interactTicks = 0;
++firstEdge;
if (firstEdge > 5) {
firstCycle = false;
firstEdge = 0;
}
break;
}
}
@ -1102,17 +1123,8 @@ public class KillAura extends Module {
case 1:
blinking.set(true);
if (ModuleUtils.isBlocked) {
if (firstEdge == 0) {
setSwapSlot();
swapped = true;
}
else {
sendUnBlockPacket();
}
firstEdge++;
if (firstEdge > 3) {
firstEdge = 0;
}
setSwapSlot();
swapped = true;
}
break;
case 2:
@ -1123,6 +1135,8 @@ public class KillAura extends Module {
handleInteractAndAttack(distance, true, true, swung);
sendBlockPacket();
releasePackets(); // release
break;
case 3:
firstCycle = true;
interactTicks = 0;
break;
@ -1371,15 +1385,15 @@ public class KillAura extends Module {
}
public void resetBlinkState(boolean unblock) {
//Utils.print("blink state reset");
blockingServer = false;
blinking.set(false);
releasePackets();
if (Raven.packetsHandler.playerSlot.get() != mc.thePlayer.inventory.currentItem && swapped) {
if (Raven.packetsHandler.playerSlot.get() != mc.thePlayer.inventory.currentItem) {
mc.thePlayer.sendQueue.addToSendQueue(new C09PacketHeldItemChange(mc.thePlayer.inventory.currentItem));
Raven.packetsHandler.playerSlot.set(mc.thePlayer.inventory.currentItem);
ModuleUtils.isBlocked = true;
}
else if (unblock && ModuleUtils.isBlocked && !ModuleManager.scaffold.isEnabled) {
if (unblock) {
unBlockDelay = 1;
sendUnBlock = true;
}
@ -1393,7 +1407,6 @@ public class KillAura extends Module {
return;
}
mc.thePlayer.sendQueue.addToSendQueue(new C07PacketPlayerDigging(C07PacketPlayerDigging.Action.RELEASE_USE_ITEM, BlockPos.ORIGIN, DOWN));
//Utils.print("Unblock");
}
private void releasePackets() {
@ -1472,7 +1485,7 @@ public class KillAura extends Module {
}
private boolean manualBlock() {
return (!manualBlock.isToggled() || Mouse.isButtonDown(1) && Utils.tabbedIn()) && Utils.holdingSword();
return (!manualBlock.isToggled() || Mouse.isButtonDown(1) && Utils.tabbedIn() && Utils.holdingSword());
}
static class KillAuraTarget {

View File

@ -30,12 +30,12 @@ public class Velocity extends Module {
private ButtonSetting zzWhileNotTargeting;
public ButtonSetting allowSelfFireball;
public static ButtonSetting reverseDebug;
private KeySetting switchToReverse, switchToHypixel;
private KeySetting switchToReverse, switchToPacket;
private boolean stopFBvelo;
public boolean disableVelo;
private long delay;
private String[] velocityModesString = new String[] { "Normal", "Hypixel", "Reverse" };
private String[] velocityModesString = new String[] { "Normal", "Packet", "Reverse" };
public Velocity() {
@ -61,7 +61,7 @@ public class Velocity extends Module {
this.registerSetting(allowSelfFireball = new ButtonSetting("Allow self fireball", false));
this.registerSetting(switchToReverse = new KeySetting("Switch to reverse", Keyboard.KEY_SPACE));
this.registerSetting(switchToHypixel = new KeySetting("Switch to hypixel", Keyboard.KEY_SPACE));
this.registerSetting(switchToPacket = new KeySetting("Switch to packet", Keyboard.KEY_SPACE));
this.registerSetting(reverseDebug = new ButtonSetting("Show reverse debug messages", false));
}
@ -75,7 +75,7 @@ public class Velocity extends Module {
this.zzWhileNotTargeting.setVisible(velocityModes.getInput() == 1, this);
this.switchToReverse.setVisible(velocityModes.getInput() == 1, this);
this.switchToHypixel.setVisible(velocityModes.getInput() == 2, this);
this.switchToPacket.setVisible(velocityModes.getInput() == 2, this);
@ -100,16 +100,15 @@ public class Velocity extends Module {
delay = Utils.time();
Utils.print(Utils.formatColor("&7[&dR&7]&7 Switched to &bReverse&7 Velocity mode"));
}
if (switchToHypixel.isPressed() && velocityModes.getInput() == 2 && delay == 0) {
if (switchToPacket.isPressed() && velocityModes.getInput() == 2 && delay == 0) {
velocityModes.setValue(1);
delay = Utils.time();
Utils.print(Utils.formatColor("&7[&dR&7]&7 Switched to &bHypixel&7 Velocity mode"));
Utils.print(Utils.formatColor("&7[&dR&7]&7 Switched to &bPacket&7 Velocity mode"));
}
}
if (delay > 0 && (Utils.time() - delay) > 100) {
delay = 0;
}
}
@SubscribeEvent
@ -143,6 +142,7 @@ public class Velocity extends Module {
mc.thePlayer.motionZ += s27PacketExplosion.func_149147_e() * explosionsHorizontal.getInput() / 100.0;
}
}
stopFBvelo = true;
e.setCanceled(true);
disableVelo = false;
@ -179,6 +179,7 @@ public class Velocity extends Module {
}
}
}
stopFBvelo = false;
if (!disableVelo) {
e.setCanceled(true);

View File

@ -1,15 +1,19 @@
package keystrokesmod.module.impl.minigames;
import keystrokesmod.module.Module;
import keystrokesmod.module.ModuleManager;
import keystrokesmod.module.setting.impl.DescriptionSetting;
import keystrokesmod.module.setting.impl.SliderSetting;
import keystrokesmod.utility.Utils;
import keystrokesmod.utility.command.CommandManager;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.util.BlockPos;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.util.MovingObjectPosition.MovingObjectType;
import net.minecraftforge.client.event.ClientChatReceivedEvent;
import net.minecraftforge.client.event.MouseEvent;
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import org.lwjgl.input.Mouse;
@ -21,9 +25,10 @@ public class SumoFences extends Module {
public static SliderSetting fenceHeight;
public SliderSetting blockType;
private java.util.Timer t;
private final List<String> maps = Arrays.asList("Sumo", "Space Mine", "White Crystal", "Fort");
private int y = 65, x = 0;
private final List<String> maps = Arrays.asList("Sumo", "Space Mine", "White Crystal", "Fort", "Hauxi");
private IBlockState f;
private static final List<BlockPos> f_p = Arrays.asList(new BlockPos(9, 65, -2), new BlockPos(9, 65, -1), new BlockPos(9, 65, 0), new BlockPos(9, 65, 1), new BlockPos(9, 65, 2), new BlockPos(9, 65, 3), new BlockPos(8, 65, 3), new BlockPos(8, 65, 4), new BlockPos(8, 65, 5), new BlockPos(7, 65, 5), new BlockPos(7, 65, 6), new BlockPos(7, 65, 7), new BlockPos(6, 65, 7), new BlockPos(5, 65, 7), new BlockPos(5, 65, 8), new BlockPos(4, 65, 8), new BlockPos(3, 65, 8), new BlockPos(3, 65, 9), new BlockPos(2, 65, 9), new BlockPos(1, 65, 9), new BlockPos(0, 65, 9), new BlockPos(-1, 65, 9), new BlockPos(-2, 65, 9), new BlockPos(-3, 65, 9), new BlockPos(-3, 65, 8), new BlockPos(-4, 65, 8), new BlockPos(-5, 65, 8), new BlockPos(-5, 65, 7), new BlockPos(-6, 65, 7), new BlockPos(-7, 65, 7), new BlockPos(-7, 65, 6), new BlockPos(-7, 65, 5), new BlockPos(-8, 65, 5), new BlockPos(-8, 65, 4), new BlockPos(-8, 65, 3), new BlockPos(-9, 65, 3), new BlockPos(-9, 65, 2), new BlockPos(-9, 65, 1), new BlockPos(-9, 65, 0), new BlockPos(-9, 65, -1), new BlockPos(-9, 65, -2), new BlockPos(-9, 65, -3), new BlockPos(-8, 65, -3), new BlockPos(-8, 65, -4), new BlockPos(-8, 65, -5), new BlockPos(-7, 65, -5), new BlockPos(-7, 65, -6), new BlockPos(-7, 65, -7), new BlockPos(-6, 65, -7), new BlockPos(-5, 65, -7), new BlockPos(-5, 65, -8), new BlockPos(-4, 65, -8), new BlockPos(-3, 65, -8), new BlockPos(-3, 65, -9), new BlockPos(-2, 65, -9), new BlockPos(-1, 65, -9), new BlockPos(0, 65, -9), new BlockPos(1, 65, -9), new BlockPos(2, 65, -9), new BlockPos(3, 65, -9), new BlockPos(3, 65, -8), new BlockPos(4, 65, -8), new BlockPos(5, 65, -8), new BlockPos(5, 65, -7), new BlockPos(6, 65, -7), new BlockPos(7, 65, -7), new BlockPos(7, 65, -6), new BlockPos(7, 65, -5), new BlockPos(8, 65, -5), new BlockPos(8, 65, -4), new BlockPos(8, 65, -3), new BlockPos(9, 65, -3));
private static List<BlockPos> f_p = Arrays.asList(new BlockPos(9, 65, -2), new BlockPos(9, 65, -1), new BlockPos(9, 65, 0), new BlockPos(9, 65, 1), new BlockPos(9, 65, 2), new BlockPos(9, 65, 3), new BlockPos(8, 65, 3), new BlockPos(8, 65, 4), new BlockPos(8, 65, 5), new BlockPos(7, 65, 5), new BlockPos(7, 65, 6), new BlockPos(7, 65, 7), new BlockPos(6, 65, 7), new BlockPos(5, 65, 7), new BlockPos(5, 65, 8), new BlockPos(4, 65, 8), new BlockPos(3, 65, 8), new BlockPos(3, 65, 9), new BlockPos(2, 65, 9), new BlockPos(1, 65, 9), new BlockPos(0, 65, 9), new BlockPos(-1, 65, 9), new BlockPos(-2, 65, 9), new BlockPos(-3, 65, 9), new BlockPos(-3, 65, 8), new BlockPos(-4, 65, 8), new BlockPos(-5, 65, 8), new BlockPos(-5, 65, 7), new BlockPos(-6, 65, 7), new BlockPos(-7, 65, 7), new BlockPos(-7, 65, 6), new BlockPos(-7, 65, 5), new BlockPos(-8, 65, 5), new BlockPos(-8, 65, 4), new BlockPos(-8, 65, 3), new BlockPos(-9, 65, 3), new BlockPos(-9, 65, 2), new BlockPos(-9, 65, 1), new BlockPos(-9, 65, 0), new BlockPos(-9, 65, -1), new BlockPos(-9, 65, -2), new BlockPos(-9, 65, -3), new BlockPos(-8, 65, -3), new BlockPos(-8, 65, -4), new BlockPos(-8, 65, -5), new BlockPos(-7, 65, -5), new BlockPos(-7, 65, -6), new BlockPos(-7, 65, -7), new BlockPos(-6, 65, -7), new BlockPos(-5, 65, -7), new BlockPos(-5, 65, -8), new BlockPos(-4, 65, -8), new BlockPos(-3, 65, -8), new BlockPos(-3, 65, -9), new BlockPos(-2, 65, -9), new BlockPos(-1, 65, -9), new BlockPos(0, 65, -9), new BlockPos(1, 65, -9), new BlockPos(2, 65, -9), new BlockPos(3, 65, -9), new BlockPos(3, 65, -8), new BlockPos(4, 65, -8), new BlockPos(5, 65, -8), new BlockPos(5, 65, -7), new BlockPos(6, 65, -7), new BlockPos(7, 65, -7), new BlockPos(7, 65, -6), new BlockPos(7, 65, -5), new BlockPos(8, 65, -5), new BlockPos(8, 65, -4), new BlockPos(8, 65, -3), new BlockPos(9, 65, -3));
private String[] mode = new String[]{"Oak fence", "Leaves", "Glass", "Barrier"};
public SumoFences() {
@ -81,9 +86,29 @@ public class SumoFences extends Module {
return new TimerTask() {
public void run() {
if (SumoFences.this.isSumo()) {
if (sumoMap() == 2) {
f_p = Arrays.asList(new BlockPos(9, 65, -2), new BlockPos(9, 65, -1), new BlockPos(9, 65, 0), new BlockPos(9, 65, 1), new BlockPos(9, 65, 2), new BlockPos(9, 65, 3), new BlockPos(8, 65, 3), new BlockPos(8, 65, 4), new BlockPos(8, 65, 5), new BlockPos(7, 65, 5), new BlockPos(7, 65, 6), new BlockPos(7, 65, 7), new BlockPos(6, 65, 7), new BlockPos(5, 65, 7), new BlockPos(5, 65, 8), new BlockPos(4, 65, 8), new BlockPos(3, 65, 8), new BlockPos(3, 65, 9), new BlockPos(2, 65, 9), new BlockPos(1, 65, 9), new BlockPos(0, 65, 9), new BlockPos(-1, 65, 9), new BlockPos(-2, 65, 9), new BlockPos(-3, 65, 9), new BlockPos(-3, 65, 8), new BlockPos(-4, 65, 8), new BlockPos(-5, 65, 8), new BlockPos(-5, 65, 7), new BlockPos(-6, 65, 7), new BlockPos(-7, 65, 7), new BlockPos(-7, 65, 6), new BlockPos(-7, 65, 5), new BlockPos(-8, 65, 5), new BlockPos(-8, 65, 4), new BlockPos(-8, 65, 3), new BlockPos(-9, 65, 3), new BlockPos(-9, 65, 2), new BlockPos(-9, 65, 1), new BlockPos(-9, 65, 0), new BlockPos(-9, 65, -1), new BlockPos(-9, 65, -2), new BlockPos(-9, 65, -3), new BlockPos(-8, 65, -3), new BlockPos(-8, 65, -4), new BlockPos(-8, 65, -5), new BlockPos(-7, 65, -5), new BlockPos(-7, 65, -6), new BlockPos(-7, 65, -7), new BlockPos(-6, 65, -7), new BlockPos(-5, 65, -7), new BlockPos(-5, 65, -8), new BlockPos(-4, 65, -8), new BlockPos(-3, 65, -8), new BlockPos(-3, 65, -9), new BlockPos(-2, 65, -9), new BlockPos(-1, 65, -9), new BlockPos(0, 65, -9), new BlockPos(1, 65, -9), new BlockPos(2, 65, -9), new BlockPos(3, 65, -9), new BlockPos(3, 65, -8), new BlockPos(4, 65, -8), new BlockPos(5, 65, -8), new BlockPos(5, 65, -7), new BlockPos(6, 65, -7), new BlockPos(7, 65, -7), new BlockPos(7, 65, -6), new BlockPos(7, 65, -5), new BlockPos(8, 65, -5), new BlockPos(8, 65, -4), new BlockPos(8, 65, -3), new BlockPos(9, 65, -3));
}
else {
f_p = Arrays.asList(new BlockPos(9, 65, -2), new BlockPos(9, 65, -1), new BlockPos(9, 65, 0), new BlockPos(9, 65, 1), new BlockPos(9, 65, 2), new BlockPos(9, 65, 3), new BlockPos(8, 65, 3), new BlockPos(8, 65, 4), new BlockPos(8, 65, 5), new BlockPos(7, 65, 5), new BlockPos(7, 65, 6), new BlockPos(7, 65, 7), new BlockPos(6, 65, 7), new BlockPos(5, 65, 7), new BlockPos(5, 65, 8), new BlockPos(4, 65, 8), new BlockPos(3, 65, 8), new BlockPos(3, 65, 9), new BlockPos(2, 65, 9), new BlockPos(1, 65, 9), new BlockPos(0, 65, 9), new BlockPos(-1, 65, 9), new BlockPos(-2, 65, 9), new BlockPos(-3, 65, 9), new BlockPos(-3, 65, 8), new BlockPos(-4, 65, 8), new BlockPos(-5, 65, 8), new BlockPos(-5, 65, 7), new BlockPos(-6, 65, 7), new BlockPos(-7, 65, 7), new BlockPos(-7, 65, 6), new BlockPos(-7, 65, 5), new BlockPos(-8, 65, 5), new BlockPos(-8, 65, 4), new BlockPos(-8, 65, 3), new BlockPos(-9, 65, 3), new BlockPos(-9, 65, 2), new BlockPos(-9, 65, 1), new BlockPos(-9, 65, 0), new BlockPos(-9, 65, -1), new BlockPos(-9, 65, -2), new BlockPos(-9, 65, -3), new BlockPos(-8, 65, -3), new BlockPos(-8, 65, -4), new BlockPos(-8, 65, -5), new BlockPos(-7, 65, -5), new BlockPos(-7, 65, -6), new BlockPos(-7, 65, -7), new BlockPos(-6, 65, -7), new BlockPos(-5, 65, -7), new BlockPos(-5, 65, -8), new BlockPos(-4, 65, -8), new BlockPos(-3, 65, -8), new BlockPos(-3, 65, -9), new BlockPos(-2, 65, -9), new BlockPos(-1, 65, -9), new BlockPos(0, 65, -9), new BlockPos(1, 65, -9), new BlockPos(2, 65, -9), new BlockPos(3, 65, -9), new BlockPos(3, 65, -8), new BlockPos(4, 65, -8), new BlockPos(5, 65, -8), new BlockPos(5, 65, -7), new BlockPos(6, 65, -7), new BlockPos(7, 65, -7), new BlockPos(7, 65, -6), new BlockPos(7, 65, -5), new BlockPos(8, 65, -5), new BlockPos(8, 65, -4), new BlockPos(8, 65, -3), new BlockPos(9, 65, -3));
}
for (BlockPos p : SumoFences.f_p) {
for (int i = 0; (double) i < SumoFences.fenceHeight.getInput(); ++i) {
BlockPos p2 = new BlockPos(p.getX(), p.getY() + i, p.getZ());
if (sumoMap() == 1) {
y = 72;
x = p.getX();
}
else if (sumoMap() == 2) {
y = 71;
x = p.getX() + 1;
}
else {
y = 65;
x = p.getX();
}
BlockPos p2 = new BlockPos(x, y + i, p.getZ());
if (mc.theWorld.getBlockState(p2).getBlock() == Blocks.air) {
mc.theWorld.setBlockState(p2, SumoFences.this.f);
}
@ -112,6 +137,25 @@ public class SumoFences extends Module {
return false;
}
private int sumoMap() {
if (Utils.isHypixel()) {
for (String l : Utils.gsl()) {
String s = Utils.stripColor(l);
if (s.startsWith("Map:") && s.equals("Mode: Sumo Duel")) {
if (this.maps.contains(s.substring(5))) {
if (this.maps.contains("Fort Royale")) {
return 1;
}
if (this.maps.contains("Hauxi")) {
return 2;
}
}
}
}
}
return 0;
}
public void guiUpdate() {
switch ((int) blockType.getInput()) {
case 0:

View File

@ -24,7 +24,7 @@ public class Bhop extends Module {
public ButtonSetting disablerOnly;
private ButtonSetting sneakDisable;
private ButtonSetting jumpMoving;
public ButtonSetting rotateYaw, slowBackwards, damageBoost, strafe, damageBoostRequireKey;
public ButtonSetting slowBackwards, damageBoost, strafe, damageBoostRequireKey;
public GroupSetting damageBoostGroup, strafeGroup;
private SliderSetting strafeDegrees;
public KeySetting damageBoostKey;
@ -42,7 +42,6 @@ public class Bhop extends Module {
this.registerSetting(liquidDisable = new ButtonSetting("Disable in liquid", true));
this.registerSetting(sneakDisable = new ButtonSetting("Disable while sneaking", true));
this.registerSetting(jumpMoving = new ButtonSetting("Only jump when moving", true));
this.registerSetting(rotateYaw = new ButtonSetting("Rotate yaw", false));
this.registerSetting(slowBackwards = new ButtonSetting("Slow backwards", false));
this.registerSetting(damageBoostGroup = new GroupSetting("Damage boost"));
@ -92,7 +91,7 @@ public class Bhop extends Module {
}
if (mode.getInput() >= 1) {
if (mc.thePlayer.onGround && (!jumpMoving.isToggled() || Utils.isMoving())) {
if (mc.thePlayer.moveForward <= -0.5 && mc.thePlayer.moveStrafing == 0 && !ModuleManager.killAura.isTargeting && !Utils.noSlowingBackWithBow() && !ModuleManager.scaffold.isEnabled && !mc.thePlayer.isCollidedHorizontally) {
if (mc.thePlayer.moveForward <= -0.5 && !ModuleManager.killAura.isTargeting && !Utils.noSlowingBackWithBow() && !ModuleManager.scaffold.isEnabled) {
setRotation = true;
}
if (mode.getInput() != 3) {

View File

@ -1,11 +1,8 @@
package keystrokesmod.module.impl.movement;
import keystrokesmod.clickgui.ClickGui;
import keystrokesmod.event.PrePlayerInputEvent;
import keystrokesmod.event.*;
import net.minecraft.client.gui.GuiChat;
import keystrokesmod.event.JumpEvent;
import keystrokesmod.event.PreUpdateEvent;
import keystrokesmod.event.SendPacketEvent;
import keystrokesmod.module.Module;
import keystrokesmod.module.ModuleManager;
import keystrokesmod.module.impl.client.Settings;
@ -43,8 +40,24 @@ public class InvMove extends Module {
reset();
}
@SubscribeEvent
public void onSendPacketNoEvent(NoEventPacketEvent e) {
if (!Utils.nullCheck()) {
return;
}
if (e.getPacket() instanceof C0EPacketClickWindow) {
if (modes.getInput() == 1) {
stopMoving = true;
ticks = 0;
}
}
}
@SubscribeEvent
public void onSendPacket(SendPacketEvent e) {
if (!Utils.nullCheck()) {
return;
}
if (e.getPacket() instanceof C0EPacketClickWindow) {
if (modes.getInput() == 1) {
stopMoving = true;

View File

@ -7,12 +7,12 @@ import keystrokesmod.mixin.impl.accessor.IAccessorMinecraft;
import keystrokesmod.mixin.interfaces.IMixinItemRenderer;
import keystrokesmod.module.Module;
import keystrokesmod.module.ModuleManager;
import keystrokesmod.module.impl.render.HUD;
import keystrokesmod.module.setting.impl.ButtonSetting;
import keystrokesmod.module.setting.impl.KeySetting;
import keystrokesmod.module.setting.impl.SliderSetting;
import keystrokesmod.utility.ModuleUtils;
import keystrokesmod.utility.PacketUtils;
import keystrokesmod.utility.Utils;
import keystrokesmod.utility.*;
import net.minecraft.client.gui.ScaledResolution;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.network.Packet;
@ -23,8 +23,11 @@ import net.minecraft.network.play.server.*;
import net.minecraft.potion.PotionEffect;
import net.minecraftforge.fml.common.eventhandler.EventPriority;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.TickEvent;
import org.lwjgl.input.Keyboard;
import java.awt.*;
public class LongJump extends Module {
private SliderSetting mode;
@ -44,6 +47,7 @@ public class LongJump extends Module {
public ButtonSetting spoofItem;
private ButtonSetting beginFlat;
private ButtonSetting silentSwing;
private ButtonSetting renderFloatProgress;
private KeySetting verticalKey;
private SliderSetting pitchVal;
@ -76,6 +80,13 @@ public class LongJump extends Module {
private int firstSlot = -1;
private int color = new Color(0, 187, 255, 255).getRGB();
private float barWidth = 60;
private float barHeight = 4;
private float filledWidth;
private float barX;
private float barY;
public LongJump() {
super("Long Jump", category.movement);
this.registerSetting(mode = new SliderSetting("Mode", 0, modes));
@ -93,6 +104,7 @@ public class LongJump extends Module {
this.registerSetting(hideExplosion = new ButtonSetting("Hide explosion", false));
this.registerSetting(spoofItem = new ButtonSetting("Spoof item", false));
this.registerSetting(silentSwing = new ButtonSetting("Silent swing", false));
this.registerSetting(renderFloatProgress = new ButtonSetting("Render float progress", false));
this.registerSetting(beginFlat = new ButtonSetting("Begin flat", false));
this.registerSetting(verticalKey = new KeySetting("Vertical key", Keyboard.KEY_SPACE));
@ -105,6 +117,8 @@ public class LongJump extends Module {
this.spoofItem.setVisible(!manual.isToggled(), this);
this.silentSwing.setVisible(!manual.isToggled(), this);
this.renderFloatProgress.setVisible(mode.getInput() == 0, this);
this.verticalMotion.setVisible(mode.getInput() == 0, this);
this.motionDecay.setVisible(mode.getInput() == 0, this);
this.beginFlat.setVisible(mode.getInput() == 0, this);
@ -124,6 +138,11 @@ public class LongJump extends Module {
}
enabled();
}
filledWidth = 0;
final ScaledResolution scaledResolution = new ScaledResolution(mc);
int[] disp = {scaledResolution.getScaledWidth(), scaledResolution.getScaledHeight(), scaledResolution.getScaleFactor()};
barX = disp[0] / 2 - barWidth / 2;
barY = disp[1] / 2 + 12;
}
public void onDisable() {
@ -230,6 +249,8 @@ public class LongJump extends Module {
}
}
filledWidth = (barWidth * boostTicks / (!notMoving ? 32 : 33));
if (stopMovement.isToggled() && !notMoving) {
if (stopTime > 0) {
++stopTime;
@ -245,6 +266,21 @@ public class LongJump extends Module {
}
}
@SubscribeEvent
public void onRenderTick(TickEvent.RenderTickEvent ev) {
if (!Utils.nullCheck()) {
return;
}
if (ev.phase == TickEvent.Phase.END) {
if (mc.currentScreen != null || !renderFloatProgress.isToggled() || mode.getInput() != 0) {
return;
}
}
color = Theme.getGradient((int) HUD.theme.getInput(), 0);
RenderUtils.drawRoundedRectangle(barX, barY, barX + barWidth, barY + barHeight, 3, 0xFF555555);
RenderUtils.drawRoundedRectangle(barX, barY, barX + filledWidth, barY + barHeight, 3, color);
}
@SubscribeEvent
public void onSlotUpdate(SlotUpdateEvent e) {
if (lastSlot != -1) {
@ -305,7 +341,6 @@ public class LongJump extends Module {
disabled();
}
}
}
@SubscribeEvent(priority = EventPriority.LOWEST) // called last in order to apply fix

View File

@ -133,7 +133,7 @@ public class NoSlow extends Module {
if (!Mouse.isButtonDown(1) || (mc.thePlayer.getHeldItem() == null || !holdingConsumable(mc.thePlayer.getHeldItem()))) {
return;
}
if (!mc.thePlayer.onGround) {
if (!mc.thePlayer.onGround || ModuleUtils.groundTicks <= 8) {
canFloat = true;
}
else {
@ -214,12 +214,16 @@ public class NoSlow extends Module {
offset = false;
return;
}
/*if (offsetDelay <= 2) {
if (!canFloat) {
return;
}
if (!reSendConsume && offsetDelay <= 2) {
++offsetDelay;
return;
}*/
}
offset = true;
e.setPosY(e.getPosY() + ModuleUtils.offsetValue);
ModuleUtils.groundTicks = 0;
ModuleManager.scaffold.offsetDelay = 2;
if (groundSpeedOption.isToggled()) {
if (!ModuleManager.killAura.isTargeting && !Utils.noSlowingBackWithBow() && !Utils.jumpDown() && mc.thePlayer.moveForward <= -0.5 && mc.thePlayer.moveStrafing == 0 && offset && Utils.isMoving() && mc.thePlayer.onGround) {

View File

@ -6,13 +6,11 @@ import keystrokesmod.mixin.impl.accessor.IAccessorEntityPlayerSP;
import keystrokesmod.module.Module;
import keystrokesmod.module.ModuleManager;
import keystrokesmod.module.impl.player.Safewalk;
import keystrokesmod.module.impl.render.HUD;
import keystrokesmod.module.setting.impl.ButtonSetting;
import keystrokesmod.module.setting.impl.DescriptionSetting;
import keystrokesmod.module.setting.impl.SliderSetting;
import keystrokesmod.utility.BlockUtils;
import keystrokesmod.utility.ModuleUtils;
import keystrokesmod.utility.RenderUtils;
import keystrokesmod.utility.Utils;
import keystrokesmod.utility.*;
import net.minecraft.block.*;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen;
@ -28,6 +26,7 @@ import net.minecraftforge.fml.common.gameevent.TickEvent;
import org.lwjgl.input.Keyboard;
import org.lwjgl.input.Mouse;
import java.awt.*;
import java.io.IOException;
public class Sprint extends Module {
@ -35,12 +34,14 @@ public class Sprint extends Module {
private ButtonSetting rainbow;
public SliderSetting omniDirectional;
private SliderSetting floatSetting;
private ButtonSetting renderJumpRequired;
public ButtonSetting disableBackwards;
public String text = "[Sprint (Toggled)]";
public float posX = 5;
public float posY = 5;
private float limit;
private boolean canFloat, requireJump;
public boolean canFloat, requireJump;
private int color = new Color(255, 0, 0, 255).getRGB();
private String[] omniDirectionalModes = new String[] { "Disabled", "Vanilla", "Hypixel", "Float" };
@ -54,12 +55,14 @@ public class Sprint extends Module {
this.registerSetting(rainbow = new ButtonSetting("Rainbow", false));
this.registerSetting(omniDirectional = new SliderSetting("Omni-Directional", 0, omniDirectionalModes));
this.registerSetting(floatSetting = new SliderSetting("Float speed", "%", 100, 0.0, 100.0, 1.0));
this.registerSetting(renderJumpRequired = new ButtonSetting("Render jump required", false));
this.registerSetting(disableBackwards = new ButtonSetting("Disable backwards", false));
this.closetModule = true;
}
public void guiUpdate() {
this.floatSetting.setVisible(omniDirectional.getInput() == 3, this);
this.renderJumpRequired.setVisible(omniDirectional.getInput() == 3, this);
}
@SubscribeEvent
@ -77,22 +80,24 @@ public class Sprint extends Module {
if (canFloat && floatConditions() && !requireJump && omniSprint()) {
e.setPosY(e.getPosY() + ModuleUtils.offsetValue);
ModuleUtils.groundTicks = 0;
if (Utils.isMoving()) Utils.setSpeed(getFloatSpeed(getSpeedLevel()));
}
if (rotationConditions()) {
float yaw = mc.thePlayer.rotationYaw;
e.setYaw(yaw - 55);
RotationUtils.setFakeRotations(mc.thePlayer.rotationYaw, mc.thePlayer.rotationPitch);
}
}
private boolean floatConditions() {
int edgeY = (int) Math.round((mc.thePlayer.posY % 1.0D) * 100.0D);
if (ModuleUtils.stillTicks > 20) {
if (ModuleUtils.stillTicks > 200) {
requireJump = true;
return false;
}
if (!(mc.thePlayer.posY % 1 == 0) && edgeY >= 10 && !allowedBlocks()) {
if (edgeY >= 10 && !allowedBlocks()) {
requireJump = true;
return false;
}
@ -197,13 +202,25 @@ public class Sprint extends Module {
@SubscribeEvent
public void onRenderTick(TickEvent.RenderTickEvent e) {
if (e.phase != TickEvent.Phase.END || !displayText.isToggled() || !Utils.nullCheck()) {
if (e.phase != TickEvent.Phase.END || !Utils.nullCheck()) {
return;
}
if (mc.currentScreen != null || mc.gameSettings.showDebugInfo) {
if (mc.currentScreen != null) {
return;
}
mc.fontRendererObj.drawStringWithShadow(text, posX, posY, rainbow.isToggled() ? Utils.getChroma(2, 0) : -1);
if (displayText.isToggled() && !mc.gameSettings.showDebugInfo) {
mc.fontRendererObj.drawStringWithShadow(text, posX, posY, rainbow.isToggled() ? Utils.getChroma(2, 0) : -1);
}
if (omniDirectional.getInput() != 3 || !renderJumpRequired.isToggled() || !requireJump || ModuleManager.scaffold.isEnabled || ModuleManager.bhop.isEnabled()) {
return;
}
String text = "§c[Sprint]: Jump required to re-activate float";
int width = mc.fontRendererObj.getStringWidth(text) + Utils.getBoldWidth(text) / 2;
final ScaledResolution scaledResolution = new ScaledResolution(mc);
int[] display = {scaledResolution.getScaledWidth(), scaledResolution.getScaledHeight(), scaledResolution.getScaleFactor()};
mc.fontRendererObj.drawString(text, display[0] / 2 - width + 104, display[1] / 2 + 272, color, true);
}
public boolean omniSprint() {

View File

@ -105,7 +105,7 @@ public class BedAura extends Module {
reset(true, true);
return;
}
if (Utils.isBedwarsPractice()) {
if (Utils.isBedwarsPractice() || Utils.isReplay()) {
return;
}
if (!mc.thePlayer.capabilities.allowEdit || mc.thePlayer.isSpectator()) {
@ -171,7 +171,7 @@ public class BedAura extends Module {
@SubscribeEvent(priority = EventPriority.LOWEST)
public void onPreMotion(PreMotionEvent e) {
aiming = false;
if (currentBlock != null && !RotationUtils.inRange(currentBlock, range.getInput())) {
if (currentBlock == null || !RotationUtils.inRange(currentBlock, range.getInput())) {
stopAutoblock = false;
return;
}

View File

@ -38,8 +38,8 @@ public class Disabler extends Module {
long activationDelayMillis;
final long checkDisabledTime = 4000;
private int color = new Color(0, 187, 255, 255).getRGB();
private float barWidth = 100;
private float barHeight = 6;
private float barWidth = 60;
private float barHeight = 4;
private float filledWidth;
private float barX;
private float barY;
@ -100,6 +100,7 @@ public class Disabler extends Module {
if (finished != 0 && mc.thePlayer.onGround && now - finished > checkDisabledTime) {
Utils.print("&7[&dR&7] &adisabler enabled");
finished = 0;
filledWidth = 0;
disablerLoaded = true;
}
if (!shouldRun) {
@ -175,7 +176,7 @@ public class Disabler extends Module {
final ScaledResolution scaledResolution = new ScaledResolution(mc);
int[] disp = {scaledResolution.getScaledWidth(), scaledResolution.getScaledHeight(), scaledResolution.getScaleFactor()};
barX = disp[0] / 2 - barWidth / 2;
barY = disp[1] / 2 + 20;
barY = disp[1] / 2 + 12;
}
@SubscribeEvent()
@ -199,7 +200,7 @@ public class Disabler extends Module {
}
}
color = Theme.getGradient((int) HUD.theme.getInput(), 0);
RenderUtils.drawRect(barX, barY, barX + barWidth, barY + barHeight, 0xFF555555);
RenderUtils.drawRect(barX, barY, barX + filledWidth, barY + barHeight, color);
RenderUtils.drawRoundedRectangle(barX, barY, barX + barWidth, barY + barHeight, 3, 0xFF555555);
RenderUtils.drawRoundedRectangle(barX, barY, barX + filledWidth, barY + barHeight, 3, color);
}
}

View File

@ -0,0 +1,59 @@
package keystrokesmod.module.impl.player;
import keystrokesmod.event.PostPlayerInputEvent;
import keystrokesmod.module.Module;
import keystrokesmod.module.ModuleManager;
import keystrokesmod.module.setting.impl.ButtonSetting;
import keystrokesmod.module.setting.impl.SliderSetting;
import keystrokesmod.utility.Utils;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraftforge.client.event.GuiOpenEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import org.lwjgl.input.Keyboard;
public class Fences extends Module {
public static SliderSetting mode;
public String[] modes = new String[]{"Hurt-time", "Sumo"};
public Fences() {
super("Fences", category.player, 0);
this.registerSetting(mode = new SliderSetting("Mode", 0, modes));
}
@Override
public String getInfo() {
return modes[(int) mode.getInput()];
}
@Override
public void onDisable() {
}
public static boolean canFence() {
if (ModuleManager.fences != null && ModuleManager.fences.isEnabled()) {
if (mode.getInput() == 1 && isSumo() && Utils.distanceToGround(mc.thePlayer) > 3) {
return true;
}
}
return false;
}
private static boolean isSumo() {
if (Utils.isHypixel()) {
for (String l : Utils.gsl()) {
String s = Utils.stripColor(l);
if (s.startsWith("Map:")) {
//if (this.maps.contains(s.substring(5))) {
return true;
//}
} else if (s.equals("Mode: Sumo Duel")) {
return true;
}
}
}
return false;
}
}

View File

@ -38,6 +38,8 @@ public class NoFall extends Module {
private double dynamic;
private boolean isFalling;
private int n;
public NoFall() {
super("NoFall", category.player);
this.registerSetting(mode = new SliderSetting("Mode", 2, modes));
@ -77,6 +79,7 @@ public class NoFall extends Module {
Utils.resetTimer();
initialY = mc.thePlayer.posY;
isFalling = false;
n = 0;
return;
}
else if ((double) mc.thePlayer.fallDistance >= minFallDistance.getInput()) {
@ -97,18 +100,16 @@ public class NoFall extends Module {
}
if (isFalling && mode.getInput() == 2) {
if (distanceFallen >= dynamic) {
Utils.getTimer().timerSpeed = 0.7099789F;
Utils.getTimer().timerSpeed = 0.6799789F;
mc.getNetHandler().addToSendQueue(new C03PacketPlayer(true));
initialY = mc.thePlayer.posY;
}
}
//Utils.print("" + dynamic);
if (isFalling && mode.getInput() == 3) {
Utils.resetTimer();
if (mc.thePlayer.ticksExisted % 2 == 0) {
Utils.getTimer().timerSpeed = 0.5F;
}
else {
Utils.getTimer().timerSpeed = 1F;
Utils.getTimer().timerSpeed = 0.47F;
}
if (distanceFallen >= 3) {
mc.getNetHandler().addToSendQueue(new C03PacketPlayer(true));
@ -116,7 +117,7 @@ public class NoFall extends Module {
}
}
if (isFalling && mode.getInput() == 4) {
Utils.getTimer().timerSpeed = 1F;
Utils.resetTimer();
if (distanceFallen >= 7) {
Utils.getTimer().timerSpeed = 0.7F;
mc.getNetHandler().addToSendQueue(new C03PacketPlayer(true));
@ -160,6 +161,9 @@ public class NoFall extends Module {
if (Utils.spectatorCheck()) {
return true;
}
if (Utils.isReplay()) {
return true;
}
if (mc.thePlayer.onGround) {
return true;
}

View File

@ -104,11 +104,6 @@ public class Safewalk extends Module {
canSneak = sneakState;
mc.thePlayer.movementInput.sneak = sneakState;
this.isSneaking = sneakState;
if (sneakState) {
double val = 0;
mc.thePlayer.motionX *= val;
mc.thePlayer.motionZ *= val;
}
}

View File

@ -2,6 +2,7 @@ package keystrokesmod.module.impl.player;
import keystrokesmod.Raven;
import keystrokesmod.event.*;
import keystrokesmod.mixin.impl.accessor.IAccessorEntityPlayerSP;
import keystrokesmod.mixin.interfaces.IMixinItemRenderer;
import keystrokesmod.module.Module;
import keystrokesmod.module.ModuleManager;
@ -56,7 +57,7 @@ public class Scaffold extends Module {
private String[] fakeRotationModes = new String[] { "§cDisabled", "Strict", "Smooth", "Spin" };
private String[] sprintModes = new String[] { "§cDisabled", "Vanilla", "Float" };
private String[] fastScaffoldModes = new String[] { "§cDisabled", "Jump A", "Jump B", "Jump B Low", "Jump E", "Keep-Y", "Keep-Y Low" };
private String[] multiPlaceModes = new String[] { "§cDisabled", "1 extra", "2 extra" };
private String[] multiPlaceModes = new String[] { "§cDisabled", "1 extra", "2 extra", "3 extra", "4 extra" };
//Highlight blocks
public Map<BlockPos, Timer> highlight = new HashMap<>();
@ -105,14 +106,13 @@ public class Scaffold extends Module {
//rotation related
private boolean was451, was452;
private float minOffset, pOffset;
private float minPitch = 80F;
private float minPitch, minOffset, pOffset;
private float edge;
private long firstStroke, yawEdge;
private float lastEdge2, yawAngle, theYaw;
private boolean enabledOffGround = false;
private float[] blockRotations;
public float scaffoldYaw, scaffoldPitch, blockYaw, yawOffset, lastOffset;
public float yaw, pitch, blockYaw, yawOffset, lastOffset;
private boolean set2;
private float maxOffset;
private int sameMouse;
@ -246,8 +246,9 @@ public class Scaffold extends Module {
if (floatStarted && mc.thePlayer.onGround) {
floatKeepY = false;
startYPos = -1;
if (moduleEnabled) {
if (moduleEnabled && mc.thePlayer.posY % 1 == 0) {
e.setPosY(e.getPosY() + ModuleUtils.offsetValue);
ModuleUtils.groundTicks = 0;
if (Utils.isMoving()) Utils.setSpeed(getFloatSpeed(getSpeedLevel()));
offsetDelay = 2;
}
@ -299,9 +300,9 @@ public class Scaffold extends Module {
switch ((int) rotation.getInput()) {
case 1:
scaffoldYaw = mc.thePlayer.rotationYaw - hardcodedYaw();
scaffoldPitch = 78F;
e.setRotations(scaffoldYaw, scaffoldPitch);
yaw = mc.thePlayer.rotationYaw - hardcodedYaw();
pitch = 78F;
e.setRotations(yaw, pitch);
break;
case 2:
float moveAngle = (float) getMovementAngle();
@ -309,7 +310,7 @@ public class Scaffold extends Module {
float normalizedYaw = (relativeYaw % 360 + 360) % 360;
float quad = normalizedYaw % 90;
float side = MathHelper.wrapAngleTo180_float(getMotionYaw() - scaffoldYaw);
float side = MathHelper.wrapAngleTo180_float(getMotionYaw() - yaw);
float yawBackwards = MathHelper.wrapAngleTo180_float(mc.thePlayer.rotationYaw) - hardcodedYaw();
float blockYawOffset = MathHelper.wrapAngleTo180_float(yawBackwards - blockYaw);
@ -332,19 +333,19 @@ public class Scaffold extends Module {
minOffset = 12;
}
if (quad > 32 && quad <= 38 || quad >= 52 && quad < 58) {
yawAngle = 135.625F;
minOffset = 10;
yawAngle = 134.625F;
minOffset = 9;
}
if (quad > 38 && quad <= 42 || quad >= 48 && quad < 52) {
yawAngle = 137.625F;
minOffset = 8;
yawAngle = 136.625F;
minOffset = 7;
}
if (quad > 42 && quad <= 45 || quad >= 45 && quad < 48) {
yawAngle = 140.625F;
minOffset = 6;
yawAngle = 139.625F;
minOffset = 5;
}
minPitch = 78F;
minPitch = 78.55F;
//Utils.print("" + minOffset);
//float offsetAmountD = ((((float) offsetAmount.getInput() / 10) - 10) * -2) - (((float) offsetAmount.getInput() / 10) - 10);
//yawAngle += offsetAmountD;
@ -353,48 +354,58 @@ public class Scaffold extends Module {
float offset = yawAngle;//(!Utils.scaffoldDiagonal(false)) ? 125.500F : 143.500F;
float nigger = 0;
if (quad > 45) {
nigger = 10;
}
else {
nigger = -10;
}
if (firstStroke > 0 && (System.currentTimeMillis() - firstStroke) > strokeDelay) {
firstStroke = 0;
}
/*if (enabledOffGround) {
if (enabledOffGround) {
if (blockRotations != null) {
scaffoldYaw = blockRotations[0];
scaffoldPitch = blockRotations[1];
yaw = blockRotations[0];
pitch = blockRotations[1];
} else {
yaw = mc.thePlayer.rotationYaw - hardcodedYaw() - nigger;
pitch = minPitch;
}
else {
scaffoldYaw = mc.thePlayer.rotationYaw - hardcodedYaw();
scaffoldPitch = 77f;
}
e.setRotations(scaffoldYaw, scaffoldPitch);
e.setRotations(yaw, pitch);
break;
}*/
}
if (blockRotations != null) {
blockYaw = blockRotations[0];
scaffoldPitch = blockRotations[1];
pitch = blockRotations[1];
yawOffset = blockYawOffset;
if (scaffoldPitch < minPitch) {
scaffoldPitch = minPitch;
if (pitch < minPitch) {
pitch = minPitch;
}
} else {
scaffoldPitch = minPitch;
pitch = minPitch;
if (edge == 1 && ((quad <= 5 || quad >= 85) && !Utils.scaffoldDiagonal(false))) {
firstStroke = Utils.time();
}
yawOffset = 5;
dynamic = 2;
}
if (!Utils.isMoving() || Utils.getHorizontalSpeed() == 0.0D) {
e.setRotations(theYaw, scaffoldPitch);
e.setRotations(theYaw, pitch);
break;
}
float motionYaw = getMotionYaw();
float newYaw = motionYaw - offset * Math.signum(
MathHelper.wrapAngleTo180_float(motionYaw - scaffoldYaw)
MathHelper.wrapAngleTo180_float(motionYaw - yaw)
);
scaffoldYaw = MathHelper.wrapAngleTo180_float(newYaw);
yaw = MathHelper.wrapAngleTo180_float(newYaw);
if (quad > 5 && quad < 85 && dynamic > 0) {
if (quad < 45F) {
@ -447,8 +458,8 @@ public class Scaffold extends Module {
if (set2) {
if (yawOffset <= -0) yawOffset = -0;
if (yawOffset >= minOffset) yawOffset = minOffset;
theYaw = (scaffoldYaw + offset * 2) - yawOffset;
e.setRotations(theYaw, scaffoldPitch);
theYaw = (yaw + offset * 2) - yawOffset;
e.setRotations(theYaw, pitch);
break;
}
} else if (side <= -0) {
@ -472,8 +483,8 @@ public class Scaffold extends Module {
if (set2) {
if (yawOffset >= 0) yawOffset = 0;
if (yawOffset <= -minOffset) yawOffset = -minOffset;
theYaw = (scaffoldYaw - offset * 2) - yawOffset;
e.setRotations(theYaw, scaffoldPitch);
theYaw = (yaw - offset * 2) - yawOffset;
e.setRotations(theYaw, pitch);
break;
}
}
@ -485,19 +496,19 @@ public class Scaffold extends Module {
if (yawOffset <= -0) yawOffset = -0;
if (yawOffset >= minOffset) yawOffset = minOffset;
}
theYaw = scaffoldYaw - yawOffset;
e.setRotations(theYaw, scaffoldPitch);
theYaw = yaw - yawOffset;
e.setRotations(theYaw, pitch);
break;
case 3:
if (blockRotations != null) {
scaffoldYaw = blockRotations[0];
scaffoldPitch = blockRotations[1];
yaw = blockRotations[0];
pitch = blockRotations[1];
}
else {
scaffoldYaw = mc.thePlayer.rotationYaw - hardcodedYaw();
scaffoldPitch = 80F;
yaw = mc.thePlayer.rotationYaw - hardcodedYaw();
pitch = 80F;
}
e.setRotations(scaffoldYaw, scaffoldPitch);
e.setRotations(yaw, pitch);
theYaw = e.getYaw();
break;
}
@ -626,7 +637,7 @@ public class Scaffold extends Module {
canPlace = true;
finishProcedure = true;
}
if (Utils.distanceToGround(mc.thePlayer) > 6) {
if (Utils.distanceToGround(mc.thePlayer) > 5) {
canPlace = true;
if (hasPlaced) {
finishProcedure = true;
@ -713,6 +724,9 @@ public class Scaffold extends Module {
((IMixinItemRenderer) mc.getItemRenderer()).setCancelUpdate(false);
((IMixinItemRenderer) mc.getItemRenderer()).setCancelReset(false);
}
if (offsetDelay > 0) {
ModuleManager.sprint.requireJump = false;
}
scaffoldBlockCount.beginFade();
hasSwapped = hasPlaced = false;
targetBlock = null;
@ -807,7 +821,7 @@ public class Scaffold extends Module {
}
else {
mc.thePlayer.swingItem();
if (!(autoSwap.isToggled() && ModuleManager.autoSwap.spoofItem.isToggled())) {
if (holdingBlocks()) {
mc.getItemRenderer().resetEquippedProgress();
}
}
@ -850,6 +864,12 @@ public class Scaffold extends Module {
locateAndPlaceBlock(yOffset, xOffset);
if (input >= 2) {
locateAndPlaceBlock(yOffset, xOffset);
if (input >= 3) {
locateAndPlaceBlock(yOffset, xOffset);
if (input >= 4) {
locateAndPlaceBlock(yOffset, xOffset);
}
}
}
}
}
@ -923,14 +943,14 @@ public class Scaffold extends Module {
if (!BlockUtils.replaceable(base)) {
return null;
}
EnumFacing[] allFacings = EnumFacing.values();
EnumFacing[] allFacings = getFacingsSorted();
List<EnumFacing> validFacings = new ArrayList<>(5);
for (EnumFacing facing : allFacings) {
if (facing != EnumFacing.UP && placeConditions(facing, yOffset, xOffset)) {
validFacings.add(facing);
}
}
int maxLayer = 4;
int maxLayer = 3;
List<PlaceData> possibleBlocks = new ArrayList<>();
main:
@ -940,10 +960,6 @@ public class Scaffold extends Module {
for (EnumFacing facing : validFacings) {
BlockPos neighbor = layerBase.offset(facing);
if (!BlockUtils.replaceable(neighbor) && !BlockUtils.isInteractable(BlockUtils.getBlock(neighbor))) {
if (lastPlacement != null && neighbor.equals(lastPlacement.blockPos)) {
possibleBlocks.add(new PlaceData(neighbor, facing.getOpposite()));
break main;
}
possibleBlocks.add(new PlaceData(neighbor, facing.getOpposite()));
}
}
@ -954,10 +970,6 @@ public class Scaffold extends Module {
for (EnumFacing nestedFacing : validFacings) {
BlockPos nestedNeighbor = adjacent.offset(nestedFacing);
if (!BlockUtils.replaceable(nestedNeighbor) && !BlockUtils.isInteractable(BlockUtils.getBlock(nestedNeighbor))) {
if (lastPlacement != null && nestedNeighbor.equals(lastPlacement.blockPos)) {
possibleBlocks.add(new PlaceData(nestedNeighbor, facing.getOpposite()));
break main;
}
possibleBlocks.add(new PlaceData(nestedNeighbor, nestedFacing.getOpposite()));
}
}
@ -968,74 +980,51 @@ public class Scaffold extends Module {
return possibleBlocks.isEmpty() ? null : possibleBlocks;
}
/*private List<PlaceData> findBlocks(int yOffset, int xOffset) {
List<PlaceData> possibleBlocks = new ArrayList<>();
int x = (int) Math.floor(mc.thePlayer.posX + xOffset);
int y = (int) Math.floor(((startYPos != -1) ? startYPos : (mc.thePlayer.posY)) + yOffset);
int z = (int) Math.floor(mc.thePlayer.posZ);
private EnumFacing[] getFacingsSorted() {
EnumFacing lastFacing = EnumFacing.getHorizontal(MathHelper.floor_double((((IAccessorEntityPlayerSP)mc.thePlayer).getLastReportedYaw() * 4.0F / 360.0F) + 0.5D) & 3);
if (BlockUtils.replaceable(new BlockPos(x, y - 1, z))) {
for (EnumFacing enumFacing : EnumFacing.values()) {
if (enumFacing != EnumFacing.UP && placeConditions(enumFacing, yOffset, xOffset)) {
BlockPos offsetPos = new BlockPos(x, y - 1, z).offset(enumFacing);
if (!BlockUtils.replaceable(offsetPos) && !BlockUtils.isInteractable(BlockUtils.getBlock(offsetPos))) {
possibleBlocks.add(new PlaceData(offsetPos, enumFacing.getOpposite()));
}
}
}
for (EnumFacing enumFacing2 : EnumFacing.values()) {
if (enumFacing2 != EnumFacing.UP && placeConditions(enumFacing2, yOffset, xOffset)) {
BlockPos offsetPos2 = new BlockPos(x, y - 1, z).offset(enumFacing2);
if (BlockUtils.replaceable(offsetPos2)) {
for (EnumFacing enumFacing3 : EnumFacing.values()) {
if (enumFacing3 != EnumFacing.UP && placeConditions(enumFacing3, yOffset, xOffset)) {
BlockPos offsetPos3 = offsetPos2.offset(enumFacing3);
if (!BlockUtils.replaceable(offsetPos3) && !BlockUtils.isInteractable(BlockUtils.getBlock(offsetPos3))) {
possibleBlocks.add(new PlaceData(offsetPos3, enumFacing3.getOpposite()));
}
}
}
}
}
}
if (mc.thePlayer.motionY > -0.0784) {
for (EnumFacing enumFacing5 : EnumFacing.values()) {
if (enumFacing5 != EnumFacing.UP && placeConditions(enumFacing5, yOffset, xOffset)) {
BlockPos offsetPos5 = new BlockPos(x, y - 2, z).offset(enumFacing5);
if (BlockUtils.replaceable(offsetPos5)) {
for (EnumFacing enumFacing6 : EnumFacing.values()) {
if (enumFacing6 != EnumFacing.UP && placeConditions(enumFacing6, yOffset, xOffset)) {
BlockPos offsetPos6 = offsetPos5.offset(enumFacing6);
if (!BlockUtils.replaceable(offsetPos6) && !BlockUtils.isInteractable(BlockUtils.getBlock(offsetPos6))) {
possibleBlocks.add(new PlaceData(offsetPos6, enumFacing6.getOpposite()));
}
}
}
}
}
}
for (EnumFacing enumFacing7 : EnumFacing.values()) {
if (enumFacing7 != EnumFacing.UP && placeConditions(enumFacing7, yOffset, xOffset)) {
BlockPos offsetPos7 = new BlockPos(x, y - 3, z).offset(enumFacing7);
if (BlockUtils.replaceable(offsetPos7)) {
for (EnumFacing enumFacing8 : EnumFacing.values()) {
if (enumFacing8 != EnumFacing.UP && placeConditions(enumFacing8, yOffset, xOffset)) {
BlockPos offsetPos8 = offsetPos7.offset(enumFacing8);
if (!BlockUtils.replaceable(offsetPos8) && !BlockUtils.isInteractable(BlockUtils.getBlock(offsetPos8))) {
possibleBlocks.add(new PlaceData(offsetPos8, enumFacing8.getOpposite()));
}
}
}
}
}
}
}
EnumFacing perpClockwise = lastFacing.rotateY();
EnumFacing perpCounterClockwise = lastFacing.rotateYCCW();
EnumFacing opposite = lastFacing.getOpposite();
float yaw = ((IAccessorEntityPlayerSP)mc.thePlayer).getLastReportedYaw() % 360;
if (yaw > 180) {
yaw -= 360;
}
else if (yaw < -180) {
yaw += 360;
}
// Calculates the difference from the last placed angle and gets the closest one
float diffClockwise = Math.abs(MathHelper.wrapAngleTo180_float(yaw - getFacingAngle(perpClockwise)));
float diffCounterClockwise = Math.abs(MathHelper.wrapAngleTo180_float(yaw - getFacingAngle(perpCounterClockwise)));
EnumFacing firstPerp, secondPerp;
if (diffClockwise <= diffCounterClockwise) {
firstPerp = perpClockwise;
secondPerp = perpCounterClockwise;
}
else {
return null;
firstPerp = perpCounterClockwise;
secondPerp = perpClockwise;
}
return possibleBlocks.isEmpty() ? null : possibleBlocks;
}*/
return new EnumFacing[]{EnumFacing.UP, EnumFacing.DOWN, lastFacing, firstPerp, secondPerp, opposite};
}
private float getFacingAngle(EnumFacing facing) {
switch (facing) {
case WEST:
return 90;
case NORTH:
return 180;
case EAST:
return -90;
default:
return 0;
}
}
private boolean placeConditions(EnumFacing enumFacing, int yCondition, int xCondition) {
if (xCondition == -1) {
@ -1044,7 +1033,6 @@ public class Scaffold extends Module {
if (yCondition == 1) {
return enumFacing == EnumFacing.DOWN;
}
return true;
}
@ -1078,7 +1066,7 @@ public class Scaffold extends Module {
return (float) ((double) value - (double) value % ((double) gcd * 0.15D));
}
float getMotionYaw() {
public float getMotionYaw() {
return (float) Math.toDegrees(Math.atan2(mc.thePlayer.motionZ, mc.thePlayer.motionX)) - 90.0F;
}
@ -1147,11 +1135,11 @@ public class Scaffold extends Module {
}
public boolean holdingBlocks() {
ItemStack heldItem = mc.thePlayer.getHeldItem();
if (autoSwap.isToggled() && ModuleManager.autoSwap.spoofItem.isToggled() && lastSlot.get() != mc.thePlayer.inventory.currentItem && totalBlocks() > 0) {
((IMixinItemRenderer) mc.getItemRenderer()).setCancelUpdate(true);
((IMixinItemRenderer) mc.getItemRenderer()).setCancelReset(true);
}
ItemStack heldItem = mc.thePlayer.getHeldItem();
if (!autoSwap.isToggled() || getSlot() == -1) {
if (heldItem == null || !(heldItem.getItem() instanceof ItemBlock) || !Utils.canBePlaced((ItemBlock) heldItem.getItem())) {
return false;

View File

@ -28,6 +28,7 @@ public class Tower extends Module {
private GroupSetting cancelKnockbackGroup;
private final ButtonSetting cancelKnockback;
private ButtonSetting cancelVelocityRequired;
public ButtonSetting capUpFaces;
final private String[] towerMoveModes = new String[]{"None", "Vanilla", "Low", "Edge", "2.5 tick", "1.5 tick", "1 tick", "10 tick"};
final private String[] verticalTowerModes = new String[]{"None", "Vanilla", "Extra block"};
@ -54,6 +55,8 @@ public class Tower extends Module {
private int grounds;
public int upFaces;
public Tower() {
super("Tower", category.player);
this.registerSetting(towerMove = new SliderSetting("Tower Move", 0, towerMoveModes));
@ -65,6 +68,7 @@ public class Tower extends Module {
this.registerSetting(cancelKnockbackGroup = new GroupSetting("Cancel knockback"));
this.registerSetting(cancelKnockback = new ButtonSetting(cancelKnockbackGroup, "Enable Cancel knockback", false));
this.registerSetting(cancelVelocityRequired = new ButtonSetting(cancelKnockbackGroup, "Require velocity enabled", false));
//this.registerSetting(capUpFaces = new ButtonSetting("Cap up faces", false));
this.canBeEnabled = false;
}
@ -190,12 +194,12 @@ public class Tower extends Module {
if (setLowMotion) {
towering = false;
}
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1f;
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1;
}
} else if (setLowMotion) {
++cMotionTicks;
if (cMotionTicks == 1) {
mc.thePlayer.motionY = 0.08F;
mc.thePlayer.motionY = 0.08f;
Utils.setSpeed(getTowerSpeed(getSpeedLevel()));
} else if (cMotionTicks == 4) {
cMotionTicks = 0;
@ -226,7 +230,7 @@ public class Tower extends Module {
speed = true;
break;
case 75:
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1f;
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1;
break;
}
}
@ -248,7 +252,7 @@ public class Tower extends Module {
Utils.setSpeed(Utils.getHorizontalSpeed()); // Strafe tick
break;
case 2:
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1f;
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1;
break;
case 3:
mc.thePlayer.motionY = 0.42f;
@ -262,7 +266,7 @@ public class Tower extends Module {
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1f + 0.0000001;
break;
case 6:
mc.thePlayer.motionY = -0.01;
mc.thePlayer.motionY = -0.01f;
break;
}
}
@ -287,7 +291,7 @@ public class Tower extends Module {
Utils.setSpeed(Utils.getHorizontalSpeed()); // Strafe tick
break;
case 2:
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1f;
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1;
break;
case 3:
mc.thePlayer.motionY = 0.005;
@ -317,13 +321,13 @@ public class Tower extends Module {
break;
case 6:
case 3:
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1f;
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1;
break;
case 9:
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1f + 0.0000001;
mc.thePlayer.motionY = 1 - mc.thePlayer.posY % 1 + 0.0000001;
break;
case 10:
mc.thePlayer.motionY = -0.01;
mc.thePlayer.motionY = -0.01f;
towerTicks = 0;
Utils.setSpeed(getTowerSpeed(getSpeedLevel())); // Speed + Strafe tick
speed = true;
@ -361,7 +365,7 @@ public class Tower extends Module {
Utils.setSpeed(Utils.getHorizontalSpeed(mc.thePlayer) / 1.6);
}
hasTowered = towering = firstJump = startedTowerInAir = setLowMotion = speed = false;
cMotionTicks = placeTicks = towerTicks = grounds = 0;
cMotionTicks = placeTicks = towerTicks = grounds = upFaces = 0;
reset();
}
}
@ -449,19 +453,22 @@ public class Tower extends Module {
if (e.getPacket() instanceof C08PacketPlayerBlockPlacement) {
if (canTower() && Utils.isMoving()) {
++placeTicks;
if (((C08PacketPlayerBlockPlacement) e.getPacket()).getPlacedBlockDirection() == 1 && placeTicks > 5 && hasTowered) {
dCount++;
if (dCount >= 2) {
//Utils.sendMessage("Hey");
setLowMotion = true;
if (((C08PacketPlayerBlockPlacement) e.getPacket()).getPlacedBlockDirection() == 1 && hasTowered) {
upFaces++;
if (placeTicks > 5) {
dCount++;
if (dCount >= 2) {
//Utils.sendMessage("Hey");
setLowMotion = true;
}
}
}
else {
dCount = 0;
dCount = upFaces = 0;
}
}
else {
placeTicks = 0;
placeTicks = upFaces = 0;
}
if (aligned) {
@ -529,7 +536,7 @@ public class Tower extends Module {
} else if (valY > 4000 && valY < 4300) {
value = 0.33f;
} else if (valY > 7000) {
value = 1 - mc.thePlayer.posY % 1f;
value = 1 - mc.thePlayer.posY % 1;
}
return value;
}

View File

@ -31,6 +31,7 @@ public class TargetHUD extends Module {
private ButtonSetting renderEsp;
private ButtonSetting showStatus;
private ButtonSetting healthColor;
private ButtonSetting animations;
private Timer fadeTimer;
private Timer healthBarTimer = null;
private EntityLivingBase target;
@ -53,6 +54,7 @@ public class TargetHUD extends Module {
this.registerSetting(renderEsp = new ButtonSetting("Render ESP", true));
this.registerSetting(showStatus = new ButtonSetting("Show win or loss", true));
this.registerSetting(healthColor = new ButtonSetting("Traditional health color", false));
this.registerSetting(animations = new ButtonSetting("Animations", false));
}
public void onDisable() {
@ -88,7 +90,7 @@ public class TargetHUD extends Module {
health = 0;
}
if (health != lastHealth) {
(healthBarTimer = new Timer(mode.getInput() == 0 ? 500 : 350)).start();
(healthBarTimer = new Timer(animations.isToggled() ? (mode.getInput() == 0 ? 500 : 350) : 0)).start();
}
lastHealth = health;
playerInfo += " " + Utils.getHealthStr(target, true);

View File

@ -44,7 +44,7 @@ public class ModuleUtils {
private long FIREBALL_TIMEOUT = 500L, fireballTime = 0;
public static int inAirTicks, groundTicks, stillTicks;
public static int fadeEdge;
public static double offsetValue = 0.0000000000003;
public static double offsetValue = 4e-12;
public static boolean isAttacking;
private int attackingTicks;
private int unTargetTicks;
@ -66,6 +66,8 @@ public class ModuleUtils {
public static boolean canSlow, didSlow, setSlow, hasSlowed;
private static boolean allowFriction;
private float yaw;
@SubscribeEvent
public void onWorldJoin(EntityJoinWorldEvent e) {
if (e.entity == mc.thePlayer) {
@ -84,12 +86,7 @@ public class ModuleUtils {
}
// isBlocked
EntityLivingBase g = Utils.raytrace(3);
if (e.getPacket() instanceof C08PacketPlayerBlockPlacement && Utils.holdingSword() && !BlockUtils.isInteractable(mc.objectMouseOver) && !isBlocked) {
isBlocked = true;
}
else if (e.getPacket() instanceof C07PacketPlayerDigging && isBlocked) {
if (e.getPacket() instanceof C07PacketPlayerDigging && isBlocked) {
C07PacketPlayerDigging c07 = (C07PacketPlayerDigging) e.getPacket();
String edger;
edger = String.valueOf(c07.getStatus());
@ -97,9 +94,12 @@ public class ModuleUtils {
isBlocked = false;
}
}
else if (e.getPacket() instanceof C09PacketHeldItemChange && isBlocked) {
if (e.getPacket() instanceof C09PacketHeldItemChange && isBlocked) {
isBlocked = false;
}
if (e.getPacket() instanceof C08PacketPlayerBlockPlacement && Utils.holdingSword() && !BlockUtils.isInteractable(mc.objectMouseOver) && !isBlocked) {
isBlocked = true;
}
//
// isAttacking
@ -120,12 +120,7 @@ public class ModuleUtils {
}
// isBlocked
EntityLivingBase g = Utils.raytrace(3);
if (e.getPacket() instanceof C08PacketPlayerBlockPlacement && Utils.holdingSword() && !BlockUtils.isInteractable(mc.objectMouseOver) && !isBlocked) {
isBlocked = true;
}
else if (e.getPacket() instanceof C07PacketPlayerDigging && isBlocked) {
if (e.getPacket() instanceof C07PacketPlayerDigging && isBlocked) {
C07PacketPlayerDigging c07 = (C07PacketPlayerDigging) e.getPacket();
String edger;
edger = String.valueOf(c07.getStatus());
@ -133,9 +128,12 @@ public class ModuleUtils {
isBlocked = false;
}
}
else if (e.getPacket() instanceof C09PacketHeldItemChange && isBlocked) {
if (e.getPacket() instanceof C09PacketHeldItemChange && isBlocked) {
isBlocked = false;
}
if (e.getPacket() instanceof C08PacketPlayerBlockPlacement && Utils.holdingSword() && !BlockUtils.isInteractable(mc.objectMouseOver) && !isBlocked) {
isBlocked = true;
}
//
// isAttacking
@ -367,7 +365,7 @@ public class ModuleUtils {
}
}
else if (ModuleManager.bhop.didMove) {
if (mc.thePlayer.isCollidedHorizontally || mc.thePlayer.isCollidedVertically || ModuleUtils.damage || !ModuleManager.bhop.lowhop && (!(block instanceof BlockAir) || !(blockAbove instanceof BlockAir) || blockBelow instanceof BlockSlab || (blockBelow instanceof BlockAir && blockBelow2 instanceof BlockAir))) {
if (mc.thePlayer.isCollidedVertically || ModuleUtils.damage && Velocity.vertical.getInput() != 0) {// || !ModuleManager.bhop.lowhop && (!(block instanceof BlockAir) || !(blockAbove instanceof BlockAir) || blockBelow instanceof BlockSlab || (blockBelow instanceof BlockAir && blockBelow2 instanceof BlockAir))) {
resetLowhop();
}
switch ((int) ModuleManager.bhop.mode.getInput()) {
@ -406,20 +404,20 @@ public class ModuleUtils {
if (inAirTicks == 3) {
mc.thePlayer.motionY = 0.08842400075912;
}
if (inAirTicks == 4) {
if (inAirTicks == 4 && Utils.distanceToGround(mc.thePlayer) < 2) {
mc.thePlayer.motionY = -0.19174457909538;
}
if (inAirTicks == 5) {
if (inAirTicks == 5 && Utils.distanceToGround(mc.thePlayer) < 2) {
mc.thePlayer.motionY = -0.26630949469659;
}
if (inAirTicks == 6) {
if (inAirTicks == 6 && Utils.distanceToGround(mc.thePlayer) < 2) {
mc.thePlayer.motionY = -0.26438340940798;
}
if (inAirTicks == 7) {
if (inAirTicks == 7 && Utils.distanceToGround(mc.thePlayer) < 2) {
mc.thePlayer.motionY = -0.33749574778843;
}
//strafe
if (inAirTicks >= 6) {
if (inAirTicks >= 6 && Utils.isMoving()) {
Utils.setSpeed(Utils.getHorizontalSpeed(mc.thePlayer));
}
//disable
@ -456,10 +454,13 @@ public class ModuleUtils {
}
}
if (ModuleManager.bhop.setRotation && ModuleManager.bhop.rotateYaw.isToggled()) {
if (ModuleManager.bhop.setRotation) {
if (!ModuleManager.killAura.isTargeting && !ModuleManager.scaffold.isEnabled) {
float yaw = mc.thePlayer.rotationYaw - 55;
yaw = ModuleManager.scaffold.getMotionYaw() - 130.625F * Math.signum(
MathHelper.wrapAngleTo180_float(ModuleManager.scaffold.getMotionYaw() - yaw)
);
e.setYaw(yaw);
RotationUtils.setFakeRotations(mc.thePlayer.rotationYaw, mc.thePlayer.rotationPitch);
}
if (mc.thePlayer.onGround) {
ModuleManager.bhop.setRotation = false;

View File

@ -1647,4 +1647,22 @@ public class Utils {
}
return false;
}
public static boolean isReplay() {
if (Utils.isHypixel()) {
if (!Utils.nullCheck()) {
return false;
}
final Scoreboard scoreboard = mc.theWorld.getScoreboard();
if (scoreboard == null) {
return false;
}
final ScoreObjective objective = scoreboard.getObjectiveInDisplaySlot(1);
if (objective == null || !stripString(objective.getDisplayName()).contains("REPLAY")) {
return false;
}
return true;
}
return false;
}
}