Latest release
This commit is contained in:
parent
8f33952bd0
commit
7d2947e5d6
|
|
@ -47,6 +47,7 @@ public class Raven {
|
||||||
public static Profile currentProfile;
|
public static Profile currentProfile;
|
||||||
public static PacketsHandler packetsHandler;
|
public static PacketsHandler packetsHandler;
|
||||||
private static boolean firstLoad;
|
private static boolean firstLoad;
|
||||||
|
public static KnockBackHelper knockBackHelper;
|
||||||
|
|
||||||
public Raven() {
|
public Raven() {
|
||||||
moduleManager = new ModuleManager();
|
moduleManager = new ModuleManager();
|
||||||
|
|
@ -65,6 +66,7 @@ public class Raven {
|
||||||
MinecraftForge.EVENT_BUS.register(new Ping());
|
MinecraftForge.EVENT_BUS.register(new Ping());
|
||||||
MinecraftForge.EVENT_BUS.register(packetsHandler = new PacketsHandler());
|
MinecraftForge.EVENT_BUS.register(packetsHandler = new PacketsHandler());
|
||||||
MinecraftForge.EVENT_BUS.register(new ModuleUtils(this.mc));
|
MinecraftForge.EVENT_BUS.register(new ModuleUtils(this.mc));
|
||||||
|
MinecraftForge.EVENT_BUS.register(knockBackHelper = new KnockBackHelper());
|
||||||
Reflection.getFields();
|
Reflection.getFields();
|
||||||
moduleManager.register();
|
moduleManager.register();
|
||||||
scriptManager = new ScriptManager();
|
scriptManager = new ScriptManager();
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,10 @@
|
||||||
package keystrokesmod.event;
|
package keystrokesmod.event;
|
||||||
|
|
||||||
import net.minecraft.network.Packet;
|
import net.minecraft.network.Packet;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Cancelable;
|
||||||
import net.minecraftforge.fml.common.eventhandler.Event;
|
import net.minecraftforge.fml.common.eventhandler.Event;
|
||||||
|
|
||||||
|
@Cancelable
|
||||||
public class NoEventPacketEvent extends Event {
|
public class NoEventPacketEvent extends Event {
|
||||||
private Packet<?> packet;
|
private Packet<?> packet;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
package keystrokesmod.event;
|
||||||
|
|
||||||
|
import net.minecraft.network.play.server.S12PacketEntityVelocity;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Cancelable;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Event;
|
||||||
|
|
||||||
|
@Cancelable
|
||||||
|
public class PreEntityVelocityEvent extends Event {
|
||||||
|
public S12PacketEntityVelocity packet;
|
||||||
|
|
||||||
|
public PreEntityVelocityEvent(S12PacketEntityVelocity packet) {
|
||||||
|
this.packet = packet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
package keystrokesmod.event;
|
||||||
|
|
||||||
|
import net.minecraft.network.play.server.S27PacketExplosion;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Cancelable;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Event;
|
||||||
|
|
||||||
|
@Cancelable
|
||||||
|
public class PreExplosionPacketEvent extends Event {
|
||||||
|
public S27PacketExplosion packet;
|
||||||
|
|
||||||
|
public PreExplosionPacketEvent(S27PacketExplosion packet) {
|
||||||
|
this.packet = packet;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
package keystrokesmod.event;
|
||||||
|
|
||||||
|
import net.minecraft.network.Packet;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Cancelable;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Event;
|
||||||
|
|
||||||
|
@Cancelable
|
||||||
|
public class ReceiveAllPacketsEvent extends Event {
|
||||||
|
private Packet<?> packet;
|
||||||
|
|
||||||
|
public ReceiveAllPacketsEvent(Packet<?> packet) {
|
||||||
|
this.packet = packet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Packet<?> getPacket() {
|
||||||
|
return packet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
package keystrokesmod.event;
|
||||||
|
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Event;
|
||||||
|
|
||||||
|
public class RunGameLoopEvent extends Event {
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
package keystrokesmod.event;
|
||||||
|
|
||||||
|
import net.minecraft.network.Packet;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Cancelable;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Event;
|
||||||
|
|
||||||
|
@Cancelable
|
||||||
|
public class SendAllPacketsEvent extends Event {
|
||||||
|
private Packet<?> packet;
|
||||||
|
|
||||||
|
public SendAllPacketsEvent(Packet<?> packet) {
|
||||||
|
this.packet = packet;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Packet<?> getPacket() {
|
||||||
|
return packet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package keystrokesmod.mixin.impl.accessor;
|
package keystrokesmod.mixin.impl.accessor;
|
||||||
|
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
|
import net.minecraft.network.NetworkManager;
|
||||||
import net.minecraft.util.Timer;
|
import net.minecraft.util.Timer;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
|
|
@ -14,6 +15,9 @@ public interface IAccessorMinecraft {
|
||||||
@Accessor("timer")
|
@Accessor("timer")
|
||||||
Timer getTimer();
|
Timer getTimer();
|
||||||
|
|
||||||
|
@Accessor("myNetworkManager")
|
||||||
|
NetworkManager getMyNetworkManager();
|
||||||
|
|
||||||
@Accessor("rightClickDelayTimer")
|
@Accessor("rightClickDelayTimer")
|
||||||
int getRightClickDelayTimer();
|
int getRightClickDelayTimer();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
package keystrokesmod.mixin.impl.accessor;
|
||||||
|
|
||||||
|
import net.minecraft.network.INetHandler;
|
||||||
|
import net.minecraft.network.NetworkManager;
|
||||||
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
|
import org.spongepowered.asm.mixin.gen.Accessor;
|
||||||
|
|
||||||
|
@Mixin(NetworkManager.class)
|
||||||
|
public interface IAccessorNetworkManager {
|
||||||
|
@Accessor("packetListener")
|
||||||
|
INetHandler getPacketListener();
|
||||||
|
}
|
||||||
|
|
@ -1,12 +1,10 @@
|
||||||
package keystrokesmod.mixin.impl.client;
|
package keystrokesmod.mixin.impl.client;
|
||||||
|
|
||||||
|
import keystrokesmod.event.*;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.Cancelable;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
import org.objectweb.asm.Opcodes;
|
import org.objectweb.asm.Opcodes;
|
||||||
import keystrokesmod.event.GuiUpdateEvent;
|
|
||||||
import keystrokesmod.event.PreInputEvent;
|
|
||||||
import keystrokesmod.event.PreSlotScrollEvent;
|
|
||||||
import keystrokesmod.event.SlotUpdateEvent;
|
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.GuiScreen;
|
import net.minecraft.client.gui.GuiScreen;
|
||||||
import net.minecraft.entity.player.InventoryPlayer;
|
import net.minecraft.entity.player.InventoryPlayer;
|
||||||
|
|
@ -58,4 +56,9 @@ public class MixinMinecraft {
|
||||||
}
|
}
|
||||||
inventoryPlayer.currentItem = slot;
|
inventoryPlayer.currentItem = slot;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Inject(method = "runGameLoop", at= @At("HEAD"))
|
||||||
|
public void onRunGameLoop(CallbackInfo ci) {
|
||||||
|
MinecraftForge.EVENT_BUS.post(new RunGameLoopEvent());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1,8 +1,13 @@
|
||||||
package keystrokesmod.mixin.impl.network;
|
package keystrokesmod.mixin.impl.network;
|
||||||
|
|
||||||
|
import keystrokesmod.event.PreEntityVelocityEvent;
|
||||||
|
import keystrokesmod.event.PreExplosionPacketEvent;
|
||||||
import keystrokesmod.module.ModuleManager;
|
import keystrokesmod.module.ModuleManager;
|
||||||
import net.minecraft.client.network.NetHandlerPlayClient;
|
import net.minecraft.client.network.NetHandlerPlayClient;
|
||||||
import net.minecraft.network.play.server.S08PacketPlayerPosLook;
|
import net.minecraft.network.play.server.S08PacketPlayerPosLook;
|
||||||
|
import net.minecraft.network.play.server.S12PacketEntityVelocity;
|
||||||
|
import net.minecraft.network.play.server.S27PacketExplosion;
|
||||||
|
import net.minecraftforge.common.MinecraftForge;
|
||||||
import org.spongepowered.asm.mixin.Mixin;
|
import org.spongepowered.asm.mixin.Mixin;
|
||||||
import org.spongepowered.asm.mixin.injection.At;
|
import org.spongepowered.asm.mixin.injection.At;
|
||||||
import org.spongepowered.asm.mixin.injection.Inject;
|
import org.spongepowered.asm.mixin.injection.Inject;
|
||||||
|
|
@ -20,4 +25,22 @@ public class MixinNetHandlerPlayClient {
|
||||||
public void handlePlayerPosLook(S08PacketPlayerPosLook packetIn, CallbackInfo ci) {
|
public void handlePlayerPosLook(S08PacketPlayerPosLook packetIn, CallbackInfo ci) {
|
||||||
ModuleManager.noRotate.handlePlayerPosLook(packetIn);
|
ModuleManager.noRotate.handlePlayerPosLook(packetIn);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Inject(method = "handleEntityVelocity", at = @At("HEAD"), cancellable = true)
|
||||||
|
public void handleEntityVelocityInjection(S12PacketEntityVelocity packet, CallbackInfo ci) {
|
||||||
|
PreEntityVelocityEvent preEntityVelocityEvent = new PreEntityVelocityEvent(packet);
|
||||||
|
MinecraftForge.EVENT_BUS.post(preEntityVelocityEvent);
|
||||||
|
if (preEntityVelocityEvent.isCanceled()) {
|
||||||
|
ci.cancel();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Inject(method = "handleExplosion", at = @At("HEAD"), cancellable = true)
|
||||||
|
public void handleExplosionInjection(S27PacketExplosion packet, CallbackInfo ci) {
|
||||||
|
PreExplosionPacketEvent event = new PreExplosionPacketEvent(packet);
|
||||||
|
MinecraftForge.EVENT_BUS.post(event);
|
||||||
|
if (event.isCanceled()) {
|
||||||
|
ci.cancel();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1,9 +1,7 @@
|
||||||
package keystrokesmod.mixin.impl.network;
|
package keystrokesmod.mixin.impl.network;
|
||||||
|
|
||||||
import io.netty.channel.ChannelHandlerContext;
|
import io.netty.channel.ChannelHandlerContext;
|
||||||
import keystrokesmod.event.NoEventPacketEvent;
|
import keystrokesmod.event.*;
|
||||||
import keystrokesmod.event.ReceivePacketEvent;
|
|
||||||
import keystrokesmod.event.SendPacketEvent;
|
|
||||||
import keystrokesmod.utility.PacketUtils;
|
import keystrokesmod.utility.PacketUtils;
|
||||||
import net.minecraft.network.NetworkManager;
|
import net.minecraft.network.NetworkManager;
|
||||||
import net.minecraft.network.Packet;
|
import net.minecraft.network.Packet;
|
||||||
|
|
@ -16,6 +14,11 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
||||||
public class MixinNetworkManager {
|
public class MixinNetworkManager {
|
||||||
@Inject(method = "sendPacket(Lnet/minecraft/network/Packet;)V", at = @At("HEAD"), cancellable = true)
|
@Inject(method = "sendPacket(Lnet/minecraft/network/Packet;)V", at = @At("HEAD"), cancellable = true)
|
||||||
public void sendPacket(Packet p_sendPacket_1_, CallbackInfo ci) {
|
public void sendPacket(Packet p_sendPacket_1_, CallbackInfo ci) {
|
||||||
|
SendAllPacketsEvent sendAllPacketsEvent = new SendAllPacketsEvent(p_sendPacket_1_);
|
||||||
|
net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(sendAllPacketsEvent);
|
||||||
|
if (sendAllPacketsEvent.isCanceled()) {
|
||||||
|
ci.cancel();
|
||||||
|
}
|
||||||
if (PacketUtils.skipSendEvent.contains(p_sendPacket_1_)) {
|
if (PacketUtils.skipSendEvent.contains(p_sendPacket_1_)) {
|
||||||
PacketUtils.skipSendEvent.remove(p_sendPacket_1_);
|
PacketUtils.skipSendEvent.remove(p_sendPacket_1_);
|
||||||
net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(new NoEventPacketEvent(p_sendPacket_1_));
|
net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(new NoEventPacketEvent(p_sendPacket_1_));
|
||||||
|
|
@ -32,6 +35,11 @@ public class MixinNetworkManager {
|
||||||
|
|
||||||
@Inject(method = "channelRead0(Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/Packet;)V", at = @At("HEAD"), cancellable = true)
|
@Inject(method = "channelRead0(Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/Packet;)V", at = @At("HEAD"), cancellable = true)
|
||||||
public void receivePacket(ChannelHandlerContext p_channelRead0_1_, Packet p_channelRead0_2_, CallbackInfo ci) {
|
public void receivePacket(ChannelHandlerContext p_channelRead0_1_, Packet p_channelRead0_2_, CallbackInfo ci) {
|
||||||
|
ReceiveAllPacketsEvent receiveAllPacketsEvent = new ReceiveAllPacketsEvent(p_channelRead0_2_);
|
||||||
|
net.minecraftforge.common.MinecraftForge.EVENT_BUS.post(receiveAllPacketsEvent);
|
||||||
|
if (receiveAllPacketsEvent.isCanceled()) {
|
||||||
|
ci.cancel();
|
||||||
|
}
|
||||||
if (PacketUtils.skipReceiveEvent.contains(p_channelRead0_2_)) {
|
if (PacketUtils.skipReceiveEvent.contains(p_channelRead0_2_)) {
|
||||||
PacketUtils.skipReceiveEvent.remove(p_channelRead0_2_);
|
PacketUtils.skipReceiveEvent.remove(p_channelRead0_2_);
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import keystrokesmod.Raven;
|
||||||
import keystrokesmod.clickgui.ClickGui;
|
import keystrokesmod.clickgui.ClickGui;
|
||||||
import keystrokesmod.event.*;
|
import keystrokesmod.event.*;
|
||||||
import keystrokesmod.mixin.impl.accessor.IAccessorMinecraft;
|
import keystrokesmod.mixin.impl.accessor.IAccessorMinecraft;
|
||||||
|
import keystrokesmod.mixin.impl.accessor.IAccessorNetworkManager;
|
||||||
import keystrokesmod.module.Module;
|
import keystrokesmod.module.Module;
|
||||||
import keystrokesmod.module.ModuleManager;
|
import keystrokesmod.module.ModuleManager;
|
||||||
import keystrokesmod.module.impl.client.Settings;
|
import keystrokesmod.module.impl.client.Settings;
|
||||||
|
|
@ -29,6 +30,10 @@ import net.minecraft.network.Packet;
|
||||||
import net.minecraft.network.handshake.client.C00Handshake;
|
import net.minecraft.network.handshake.client.C00Handshake;
|
||||||
import net.minecraft.network.login.client.C00PacketLoginStart;
|
import net.minecraft.network.login.client.C00PacketLoginStart;
|
||||||
import net.minecraft.network.play.client.*;
|
import net.minecraft.network.play.client.*;
|
||||||
|
import net.minecraft.network.play.server.S12PacketEntityVelocity;
|
||||||
|
import net.minecraft.network.play.server.S14PacketEntity;
|
||||||
|
import net.minecraft.network.play.server.S19PacketEntityHeadLook;
|
||||||
|
import net.minecraft.network.play.server.S27PacketExplosion;
|
||||||
import net.minecraft.util.*;
|
import net.minecraft.util.*;
|
||||||
import net.minecraftforge.client.event.MouseEvent;
|
import net.minecraftforge.client.event.MouseEvent;
|
||||||
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
|
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
|
||||||
|
|
@ -71,9 +76,7 @@ public class KillAura extends Module {
|
||||||
private ButtonSetting silentSwing;
|
private ButtonSetting silentSwing;
|
||||||
private ButtonSetting weaponOnly;
|
private ButtonSetting weaponOnly;
|
||||||
|
|
||||||
private String[] autoBlockModes = new String[] { "Manual", "Vanilla", "Partial", "Interact A", "Interact B" };
|
private String[] autoBlockModes = new String[] { "Manual", "Vanilla", "Partial", "Via A", "Via B" };
|
||||||
private String[] interactAModes = new String[] { "10", "9.5" };
|
|
||||||
private String[] interactBModes = new String[] { "10", "9.5" };
|
|
||||||
private String[] rotationModes = new String[] { "Silent", "Lock view", "None" };
|
private String[] rotationModes = new String[] { "Silent", "Lock view", "None" };
|
||||||
private String[] rotateModes = new String[] { "Attacking", "Swinging" };
|
private String[] rotateModes = new String[] { "Attacking", "Swinging" };
|
||||||
private String[] sortModes = new String[] { "Distance", "Health", "Hurttime", "Yaw" };
|
private String[] sortModes = new String[] { "Distance", "Health", "Hurttime", "Yaw" };
|
||||||
|
|
@ -98,14 +101,14 @@ public class KillAura extends Module {
|
||||||
private boolean firstCycle = true;
|
private boolean firstCycle = true;
|
||||||
private boolean partialDown;
|
private boolean partialDown;
|
||||||
private int partialTicks;
|
private int partialTicks;
|
||||||
private int firstEdge, firstGyatt;
|
private int cycleCount2, cycleCount1;
|
||||||
private int unBlockDelay;
|
private int unBlockDelay;
|
||||||
private boolean canBlockServerside;
|
private boolean canBlockServerside;
|
||||||
private boolean checkUsing;
|
private boolean checkUsing;
|
||||||
|
|
||||||
// blink related
|
// blink related
|
||||||
private ConcurrentLinkedQueue<Packet> blinkedPackets = new ConcurrentLinkedQueue<>();
|
private ConcurrentLinkedQueue<Packet> blinkedPackets = new ConcurrentLinkedQueue<>();
|
||||||
private AtomicBoolean blinking = new AtomicBoolean(false);
|
public AtomicBoolean blinking = new AtomicBoolean(false);
|
||||||
public boolean lag;
|
public boolean lag;
|
||||||
public boolean swapped;
|
public boolean swapped;
|
||||||
|
|
||||||
|
|
@ -133,8 +136,6 @@ public class KillAura extends Module {
|
||||||
super("KillAura", category.combat);
|
super("KillAura", category.combat);
|
||||||
this.registerSetting(aps = new SliderSetting("APS", 16.0, 1.0, 20.0, 0.5));
|
this.registerSetting(aps = new SliderSetting("APS", 16.0, 1.0, 20.0, 0.5));
|
||||||
this.registerSetting(autoBlockMode = new SliderSetting("Autoblock", 0, autoBlockModes));
|
this.registerSetting(autoBlockMode = new SliderSetting("Autoblock", 0, autoBlockModes));
|
||||||
this.registerSetting(interactA = new SliderSetting("Interact mode", " aps", 0, interactAModes));
|
|
||||||
this.registerSetting(interactB = new SliderSetting("Interact mode", " aps", 0, interactBModes));
|
|
||||||
this.registerSetting(fov = new SliderSetting("FOV", 360.0, 30.0, 360.0, 4.0));
|
this.registerSetting(fov = new SliderSetting("FOV", 360.0, 30.0, 360.0, 4.0));
|
||||||
this.registerSetting(attackRange = new SliderSetting("Range (attack)", 3.0, 3.0, 6.0, 0.05));
|
this.registerSetting(attackRange = new SliderSetting("Range (attack)", 3.0, 3.0, 6.0, 0.05));
|
||||||
this.registerSetting(swingRange = new SliderSetting("Range (swing)", 3.3, 3.0, 8.0, 0.05));
|
this.registerSetting(swingRange = new SliderSetting("Range (swing)", 3.3, 3.0, 8.0, 0.05));
|
||||||
|
|
@ -159,11 +160,6 @@ public class KillAura extends Module {
|
||||||
this.registerSetting(weaponOnly = new ButtonSetting("Weapon only", false));
|
this.registerSetting(weaponOnly = new ButtonSetting("Weapon only", false));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void guiUpdate() {
|
|
||||||
this.interactA.setVisible(autoBlockMode.getInput() == 3, this);
|
|
||||||
this.interactB.setVisible(autoBlockMode.getInput() == 4, this);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getInfo() {
|
public String getInfo() {
|
||||||
if (rotationMode.getInput() == 2) { // None, return FOV if rotation mode is none
|
if (rotationMode.getInput() == 2) { // None, return FOV if rotation mode is none
|
||||||
|
|
@ -187,7 +183,7 @@ public class KillAura extends Module {
|
||||||
resetBlinkState(true);
|
resetBlinkState(true);
|
||||||
}
|
}
|
||||||
blinking.set(false);
|
blinking.set(false);
|
||||||
interactTicks = firstEdge = 0;
|
interactTicks = cycleCount1 = cycleCount2 = 0;
|
||||||
setTarget(null);
|
setTarget(null);
|
||||||
if (rotated || reset) {
|
if (rotated || reset) {
|
||||||
resetYaw();
|
resetYaw();
|
||||||
|
|
@ -211,10 +207,10 @@ public class KillAura extends Module {
|
||||||
}
|
}
|
||||||
if (target == null || !manualBlock() && manualBlock.isToggled()) {
|
if (target == null || !manualBlock() && manualBlock.isToggled()) {
|
||||||
if (ModuleUtils.swapTick == 0 && !ModuleUtils.isBlocked) {
|
if (ModuleUtils.swapTick == 0 && !ModuleUtils.isBlocked) {
|
||||||
interactTicks = firstEdge = 1;
|
interactTicks = cycleCount2 = 1;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
interactTicks = firstEdge = 0;
|
interactTicks = cycleCount2 = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (target != null && Utils.holdingSword()) {
|
if (target != null && Utils.holdingSword()) {
|
||||||
|
|
@ -425,7 +421,7 @@ public class KillAura extends Module {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (blinking.get() && !e.isCanceled()) { // blink
|
if (blinking.get() && !e.isCanceled()) {
|
||||||
if (packet instanceof C00PacketLoginStart || packet instanceof C00Handshake) {
|
if (packet instanceof C00PacketLoginStart || packet instanceof C00Handshake) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -921,178 +917,101 @@ public class KillAura extends Module {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case 3: // interact a
|
case 3: // via a
|
||||||
switch ((int) interactA.getInput()) {
|
if (interactTicks >= 3) {
|
||||||
case 0:
|
interactTicks = 0;
|
||||||
getInteractA0(distance, swung);
|
}
|
||||||
break;
|
interactTicks++;
|
||||||
|
if (firstCycle) {
|
||||||
|
switch (interactTicks) {
|
||||||
|
case 1:
|
||||||
|
blinking.set(true);
|
||||||
|
++cycleCount1;
|
||||||
|
if (cycleCount1 > 2) {
|
||||||
|
cycleCount1 = 0;
|
||||||
|
}
|
||||||
|
if (ModuleUtils.isBlocked) {
|
||||||
|
if (cycleCount1 <= -1) {
|
||||||
|
sendUnBlockPacket();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setSwapSlot();
|
||||||
|
swapped = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
if (swapped) {
|
||||||
|
setCurrentSlot();
|
||||||
|
swapped = false;
|
||||||
|
}
|
||||||
|
handleInteractAndAttack(distance, true, true, swung);
|
||||||
|
sendBlockPacket();
|
||||||
|
releasePackets(); // release
|
||||||
|
interactTicks = 0;
|
||||||
|
++cycleCount2;
|
||||||
|
if (cycleCount2 > 5) {
|
||||||
|
firstCycle = false;
|
||||||
|
cycleCount2 = 0;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
switch (interactTicks) {
|
||||||
|
case 1:
|
||||||
|
if (ModuleUtils.isBlocked) {
|
||||||
|
setSwapSlot();
|
||||||
|
swapped = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
if (swapped) {
|
||||||
|
setCurrentSlot();
|
||||||
|
swapped = false;
|
||||||
|
}
|
||||||
|
handleInteractAndAttack(distance, true, true, swung);
|
||||||
|
sendBlockPacket();
|
||||||
|
releasePackets(); // release
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
firstCycle = true;
|
||||||
|
interactTicks = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 4: // via b
|
||||||
|
interactTicks++;
|
||||||
|
switch (interactTicks) {
|
||||||
case 1:
|
case 1:
|
||||||
getInteractA1(distance, swung);
|
blinking.set(true);
|
||||||
|
if (ModuleUtils.isBlocked) {
|
||||||
|
setSwapSlot();
|
||||||
|
swapped = true;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
case 2:
|
||||||
break;
|
if (swapped) {
|
||||||
case 4: // interact b
|
setCurrentSlot();
|
||||||
switch ((int) interactB.getInput()) {
|
swapped = false;
|
||||||
case 0:
|
}
|
||||||
getInteractB0(distance, swung);
|
handleInteractAndAttack(distance, true, true, swung);
|
||||||
|
sendBlockPacket();
|
||||||
|
if (++cycleCount2 > 1) {
|
||||||
|
interactTicks = 0;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
releasePackets(); // release
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 3:
|
||||||
getInteractB1(distance, swung);
|
releasePackets(); // release
|
||||||
break;
|
interactTicks = 0;
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void getInteractA0(double distance, boolean swung) {
|
|
||||||
if (interactTicks >= 2) {
|
|
||||||
interactTicks = 0;
|
|
||||||
}
|
|
||||||
interactTicks++;
|
|
||||||
switch (interactTicks) {
|
|
||||||
case 1:
|
|
||||||
blinking.set(true);
|
|
||||||
if (ModuleUtils.isBlocked) {
|
|
||||||
sendUnBlockPacket();
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
handleInteractAndAttack(distance, true, true, swung);
|
|
||||||
sendBlockPacket();
|
|
||||||
releasePackets(); // release
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void getInteractA1(double distance, boolean swung) {
|
|
||||||
if (interactTicks >= 3) {
|
|
||||||
interactTicks = 0;
|
|
||||||
}
|
|
||||||
interactTicks++;
|
|
||||||
if (firstCycle) {
|
|
||||||
switch (interactTicks) {
|
|
||||||
case 1:
|
|
||||||
blinking.set(true);
|
|
||||||
if (ModuleUtils.isBlocked) {
|
|
||||||
sendUnBlockPacket();
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
handleInteractAndAttack(distance, true, true, swung);
|
|
||||||
sendBlockPacket();
|
|
||||||
releasePackets(); // release
|
|
||||||
interactTicks = 0;
|
|
||||||
firstCycle = false;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
switch (interactTicks) {
|
|
||||||
case 1:
|
|
||||||
blinking.set(true);
|
|
||||||
if (ModuleUtils.isBlocked) {
|
|
||||||
setSwapSlot();
|
|
||||||
swapped = true;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
if (swapped) {
|
|
||||||
setCurrentSlot();
|
|
||||||
swapped = false;
|
|
||||||
}
|
|
||||||
handleInteractAndAttack(distance, true, true, swung);
|
|
||||||
sendBlockPacket();
|
|
||||||
releasePackets(); // release
|
|
||||||
firstCycle = true;
|
|
||||||
interactTicks = 0;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void getInteractB0(double distance, boolean swung) {
|
|
||||||
if (interactTicks >= 2) {
|
|
||||||
interactTicks = 0;
|
|
||||||
}
|
|
||||||
interactTicks++;
|
|
||||||
switch (interactTicks) {
|
|
||||||
case 1:
|
|
||||||
blinking.set(true);
|
|
||||||
if (ModuleUtils.isBlocked) {
|
|
||||||
setSwapSlot();
|
|
||||||
swapped = true;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
if (swapped) {
|
|
||||||
setCurrentSlot();
|
|
||||||
swapped = false;
|
|
||||||
}
|
|
||||||
handleInteractAndAttack(distance, true, true, swung);
|
|
||||||
sendBlockPacket();
|
|
||||||
releasePackets(); // release
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void getInteractB1(double distance, boolean swung) {
|
|
||||||
if (interactTicks >= 3) {
|
|
||||||
interactTicks = 0;
|
|
||||||
}
|
|
||||||
interactTicks++;
|
|
||||||
if (firstCycle) {
|
|
||||||
switch (interactTicks) {
|
|
||||||
case 1:
|
|
||||||
blinking.set(true);
|
|
||||||
if (ModuleUtils.isBlocked) {
|
|
||||||
setSwapSlot();
|
|
||||||
swapped = true;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
if (swapped) {
|
|
||||||
setCurrentSlot();
|
|
||||||
swapped = false;
|
|
||||||
}
|
|
||||||
handleInteractAndAttack(distance, true, true, swung);
|
|
||||||
sendBlockPacket();
|
|
||||||
releasePackets(); // release
|
|
||||||
interactTicks = 0;
|
|
||||||
++firstEdge;
|
|
||||||
if (firstEdge > 5) {
|
|
||||||
firstCycle = false;
|
firstCycle = false;
|
||||||
firstEdge = 0;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
else {
|
|
||||||
switch (interactTicks) {
|
|
||||||
case 1:
|
|
||||||
blinking.set(true);
|
|
||||||
if (ModuleUtils.isBlocked) {
|
|
||||||
setSwapSlot();
|
|
||||||
swapped = true;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
if (swapped) {
|
|
||||||
setCurrentSlot();
|
|
||||||
swapped = false;
|
|
||||||
}
|
|
||||||
handleInteractAndAttack(distance, true, true, swung);
|
|
||||||
sendBlockPacket();
|
|
||||||
releasePackets(); // release
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
firstCycle = true;
|
|
||||||
interactTicks = 0;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1367,7 +1286,6 @@ public class KillAura extends Module {
|
||||||
for (Packet packet : blinkedPackets) {
|
for (Packet packet : blinkedPackets) {
|
||||||
Raven.packetsHandler.handlePacket(packet);
|
Raven.packetsHandler.handlePacket(packet);
|
||||||
PacketUtils.sendPacketNoEvent(packet);
|
PacketUtils.sendPacketNoEvent(packet);
|
||||||
//Utils.print("blink packets");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,24 +1,29 @@
|
||||||
package keystrokesmod.module.impl.combat;
|
package keystrokesmod.module.impl.combat;
|
||||||
|
|
||||||
|
import keystrokesmod.Raven;
|
||||||
|
import keystrokesmod.event.PreMotionEvent;
|
||||||
import keystrokesmod.event.PreUpdateEvent;
|
import keystrokesmod.event.PreUpdateEvent;
|
||||||
|
import keystrokesmod.event.ReceiveAllPacketsEvent;
|
||||||
import keystrokesmod.event.ReceivePacketEvent;
|
import keystrokesmod.event.ReceivePacketEvent;
|
||||||
import keystrokesmod.event.SendPacketEvent;
|
|
||||||
import keystrokesmod.module.Module;
|
import keystrokesmod.module.Module;
|
||||||
import keystrokesmod.module.ModuleManager;
|
import keystrokesmod.module.ModuleManager;
|
||||||
import keystrokesmod.module.impl.movement.LongJump;
|
import keystrokesmod.module.impl.movement.LongJump;
|
||||||
import keystrokesmod.module.setting.impl.ButtonSetting;
|
import keystrokesmod.module.setting.impl.ButtonSetting;
|
||||||
import keystrokesmod.module.setting.impl.KeySetting;
|
import keystrokesmod.module.setting.impl.KeySetting;
|
||||||
import keystrokesmod.module.setting.impl.SliderSetting;
|
import keystrokesmod.module.setting.impl.SliderSetting;
|
||||||
|
import keystrokesmod.utility.PacketUtils;
|
||||||
import keystrokesmod.utility.Utils;
|
import keystrokesmod.utility.Utils;
|
||||||
import keystrokesmod.utility.ModuleUtils;
|
import keystrokesmod.utility.ModuleUtils;
|
||||||
import net.minecraft.network.Packet;
|
import net.minecraft.network.Packet;
|
||||||
import net.minecraft.network.play.client.C08PacketPlayerBlockPlacement;
|
|
||||||
import net.minecraft.network.play.server.S12PacketEntityVelocity;
|
import net.minecraft.network.play.server.S12PacketEntityVelocity;
|
||||||
import net.minecraft.network.play.server.S27PacketExplosion;
|
import net.minecraft.network.play.server.S27PacketExplosion;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.EventPriority;
|
||||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||||
import net.minecraftforge.event.entity.living.LivingEvent.LivingUpdateEvent;
|
import net.minecraftforge.event.entity.living.LivingEvent.LivingUpdateEvent;
|
||||||
import org.lwjgl.input.Keyboard;
|
import org.lwjgl.input.Keyboard;
|
||||||
|
|
||||||
|
import java.util.concurrent.ConcurrentLinkedQueue;
|
||||||
|
|
||||||
public class Velocity extends Module {
|
public class Velocity extends Module {
|
||||||
public SliderSetting velocityModes;
|
public SliderSetting velocityModes;
|
||||||
public static SliderSetting vertical, horizontal, reverseHorizontal, explosionsHorizontal, explosionsVertical;
|
public static SliderSetting vertical, horizontal, reverseHorizontal, explosionsHorizontal, explosionsVertical;
|
||||||
|
|
@ -27,7 +32,7 @@ public class Velocity extends Module {
|
||||||
private ButtonSetting onlyWhileAttacking;
|
private ButtonSetting onlyWhileAttacking;
|
||||||
private ButtonSetting onlyWhileTargeting;
|
private ButtonSetting onlyWhileTargeting;
|
||||||
private ButtonSetting disableS;
|
private ButtonSetting disableS;
|
||||||
private ButtonSetting zzWhileNotTargeting;
|
private ButtonSetting zzWhileNotTargeting, delayPacket;
|
||||||
public ButtonSetting allowSelfFireball;
|
public ButtonSetting allowSelfFireball;
|
||||||
public static ButtonSetting reverseDebug;
|
public static ButtonSetting reverseDebug;
|
||||||
private KeySetting switchToReverse, switchToPacket;
|
private KeySetting switchToReverse, switchToPacket;
|
||||||
|
|
@ -111,8 +116,8 @@ public class Velocity extends Module {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SubscribeEvent
|
@SubscribeEvent(priority = EventPriority.LOWEST)
|
||||||
public void onReceivePacket(ReceivePacketEvent e) {
|
public void onReceivePacketAll(ReceiveAllPacketsEvent e) {
|
||||||
if (velocityModes.getInput() >= 1) {
|
if (velocityModes.getInput() >= 1) {
|
||||||
if (!Utils.nullCheck() || LongJump.stopVelocity || e.isCanceled() || ModuleManager.bedAura.cancelKnockback() || ModuleManager.tower.cancelKnockback() || velocityModes.getInput() == 2 && ModuleUtils.firstDamage || ModuleManager.bhop.isEnabled() && ModuleManager.bhop.damageBoost.isToggled() && ModuleUtils.firstDamage && (!ModuleManager.bhop.damageBoostRequireKey.isToggled() || ModuleManager.bhop.damageBoostKey.isPressed())) {
|
if (!Utils.nullCheck() || LongJump.stopVelocity || e.isCanceled() || ModuleManager.bedAura.cancelKnockback() || ModuleManager.tower.cancelKnockback() || velocityModes.getInput() == 2 && ModuleUtils.firstDamage || ModuleManager.bhop.isEnabled() && ModuleManager.bhop.damageBoost.isToggled() && ModuleUtils.firstDamage && (!ModuleManager.bhop.damageBoostRequireKey.isToggled() || ModuleManager.bhop.damageBoostKey.isPressed())) {
|
||||||
return;
|
return;
|
||||||
|
|
@ -204,6 +209,9 @@ public class Velocity extends Module {
|
||||||
if (onlyWhileAttacking.isToggled() && !ModuleUtils.isAttacking) {
|
if (onlyWhileAttacking.isToggled() && !ModuleUtils.isAttacking) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (dontEditMotion()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (onlyWhileTargeting.isToggled() && (mc.objectMouseOver == null || mc.objectMouseOver.entityHit == null)) {
|
if (onlyWhileTargeting.isToggled() && (mc.objectMouseOver == null || mc.objectMouseOver.entityHit == null)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -231,10 +239,22 @@ public class Velocity extends Module {
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean dontEditMotion() {
|
private boolean dontEditMotion() {
|
||||||
if (zzWhileNotTargeting.isToggled() && !ModuleManager.killAura.isTargeting) {
|
if (velocityModes.getInput() == 1 && zzWhileNotTargeting.isToggled() && !ModuleManager.killAura.isTargeting) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean blinkModules() {
|
||||||
|
if (ModuleManager.killAura.isEnabled() && ModuleManager.killAura.blinking.get()) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (ModuleManager.blink.isEnabled() && ModuleManager.blink.started) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (ModuleManager.antiVoid.isEnabled() && ModuleManager.antiVoid.started) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,20 +41,7 @@ public class InvMove extends Module {
|
||||||
}
|
}
|
||||||
|
|
||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void onSendPacketNoEvent(NoEventPacketEvent e) {
|
public void onSendPacketAll(SendAllPacketsEvent 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()) {
|
if (!Utils.nullCheck()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -272,7 +272,7 @@ public class LongJump extends Module {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (ev.phase == TickEvent.Phase.END) {
|
if (ev.phase == TickEvent.Phase.END) {
|
||||||
if (mc.currentScreen != null || !renderFloatProgress.isToggled() || mode.getInput() != 0) {
|
if (mc.currentScreen != null || !renderFloatProgress.isToggled() || mode.getInput() != 0 || !function) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -343,12 +343,19 @@ public class LongJump extends Module {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SubscribeEvent
|
||||||
|
public void onPostPlayerInput(PostPlayerInputEvent e) {
|
||||||
|
if (!function) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
mc.thePlayer.movementInput.jump = false;
|
||||||
|
}
|
||||||
|
|
||||||
@SubscribeEvent(priority = EventPriority.LOWEST) // called last in order to apply fix
|
@SubscribeEvent(priority = EventPriority.LOWEST) // called last in order to apply fix
|
||||||
public void onMoveInput(PrePlayerInputEvent e) {
|
public void onMoveInput(PrePlayerInputEvent e) {
|
||||||
if (!function) {
|
if (!function) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
mc.thePlayer.movementInput.jump = false;
|
|
||||||
if (rotateTick > 0 || fireballTime > 0) {
|
if (rotateTick > 0 || fireballTime > 0) {
|
||||||
if (Utils.isMoving()) e.setForward(1);
|
if (Utils.isMoving()) e.setForward(1);
|
||||||
e.setStrafe(0);
|
e.setStrafe(0);
|
||||||
|
|
@ -420,6 +427,7 @@ public class LongJump extends Module {
|
||||||
boostTicks = -1;
|
boostTicks = -1;
|
||||||
resetSlot();
|
resetSlot();
|
||||||
enabled = function = notMoving = stopVelocity = stopModules = swapped = false;
|
enabled = function = notMoving = stopVelocity = stopModules = swapped = false;
|
||||||
|
filledWidth = 0;
|
||||||
if (!manual.isToggled()) {
|
if (!manual.isToggled()) {
|
||||||
disable();
|
disable();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package keystrokesmod.module.impl.player;
|
||||||
|
|
||||||
import keystrokesmod.Raven;
|
import keystrokesmod.Raven;
|
||||||
import keystrokesmod.event.PreUpdateEvent;
|
import keystrokesmod.event.PreUpdateEvent;
|
||||||
|
import keystrokesmod.event.ReceivePacketEvent;
|
||||||
import keystrokesmod.event.SendPacketEvent;
|
import keystrokesmod.event.SendPacketEvent;
|
||||||
import keystrokesmod.module.Module;
|
import keystrokesmod.module.Module;
|
||||||
import keystrokesmod.module.ModuleManager;
|
import keystrokesmod.module.ModuleManager;
|
||||||
|
|
@ -18,6 +19,8 @@ import net.minecraft.network.handshake.client.C00Handshake;
|
||||||
import net.minecraft.network.login.client.C00PacketLoginStart;
|
import net.minecraft.network.login.client.C00PacketLoginStart;
|
||||||
import net.minecraft.network.play.client.C02PacketUseEntity;
|
import net.minecraft.network.play.client.C02PacketUseEntity;
|
||||||
import net.minecraft.network.play.client.C03PacketPlayer;
|
import net.minecraft.network.play.client.C03PacketPlayer;
|
||||||
|
import net.minecraft.network.play.client.C0FPacketConfirmTransaction;
|
||||||
|
import net.minecraft.network.play.server.S12PacketEntityVelocity;
|
||||||
import net.minecraft.util.AxisAlignedBB;
|
import net.minecraft.util.AxisAlignedBB;
|
||||||
import net.minecraft.util.Vec3;
|
import net.minecraft.util.Vec3;
|
||||||
import net.minecraftforge.client.event.RenderWorldLastEvent;
|
import net.minecraftforge.client.event.RenderWorldLastEvent;
|
||||||
|
|
@ -65,14 +68,14 @@ public class AntiVoid extends Module {
|
||||||
wait = false;
|
wait = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!started && (Utils.isReplay() || Utils.isBedwarsPractice() && disablePractice.isToggled())) {
|
if (!started && (Utils.isReplay() || Utils.spectatorCheck() || Utils.isBedwarsPractice() && disablePractice.isToggled())) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (packet.getClass().getSimpleName().startsWith("S")) {
|
if (packet.getClass().getSimpleName().startsWith("S")) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (ModuleManager.killAura.isTargeting || ModuleManager.killAura.justUnTargeted) {
|
if (ModuleManager.killAura.isTargeting || ModuleManager.killAura.justUnTargeted) {
|
||||||
return;
|
//return;
|
||||||
}
|
}
|
||||||
if (wait) {
|
if (wait) {
|
||||||
return;
|
return;
|
||||||
|
|
@ -147,11 +150,13 @@ public class AntiVoid extends Module {
|
||||||
started = false;
|
started = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean dist() {
|
public boolean dist() {
|
||||||
double minMotion = 0.06;
|
double minMotion = 0.06;
|
||||||
// 1x1
|
|
||||||
|
|
||||||
int dist1 = 2;
|
int dist1 = 2;
|
||||||
|
int dist2 = 4;
|
||||||
|
int dist3 = 6;
|
||||||
|
int dist4 = 8;
|
||||||
|
// 1x1
|
||||||
|
|
||||||
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ) > dist1) {
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ) > dist1) {
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -199,8 +204,6 @@ public class AntiVoid extends Module {
|
||||||
|
|
||||||
// 2x2
|
// 2x2
|
||||||
|
|
||||||
int dist2 = 5;
|
|
||||||
|
|
||||||
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ) > dist2) {
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ) > dist2) {
|
||||||
if (mc.thePlayer.motionX <= -minMotion) {
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -264,8 +267,6 @@ public class AntiVoid extends Module {
|
||||||
|
|
||||||
// 3x3
|
// 3x3
|
||||||
|
|
||||||
int dist3 = 9;
|
|
||||||
|
|
||||||
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ) > dist3) {
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ) > dist3) {
|
||||||
if (mc.thePlayer.motionX >= minMotion) {
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -389,8 +390,6 @@ public class AntiVoid extends Module {
|
||||||
|
|
||||||
// 4x4
|
// 4x4
|
||||||
|
|
||||||
int dist4 = 16;
|
|
||||||
|
|
||||||
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ) > dist4) {
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ) > dist4) {
|
||||||
if (mc.thePlayer.motionX >= minMotion) {
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
return true;
|
return true;
|
||||||
|
|
|
||||||
|
|
@ -2,9 +2,12 @@ package keystrokesmod.module.impl.player;
|
||||||
|
|
||||||
import keystrokesmod.Raven;
|
import keystrokesmod.Raven;
|
||||||
import keystrokesmod.event.PreUpdateEvent;
|
import keystrokesmod.event.PreUpdateEvent;
|
||||||
|
import keystrokesmod.event.ReceiveAllPacketsEvent;
|
||||||
|
import keystrokesmod.event.ReceivePacketEvent;
|
||||||
import keystrokesmod.event.SendPacketEvent;
|
import keystrokesmod.event.SendPacketEvent;
|
||||||
import keystrokesmod.module.Module;
|
import keystrokesmod.module.Module;
|
||||||
import keystrokesmod.module.ModuleManager;
|
import keystrokesmod.module.ModuleManager;
|
||||||
|
import keystrokesmod.module.impl.movement.LongJump;
|
||||||
import keystrokesmod.module.impl.render.HUD;
|
import keystrokesmod.module.impl.render.HUD;
|
||||||
import keystrokesmod.module.setting.impl.ButtonSetting;
|
import keystrokesmod.module.setting.impl.ButtonSetting;
|
||||||
import keystrokesmod.module.setting.impl.DescriptionSetting;
|
import keystrokesmod.module.setting.impl.DescriptionSetting;
|
||||||
|
|
@ -23,6 +26,7 @@ import net.minecraft.network.login.client.C01PacketEncryptionResponse;
|
||||||
import net.minecraft.network.play.client.C00PacketKeepAlive;
|
import net.minecraft.network.play.client.C00PacketKeepAlive;
|
||||||
import net.minecraft.network.play.client.C02PacketUseEntity;
|
import net.minecraft.network.play.client.C02PacketUseEntity;
|
||||||
import net.minecraft.network.play.client.C0FPacketConfirmTransaction;
|
import net.minecraft.network.play.client.C0FPacketConfirmTransaction;
|
||||||
|
import net.minecraft.network.play.server.*;
|
||||||
import net.minecraft.network.status.client.C00PacketServerQuery;
|
import net.minecraft.network.status.client.C00PacketServerQuery;
|
||||||
import net.minecraft.network.status.client.C01PacketPing;
|
import net.minecraft.network.status.client.C01PacketPing;
|
||||||
import net.minecraft.util.AxisAlignedBB;
|
import net.minecraft.util.AxisAlignedBB;
|
||||||
|
|
@ -33,6 +37,7 @@ import net.minecraftforge.fml.common.gameevent.TickEvent;
|
||||||
import org.lwjgl.opengl.GL11;
|
import org.lwjgl.opengl.GL11;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
|
import java.util.Objects;
|
||||||
import java.util.concurrent.ConcurrentLinkedQueue;
|
import java.util.concurrent.ConcurrentLinkedQueue;
|
||||||
|
|
||||||
import static keystrokesmod.module.impl.render.HUD.theme;
|
import static keystrokesmod.module.impl.render.HUD.theme;
|
||||||
|
|
@ -47,7 +52,8 @@ public class Blink extends Module {
|
||||||
//final private int color = Theme.getGradient((int) theme.getInput(), 255);
|
//final private int color = Theme.getGradient((int) theme.getInput(), 255);
|
||||||
private int color = new Color(0, 187, 255, 255).getRGB();
|
private int color = new Color(0, 187, 255, 255).getRGB();
|
||||||
private int blinkTicks;
|
private int blinkTicks;
|
||||||
private boolean started;
|
public boolean started;
|
||||||
|
|
||||||
public Blink() {
|
public Blink() {
|
||||||
super("Blink", category.player);
|
super("Blink", category.player);
|
||||||
this.registerSetting(maximumBlinkTicks = new SliderSetting("Max Blink Ticks", "", 0, 0, 40, 1));
|
this.registerSetting(maximumBlinkTicks = new SliderSetting("Max Blink Ticks", "", 0, 0, 40, 1));
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ import keystrokesmod.module.ModuleManager;
|
||||||
import keystrokesmod.module.impl.render.HUD;
|
import keystrokesmod.module.impl.render.HUD;
|
||||||
import keystrokesmod.module.setting.impl.ButtonSetting;
|
import keystrokesmod.module.setting.impl.ButtonSetting;
|
||||||
import keystrokesmod.module.setting.impl.SliderSetting;
|
import keystrokesmod.module.setting.impl.SliderSetting;
|
||||||
|
import keystrokesmod.utility.ModuleUtils;
|
||||||
import keystrokesmod.utility.RenderUtils;
|
import keystrokesmod.utility.RenderUtils;
|
||||||
import keystrokesmod.utility.Theme;
|
import keystrokesmod.utility.Theme;
|
||||||
import keystrokesmod.utility.Utils;
|
import keystrokesmod.utility.Utils;
|
||||||
|
|
@ -27,7 +28,6 @@ public class Disabler extends Module {
|
||||||
|
|
||||||
int tickCounter = 0;
|
int tickCounter = 0;
|
||||||
boolean waitingForGround = false;
|
boolean waitingForGround = false;
|
||||||
int airTicks = 0;
|
|
||||||
boolean applyingMotion = false;
|
boolean applyingMotion = false;
|
||||||
int stateTickCounter = 0;
|
int stateTickCounter = 0;
|
||||||
boolean warningDisplayed = false;
|
boolean warningDisplayed = false;
|
||||||
|
|
@ -53,7 +53,7 @@ public class Disabler extends Module {
|
||||||
|
|
||||||
public Disabler() {
|
public Disabler() {
|
||||||
super("Disabler", Module.category.player);
|
super("Disabler", Module.category.player);
|
||||||
this.registerSetting(disablerTicks = new SliderSetting("Ticks", "", 150, 110, 150, 5));
|
this.registerSetting(disablerTicks = new SliderSetting("Ticks", "", 150, 85, 150, 5));
|
||||||
this.registerSetting(activationDelay = new SliderSetting("Activation delay", " seconds", 0, 0, 4, 0.5));
|
this.registerSetting(activationDelay = new SliderSetting("Activation delay", " seconds", 0, 0, 4, 0.5));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -71,7 +71,6 @@ public class Disabler extends Module {
|
||||||
private void resetState() {
|
private void resetState() {
|
||||||
shouldRun = true;
|
shouldRun = true;
|
||||||
tickCounter = 0;
|
tickCounter = 0;
|
||||||
airTicks = 0;
|
|
||||||
applyingMotion = false;
|
applyingMotion = false;
|
||||||
waitingForGround = true;
|
waitingForGround = true;
|
||||||
stateTickCounter = 0;
|
stateTickCounter = 0;
|
||||||
|
|
@ -112,16 +111,15 @@ public class Disabler extends Module {
|
||||||
if ((now - lobbyTime) < activationDelayMillis) {
|
if ((now - lobbyTime) < activationDelayMillis) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (!running) {
|
||||||
if (waitingForGround) {
|
|
||||||
savedYaw = e.getYaw();
|
savedYaw = e.getYaw();
|
||||||
savedPitch = e.getPitch();
|
savedPitch = e.getPitch();
|
||||||
if (!running) {
|
|
||||||
//mc.thePlayer.motionY = 0;
|
|
||||||
}
|
|
||||||
running = true;
|
running = true;
|
||||||
|
}
|
||||||
|
e.setRotations(savedYaw, savedPitch);
|
||||||
|
|
||||||
|
if (waitingForGround) {
|
||||||
/*if (mc.thePlayer.ticksExisted <= 3) {
|
/*if (mc.thePlayer.ticksExisted <= 3) {
|
||||||
mc.thePlayer.motionY = 0.42f;
|
|
||||||
waitingForGround = false;
|
waitingForGround = false;
|
||||||
worldJoin = true;
|
worldJoin = true;
|
||||||
}
|
}
|
||||||
|
|
@ -130,13 +128,10 @@ public class Disabler extends Module {
|
||||||
waitingForGround = false;
|
waitingForGround = false;
|
||||||
worldJoin = false;
|
worldJoin = false;
|
||||||
}
|
}
|
||||||
e.setRotations(savedYaw, savedPitch);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
e.setRotations(savedYaw, savedPitch);
|
|
||||||
|
|
||||||
airTicks = mc.thePlayer.onGround ? 0 : airTicks + 1;
|
if (ModuleUtils.inAirTicks >= 10 || worldJoin) {
|
||||||
if (airTicks >= 10 || worldJoin) {
|
|
||||||
if (!applyingMotion) {
|
if (!applyingMotion) {
|
||||||
applyingMotion = true;
|
applyingMotion = true;
|
||||||
firstY = mc.thePlayer.posY;
|
firstY = mc.thePlayer.posY;
|
||||||
|
|
@ -166,9 +161,6 @@ public class Disabler extends Module {
|
||||||
|
|
||||||
if (mc.thePlayer.ticksExisted % 2 == 0) {
|
if (mc.thePlayer.ticksExisted % 2 == 0) {
|
||||||
e.setPosZ(e.getPosZ() + 0.075);
|
e.setPosZ(e.getPosZ() + 0.075);
|
||||||
e.setPosX(e.getPosX() + 0.075);
|
|
||||||
e.setPosY(e.getPosY() + 0.075);
|
|
||||||
//e.setYaw(e.getYaw() + 8);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
tickCounter++;
|
tickCounter++;
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ public class NoFall extends Module {
|
||||||
public SliderSetting mode;
|
public SliderSetting mode;
|
||||||
private SliderSetting minFallDistance;
|
private SliderSetting minFallDistance;
|
||||||
private ButtonSetting disableAdventure;
|
private ButtonSetting disableAdventure;
|
||||||
private ButtonSetting ignoreVoid;
|
private ButtonSetting ignoreVoid, voidC;
|
||||||
private ButtonSetting hideSound;
|
private ButtonSetting hideSound;
|
||||||
private String[] modes = new String[]{"Spoof", "NoGround", "Packet A", "Packet B", "CTW Packet", "Prediction"};
|
private String[] modes = new String[]{"Spoof", "NoGround", "Packet A", "Packet B", "CTW Packet", "Prediction"};
|
||||||
|
|
||||||
|
|
@ -47,7 +47,8 @@ public class NoFall extends Module {
|
||||||
this.registerSetting(mode = new SliderSetting("Mode", 2, modes));
|
this.registerSetting(mode = new SliderSetting("Mode", 2, modes));
|
||||||
this.registerSetting(disableAdventure = new ButtonSetting("Disable adventure", false));
|
this.registerSetting(disableAdventure = new ButtonSetting("Disable adventure", false));
|
||||||
this.registerSetting(minFallDistance = new SliderSetting("Minimum fall distance", 3, 0, 10, 0.1));
|
this.registerSetting(minFallDistance = new SliderSetting("Minimum fall distance", 3, 0, 10, 0.1));
|
||||||
this.registerSetting(ignoreVoid = new ButtonSetting("Ignore void", true));
|
this.registerSetting(ignoreVoid = new ButtonSetting("Ignore void", false));
|
||||||
|
this.registerSetting(voidC = new ButtonSetting("Experimental void check", true));
|
||||||
//this.registerSetting(hideSound = new ButtonSetting("Hide fall damage sound", false));
|
//this.registerSetting(hideSound = new ButtonSetting("Hide fall damage sound", false));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -138,10 +139,10 @@ public class NoFall extends Module {
|
||||||
Utils.resetTimer();
|
Utils.resetTimer();
|
||||||
if (mc.thePlayer.ticksExisted % 2 == 0) {
|
if (mc.thePlayer.ticksExisted % 2 == 0) {
|
||||||
if (mc.thePlayer.motionY < -0.01) {
|
if (mc.thePlayer.motionY < -0.01) {
|
||||||
timerVal = 0.65;
|
timerVal = 0.64;
|
||||||
}
|
}
|
||||||
if (mc.thePlayer.motionY < -1.0) {
|
if (mc.thePlayer.motionY < -1.0) {
|
||||||
timerVal = 0.54;
|
timerVal = 0.53;
|
||||||
}
|
}
|
||||||
if (mc.thePlayer.motionY < -1.6) {
|
if (mc.thePlayer.motionY < -1.6) {
|
||||||
timerVal = 0.46;
|
timerVal = 0.46;
|
||||||
|
|
@ -228,6 +229,407 @@ public class NoFall extends Module {
|
||||||
if (mc.thePlayer.capabilities.isFlying) {
|
if (mc.thePlayer.capabilities.isFlying) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
if (voidC.isToggled() && Utils.overVoid(mc.thePlayer.posX, mc.thePlayer.posY, mc.thePlayer.posZ) && !dist()) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public boolean dist() {
|
||||||
|
double minMotion = 0.06;
|
||||||
|
// 1x1
|
||||||
|
|
||||||
|
int dist1 = 0;
|
||||||
|
int dist2 = 1;
|
||||||
|
int dist3 = 2;
|
||||||
|
int dist4 = 4;
|
||||||
|
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ) > dist1) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 1, (int) mc.thePlayer.posZ) > dist1) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 1, (int) mc.thePlayer.posZ) > dist1) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ - 1) > dist1) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ + 1) > dist1) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 1, (int) mc.thePlayer.posZ - 1) > dist1) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion && mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 1, (int) mc.thePlayer.posZ + 1) > dist1) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion && mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 1, (int) mc.thePlayer.posZ + 1) > dist1) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 1, (int) mc.thePlayer.posZ - 1) > dist1) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2x2
|
||||||
|
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ) > dist2) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 2, (int) mc.thePlayer.posZ) > dist2) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ - 2) > dist2) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ + 2) > dist2) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 2, (int) mc.thePlayer.posZ - 1) > dist2) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 1, (int) mc.thePlayer.posZ - 2) > dist2) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ + 1) > dist2) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 1, (int) mc.thePlayer.posZ + 2) > dist2) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 2, (int) mc.thePlayer.posZ - 2) > dist2) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 2, (int) mc.thePlayer.posZ - 2) > dist2) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 2, (int) mc.thePlayer.posZ + 2) > dist2) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion && mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ - 2) > dist2) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion && mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3x3
|
||||||
|
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ + 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ - 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ - 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ + 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ + 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion && mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ - 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion && mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ + 1) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ + 2) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 1, (int) mc.thePlayer.posZ + 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 2, (int) mc.thePlayer.posZ + 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ - 1) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ - 2) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 1, (int) mc.thePlayer.posZ - 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ - 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ - 1) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ - 2) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 1, (int) mc.thePlayer.posZ - 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 2, (int) mc.thePlayer.posZ - 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ + 1) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ + 2) > dist3) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 1, (int) mc.thePlayer.posZ + 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ + 3) > dist3) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 4x4
|
||||||
|
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX, (int) mc.thePlayer.posZ - 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion && mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ - 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion && mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ - 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ + 3) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ + 2) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ + 1) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 3, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 2, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 1, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ - 3) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ - 2) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX + 4, (int) mc.thePlayer.posZ - 1) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 1, (int) mc.thePlayer.posZ + 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ >= minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ + 3) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ + 2) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ + 1) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ - 3) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ - 2) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 4, (int) mc.thePlayer.posZ - 1) > dist4) {
|
||||||
|
if (mc.thePlayer.motionX <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 3, (int) mc.thePlayer.posZ - 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 2, (int) mc.thePlayer.posZ - 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (Utils.distanceToGround(mc.thePlayer, (int) mc.thePlayer.posX - 1, (int) mc.thePlayer.posZ - 4) > dist4) {
|
||||||
|
if (mc.thePlayer.motionZ <= -minMotion) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -324,30 +324,30 @@ public class Scaffold extends Module {
|
||||||
|
|
||||||
if (quad <= 5 || quad >= 85) {
|
if (quad <= 5 || quad >= 85) {
|
||||||
yawAngle = 125.625F;
|
yawAngle = 125.625F;
|
||||||
minOffset = 10;
|
minOffset = 9;
|
||||||
}
|
}
|
||||||
if (quad > 5 && quad <= 15 || quad >= 75 && quad < 85) {
|
if (quad > 5 && quad <= 15 || quad >= 75 && quad < 85) {
|
||||||
yawAngle = 127.625F;
|
yawAngle = 127.625F;
|
||||||
minOffset = 10;
|
minOffset = 8;
|
||||||
}
|
}
|
||||||
if (quad > 15 && quad <= 25 || quad >= 65 && quad < 75) {
|
if (quad > 15 && quad <= 25 || quad >= 65 && quad < 75) {
|
||||||
yawAngle = 129.625F;
|
yawAngle = 129.625F;
|
||||||
minOffset = 8;
|
minOffset = 6;
|
||||||
}
|
}
|
||||||
if (quad > 25 && quad <= 32 || quad >= 58 && quad < 65) {
|
if (quad > 25 && quad <= 32 || quad >= 58 && quad < 65) {
|
||||||
yawAngle = 132.625F;
|
yawAngle = 132.625F;
|
||||||
minOffset = 8;
|
minOffset = 6;
|
||||||
}
|
}
|
||||||
if (quad > 32 && quad <= 38 || quad >= 52 && quad < 58) {
|
if (quad > 32 && quad <= 38 || quad >= 52 && quad < 58) {
|
||||||
yawAngle = 134.625F;
|
yawAngle = 134.625F;
|
||||||
minOffset = 7;
|
minOffset = 6;
|
||||||
}
|
}
|
||||||
if (quad > 38 && quad <= 42 || quad >= 48 && quad < 52) {
|
if (quad > 38 && quad <= 42 || quad >= 48 && quad < 52) {
|
||||||
yawAngle = 136.625F;
|
yawAngle = 136.625F;
|
||||||
minOffset = 6;
|
minOffset = 5;
|
||||||
}
|
}
|
||||||
if (quad > 42 && quad <= 45 || quad >= 45 && quad < 48) {
|
if (quad > 42 && quad <= 45 || quad >= 45 && quad < 48) {
|
||||||
yawAngle = 140.125F;
|
yawAngle = 140.175F;
|
||||||
minOffset = 5;
|
minOffset = 5;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -643,7 +643,7 @@ public class Scaffold extends Module {
|
||||||
public void onPreUpdate(PreUpdateEvent e) {
|
public void onPreUpdate(PreUpdateEvent e) {
|
||||||
stopUpdate = stopUpdate2 = false;
|
stopUpdate = stopUpdate2 = false;
|
||||||
if (!isEnabled) {
|
if (!isEnabled) {
|
||||||
return;
|
stopUpdate2 = true;
|
||||||
}
|
}
|
||||||
if (LongJump.function) {
|
if (LongJump.function) {
|
||||||
startYPos = -1;
|
startYPos = -1;
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,77 @@
|
||||||
|
package keystrokesmod.utility;
|
||||||
|
|
||||||
|
import keystrokesmod.event.ReceivePacketEvent;
|
||||||
|
import keystrokesmod.event.RunGameLoopEvent;
|
||||||
|
import net.minecraft.client.Minecraft;
|
||||||
|
import net.minecraft.network.Packet;
|
||||||
|
import net.minecraft.network.play.server.S12PacketEntityVelocity;
|
||||||
|
import net.minecraft.network.play.server.S27PacketExplosion;
|
||||||
|
import net.minecraftforge.event.entity.EntityJoinWorldEvent;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.EventPriority;
|
||||||
|
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||||
|
|
||||||
|
import java.util.ArrayDeque;
|
||||||
|
import java.util.Queue;
|
||||||
|
|
||||||
|
public class KnockBackHelper {
|
||||||
|
|
||||||
|
private final Minecraft mc = Minecraft.getMinecraft();
|
||||||
|
|
||||||
|
private final Queue<Packet> packets = new ArrayDeque<>();
|
||||||
|
|
||||||
|
private boolean cancel = false;
|
||||||
|
|
||||||
|
private boolean releasePackets = false;
|
||||||
|
|
||||||
|
@SubscribeEvent(priority = EventPriority.LOWEST)
|
||||||
|
public void onReceivePacket(ReceivePacketEvent e) {
|
||||||
|
if (e.getPacket() instanceof S12PacketEntityVelocity || e.getPacket() instanceof S27PacketExplosion) {
|
||||||
|
if (e.getPacket() instanceof S12PacketEntityVelocity &&
|
||||||
|
((S12PacketEntityVelocity) e.getPacket()).getEntityID() == mc.thePlayer.getEntityId() &&
|
||||||
|
cancel)
|
||||||
|
{
|
||||||
|
this.packets.add(e.getPacket());
|
||||||
|
e.setCanceled(true);
|
||||||
|
}
|
||||||
|
else if (e.getPacket() instanceof S27PacketExplosion && cancel) {
|
||||||
|
this.packets.add(e.getPacket());
|
||||||
|
e.setCanceled(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@SubscribeEvent
|
||||||
|
public void onGameLoop(RunGameLoopEvent e) {
|
||||||
|
if (!Utils.nullCheck() || !this.releasePackets) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
while (!this.packets.isEmpty()) {
|
||||||
|
Packet p = this.packets.poll();
|
||||||
|
if (p != null) p.processPacket(mc.getNetHandler());
|
||||||
|
}
|
||||||
|
this.releasePackets = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@SubscribeEvent
|
||||||
|
public void onWorldJoin(EntityJoinWorldEvent e) {
|
||||||
|
if (e.entity == mc.thePlayer) {
|
||||||
|
this.packets.clear(); // Clears the buffered packets when you join a new world.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Starts capturing packets, buffering them until {@link #releasePackets()} is called.
|
||||||
|
*/
|
||||||
|
public void capturePackets() {
|
||||||
|
this.cancel = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Releases the buffered packets and sends them to your client.
|
||||||
|
*/
|
||||||
|
public void releasePackets() {
|
||||||
|
this.cancel = false;
|
||||||
|
this.releasePackets = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -74,45 +74,32 @@ public class ModuleUtils {
|
||||||
public void onWorldJoin(EntityJoinWorldEvent e) {
|
public void onWorldJoin(EntityJoinWorldEvent e) {
|
||||||
if (e.entity == mc.thePlayer) {
|
if (e.entity == mc.thePlayer) {
|
||||||
ModuleManager.disabler.disablerLoaded = false;
|
ModuleManager.disabler.disablerLoaded = false;
|
||||||
|
inAirTicks = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void onSendPacketNoEvent(NoEventPacketEvent e) {
|
public void onSendPacketAll(SendAllPacketsEvent e) {
|
||||||
if (!Utils.nullCheck()) {
|
if (!Utils.nullCheck()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
Packet packet = e.getPacket();
|
||||||
if (e.getPacket() instanceof C09PacketHeldItemChange) {
|
if (packet instanceof C07PacketPlayerDigging && isBlocked) {
|
||||||
swapTick = 2;
|
C07PacketPlayerDigging c07 = (C07PacketPlayerDigging) packet;
|
||||||
}
|
if (Objects.equals(String.valueOf(c07.getStatus()), "RELEASE_USE_ITEM")) {
|
||||||
|
|
||||||
// isBlocked
|
|
||||||
if (e.getPacket() instanceof C07PacketPlayerDigging && isBlocked) {
|
|
||||||
C07PacketPlayerDigging c07 = (C07PacketPlayerDigging) e.getPacket();
|
|
||||||
String edger;
|
|
||||||
edger = String.valueOf(c07.getStatus());
|
|
||||||
if (Objects.equals(edger, "RELEASE_USE_ITEM")) {
|
|
||||||
isBlocked = false;
|
isBlocked = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (e.getPacket() instanceof C09PacketHeldItemChange && isBlocked) {
|
if (packet instanceof C09PacketHeldItemChange && isBlocked) {
|
||||||
isBlocked = false;
|
isBlocked = false;
|
||||||
}
|
}
|
||||||
if (e.getPacket() instanceof C08PacketPlayerBlockPlacement && Utils.holdingSword() && !BlockUtils.isInteractable(mc.objectMouseOver) && !isBlocked) {
|
if (packet instanceof C08PacketPlayerBlockPlacement && Utils.holdingSword() && !BlockUtils.isInteractable(mc.objectMouseOver) && !isBlocked) {
|
||||||
isBlocked = true;
|
isBlocked = true;
|
||||||
}
|
}
|
||||||
|
if (packet instanceof C02PacketUseEntity) {
|
||||||
//
|
isAttacking = true;
|
||||||
// isAttacking
|
attackingTicks = 5;
|
||||||
|
}
|
||||||
if (e.getPacket() instanceof C02PacketUseEntity) {
|
|
||||||
isAttacking = true;
|
|
||||||
attackingTicks = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
|
|
@ -121,32 +108,6 @@ public class ModuleUtils {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// isBlocked
|
|
||||||
if (e.getPacket() instanceof C07PacketPlayerDigging && isBlocked) {
|
|
||||||
C07PacketPlayerDigging c07 = (C07PacketPlayerDigging) e.getPacket();
|
|
||||||
String edger;
|
|
||||||
edger = String.valueOf(c07.getStatus());
|
|
||||||
if (Objects.equals(edger, "RELEASE_USE_ITEM")) {
|
|
||||||
isBlocked = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (e.getPacket() instanceof C09PacketHeldItemChange && isBlocked) {
|
|
||||||
isBlocked = false;
|
|
||||||
}
|
|
||||||
if (e.getPacket() instanceof C08PacketPlayerBlockPlacement && Utils.holdingSword() && !BlockUtils.isInteractable(mc.objectMouseOver) && !isBlocked) {
|
|
||||||
isBlocked = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// isAttacking
|
|
||||||
|
|
||||||
if (e.getPacket() instanceof C02PacketUseEntity) {
|
|
||||||
isAttacking = true;
|
|
||||||
attackingTicks = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
|
|
||||||
if (e.getPacket() instanceof C09PacketHeldItemChange) {
|
if (e.getPacket() instanceof C09PacketHeldItemChange) {
|
||||||
swapTick = 2;
|
swapTick = 2;
|
||||||
}
|
}
|
||||||
|
|
@ -173,7 +134,7 @@ public class ModuleUtils {
|
||||||
}
|
}
|
||||||
|
|
||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void onReceivePacket(ReceivePacketEvent e) {
|
public void onReceivePacketAll(ReceiveAllPacketsEvent e) {
|
||||||
if (!Utils.nullCheck()) {
|
if (!Utils.nullCheck()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,7 @@
|
||||||
package keystrokesmod.utility;
|
package keystrokesmod.utility;
|
||||||
|
|
||||||
|
|
||||||
import keystrokesmod.event.PostUpdateEvent;
|
import keystrokesmod.event.*;
|
||||||
import keystrokesmod.event.ReceivePacketEvent;
|
|
||||||
import keystrokesmod.event.SendPacketEvent;
|
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.entity.player.InventoryPlayer;
|
import net.minecraft.entity.player.InventoryPlayer;
|
||||||
import net.minecraft.network.Packet;
|
import net.minecraft.network.Packet;
|
||||||
|
|
@ -80,6 +78,57 @@ public class PacketsHandler {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void onSendPacketAll(SendAllPacketsEvent e) {
|
||||||
|
if (e.isCanceled()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (e.getPacket() instanceof C02PacketUseEntity) { // sending a C07 on the same tick as C02 can ban, this usually happens when you unblock and attack on the same tick
|
||||||
|
if (C07.get()) {
|
||||||
|
e.setCanceled(true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
C02.set(true);
|
||||||
|
}
|
||||||
|
else if (e.getPacket() instanceof C08PacketPlayerBlockPlacement) {
|
||||||
|
C08.set(true);
|
||||||
|
}
|
||||||
|
else if (e.getPacket() instanceof C07PacketPlayerDigging) {
|
||||||
|
C07.set(true);
|
||||||
|
}
|
||||||
|
else if (e.getPacket() instanceof C0APacketAnimation) {
|
||||||
|
if (C07.get()) {
|
||||||
|
e.setCanceled(true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
C0A.set(true);
|
||||||
|
}
|
||||||
|
else if (e.getPacket() instanceof C09PacketHeldItemChange) {
|
||||||
|
if (((C09PacketHeldItemChange) e.getPacket()).getSlotId() == playerSlot.get() && ((C09PacketHeldItemChange) e.getPacket()).getSlotId() == serverSlot.get()) {
|
||||||
|
e.setCanceled(true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
C09.set(true);
|
||||||
|
playerSlot.set(((C09PacketHeldItemChange) e.getPacket()).getSlotId());
|
||||||
|
serverSlot.set(((C09PacketHeldItemChange) e.getPacket()).getSlotId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@SubscribeEvent
|
||||||
|
public void onReceivePacketAll(ReceiveAllPacketsEvent e) {
|
||||||
|
if (e.getPacket() instanceof S09PacketHeldItemChange) {
|
||||||
|
S09PacketHeldItemChange packet = (S09PacketHeldItemChange) e.getPacket();
|
||||||
|
if (packet.getHeldItemHotbarIndex() >= 0 && packet.getHeldItemHotbarIndex() < InventoryPlayer.getHotbarSize()) {
|
||||||
|
serverSlot.set(packet.getHeldItemHotbarIndex());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (e.getPacket() instanceof S0CPacketSpawnPlayer && Minecraft.getMinecraft().thePlayer != null) {
|
||||||
|
if (((S0CPacketSpawnPlayer) e.getPacket()).getEntityID() != Minecraft.getMinecraft().thePlayer.getEntityId()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.playerSlot.set(-1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@SubscribeEvent(priority = EventPriority.HIGHEST)
|
@SubscribeEvent(priority = EventPriority.HIGHEST)
|
||||||
public void onPostUpdate(PostUpdateEvent e) {
|
public void onPostUpdate(PostUpdateEvent e) {
|
||||||
if (delay.get()) {
|
if (delay.get()) {
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,8 @@ import org.lwjgl.opengl.GL11;
|
||||||
|
|
||||||
public class ScaffoldBlockCount {
|
public class ScaffoldBlockCount {
|
||||||
private final Minecraft mc;
|
private final Minecraft mc;
|
||||||
private Timer fadeTimer;
|
public static Timer fadeTimer;
|
||||||
private Timer fadeInTimer;
|
public static Timer fadeInTimer;
|
||||||
private float previousAlpha;
|
private float previousAlpha;
|
||||||
|
|
||||||
public ScaffoldBlockCount(Minecraft mc) {
|
public ScaffoldBlockCount(Minecraft mc) {
|
||||||
|
|
@ -72,8 +72,8 @@ public class ScaffoldBlockCount {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onDisable() {
|
public void onDisable() {
|
||||||
|
ScaffoldBlockCount.fadeInTimer = null;
|
||||||
|
ScaffoldBlockCount.fadeTimer = null;
|
||||||
FMLCommonHandler.instance().bus().unregister(this);
|
FMLCommonHandler.instance().bus().unregister(this);
|
||||||
fadeInTimer = null;
|
|
||||||
fadeTimer = null;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -749,7 +749,7 @@ public class Utils {
|
||||||
}
|
}
|
||||||
final Scoreboard scoreboard = mc.theWorld.getScoreboard();
|
final Scoreboard scoreboard = mc.theWorld.getScoreboard();
|
||||||
if (scoreboard == null) {
|
if (scoreboard == null) {
|
||||||
return -1;
|
return -2;
|
||||||
}
|
}
|
||||||
final ScoreObjective objective = scoreboard.getObjectiveInDisplaySlot(1);
|
final ScoreObjective objective = scoreboard.getObjectiveInDisplaySlot(1);
|
||||||
if (objective == null) {
|
if (objective == null) {
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package keystrokesmod.utility.profile;
|
||||||
import keystrokesmod.Raven;
|
import keystrokesmod.Raven;
|
||||||
import keystrokesmod.module.Module;
|
import keystrokesmod.module.Module;
|
||||||
import keystrokesmod.module.setting.impl.ButtonSetting;
|
import keystrokesmod.module.setting.impl.ButtonSetting;
|
||||||
|
import keystrokesmod.utility.ScaffoldBlockCount;
|
||||||
import keystrokesmod.utility.Utils;
|
import keystrokesmod.utility.Utils;
|
||||||
|
|
||||||
import java.awt.*;
|
import java.awt.*;
|
||||||
|
|
|
||||||
|
|
@ -17,9 +17,12 @@ import keystrokesmod.module.setting.impl.ButtonSetting;
|
||||||
import keystrokesmod.module.setting.impl.KeySetting;
|
import keystrokesmod.module.setting.impl.KeySetting;
|
||||||
import keystrokesmod.module.setting.impl.SliderSetting;
|
import keystrokesmod.module.setting.impl.SliderSetting;
|
||||||
import keystrokesmod.script.Manager;
|
import keystrokesmod.script.Manager;
|
||||||
|
import keystrokesmod.utility.ModuleUtils;
|
||||||
|
import keystrokesmod.utility.ScaffoldBlockCount;
|
||||||
import keystrokesmod.utility.Utils;
|
import keystrokesmod.utility.Utils;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraftforge.common.MinecraftForge;
|
import net.minecraftforge.common.MinecraftForge;
|
||||||
|
import net.minecraftforge.fml.common.FMLCommonHandler;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileReader;
|
import java.io.FileReader;
|
||||||
|
|
@ -258,7 +261,10 @@ public class ProfileManager {
|
||||||
for (Setting setting : module.getSettings()) {
|
for (Setting setting : module.getSettings()) {
|
||||||
setting.loadProfile(moduleInformation);
|
setting.loadProfile(moduleInformation);
|
||||||
}
|
}
|
||||||
|
ScaffoldBlockCount.fadeInTimer = null;
|
||||||
|
ScaffoldBlockCount.fadeTimer = null;
|
||||||
|
FMLCommonHandler.instance().bus().unregister(this);
|
||||||
|
ModuleUtils.profileTicks = 0;
|
||||||
Raven.currentProfile = getProfile(name);
|
Raven.currentProfile = getProfile(name);
|
||||||
}
|
}
|
||||||
MinecraftForge.EVENT_BUS.post(new PostProfileLoadEvent(Raven.currentProfile.getName()));
|
MinecraftForge.EVENT_BUS.post(new PostProfileLoadEvent(Raven.currentProfile.getName()));
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,6 @@ public class ProfileModule extends Module {
|
||||||
|
|
||||||
if (Settings.sendMessage.isToggled()) {
|
if (Settings.sendMessage.isToggled()) {
|
||||||
Utils.sendMessage("&7Enabled profile: &b" + this.getName());
|
Utils.sendMessage("&7Enabled profile: &b" + this.getName());
|
||||||
ModuleUtils.profileTicks = 0;
|
|
||||||
}
|
}
|
||||||
saved = true;
|
saved = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,7 @@
|
||||||
"accessor.IAccessorGuiScreenBook",
|
"accessor.IAccessorGuiScreenBook",
|
||||||
"accessor.IAccessorGuiScreen",
|
"accessor.IAccessorGuiScreen",
|
||||||
"accessor.IAccessorS14PacketEntity",
|
"accessor.IAccessorS14PacketEntity",
|
||||||
"accessor.IAccessorEntityPlayer"
|
"accessor.IAccessorEntityPlayer",
|
||||||
|
"accessor.IAccessorNetworkManager"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue