Skip to content

Commit

Permalink
Merge pull request #56 from Logging4J/master
Browse files Browse the repository at this point in the history
Horizontal and Vertical Settings for AntiKnockback
  • Loading branch information
coltonk9043 authored Sep 21, 2024
2 parents 8e34d4d + e75cc6b commit 2ae2e14
Showing 1 changed file with 19 additions and 12 deletions.
31 changes: 19 additions & 12 deletions src/main/java/net/aoba/module/modules/combat/AntiKnockback.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
import net.aoba.mixin.interfaces.IExplosionS2CPacket;
import net.aoba.module.Category;
import net.aoba.module.Module;
import net.aoba.settings.types.FloatSetting;
import net.aoba.settings.types.KeybindSetting;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.util.InputUtil;
Expand All @@ -38,12 +39,21 @@

public class AntiKnockback extends Module implements ReceivePacketListener {

private FloatSetting horizontal;
private FloatSetting vertical;

public AntiKnockback() {
super(KeybindSetting.builder().id("key.antiknockback").displayName("AntiKnockback Key").defaultValue(InputUtil.fromKeyCode(GLFW.GLFW_KEY_UNKNOWN, 0)).build());

this.setName("AntiKnockback");
this.setCategory(Category.of("Combat"));
this.setDescription("Prevents knockback.");

horizontal = new FloatSetting("killaura_horizontal", "Horizontal", "Horizontal Velocity", 0f, 0f, 1f, 0.01f);
vertical = new FloatSetting("killaura_vertical", "Vertical", "Vertical Velocity", 0f, 0f, 1f, 0.01f);

this.addSetting(horizontal);
this.addSetting(vertical);
}

@Override
Expand All @@ -67,20 +77,17 @@ public void OnReceivePacket(ReceivePacketEvent readPacketEvent) {
MinecraftClient mc = MinecraftClient.getInstance();
Packet<?> packet = readPacketEvent.GetPacket();

if (packet instanceof EntityVelocityUpdateS2CPacket) {
IEntityVelocityUpdateS2CPacket velocityUpdatePacket = (IEntityVelocityUpdateS2CPacket) packet;
if (velocityUpdatePacket.getId() == mc.player.getId()) {
velocityUpdatePacket.setVelocityX(0);
velocityUpdatePacket.setVelocityY(0);
velocityUpdatePacket.setVelocityZ(0);
if (packet instanceof EntityVelocityUpdateS2CPacket velocityUpdatePacket) {
if (velocityUpdatePacket.getEntityId() == mc.player.getId()) {
((IEntityVelocityUpdateS2CPacket) packet).setVelocityX((int) (velocityUpdatePacket.getVelocityX() * 8000d * horizontal.getValue()));
((IEntityVelocityUpdateS2CPacket) packet).setVelocityY((int) (velocityUpdatePacket.getVelocityY() * 8000d * vertical.getValue()));
((IEntityVelocityUpdateS2CPacket) packet).setVelocityZ((int) (velocityUpdatePacket.getVelocityZ() * 8000d * horizontal.getValue()));
}
}

if (packet instanceof ExplosionS2CPacket) {
IExplosionS2CPacket explosionPacket = (IExplosionS2CPacket) packet;
explosionPacket.setVelocityX(0);
explosionPacket.setVelocityY(0);
explosionPacket.setVelocityZ(0);
if (packet instanceof ExplosionS2CPacket explosionS2CPacket) {
((IExplosionS2CPacket) packet).setVelocityX(explosionS2CPacket.getPlayerVelocityX() * horizontal.getValue());
((IExplosionS2CPacket) packet).setVelocityY(explosionS2CPacket.getPlayerVelocityY() * vertical.getValue());
((IExplosionS2CPacket) packet).setVelocityZ(explosionS2CPacket.getPlayerVelocityZ() * horizontal.getValue());
}
}
}

0 comments on commit 2ae2e14

Please sign in to comment.