Pushing out packets that werent pushable before

This commit is contained in:
Dawson
2022-08-24 08:29:12 -04:00
parent b8d5e13686
commit 6b8ecc5424
11 changed files with 445 additions and 0 deletions
@@ -0,0 +1,32 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.Anticheat;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import dev.brighten.ac.packet.wrapper.objects.PlayerCapabilities;
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class WPacketPlayOutAbilities implements WPacket {
private PlayerCapabilities capabilities;
@Override
public PacketType getPacketType() {
return PacketType.SERVER_ABILITIES;
}
@Override
public Object getPacket() {
return Anticheat.INSTANCE.getPacketProcessor().getPacketConverter().processOutAbilities(this);
}
@Override
public String toString() {
return "WPacketPlayOutAbilities{" +
"capabilities=" + capabilities +
'}';
}
}
@@ -0,0 +1,33 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class WPacketPlayOutAttachEntity implements WPacket {
private int attachedEntityId, holdingEntityId;
private boolean isLeashModifer = true;
@Override
public PacketType getPacketType() {
return PacketType.ATTACH;
}
@Override
public Object getPacket() {
return null;
}
@Override
public String toString() {
return "WPacketPlayOutAttachEntity{" +
"attachedEntityId=" + attachedEntityId +
", holdingEntityId=" + holdingEntityId +
", isLeashModifer=" + isLeashModifer +
'}';
}
}
@@ -0,0 +1,35 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import dev.brighten.ac.utils.math.IntVector;
import lombok.Builder;
import lombok.Getter;
import org.bukkit.Material;
@Builder
@Getter
public class WPacketPlayOutBlockChange implements WPacket {
private IntVector blockLocation;
private Material material;
@Override
public PacketType getPacketType() {
return PacketType.BLOCK_CHANGE;
}
@Override
public Object getPacket() {
return null;
}
@Override
public String toString() {
return "WPacketPlayOutBlockChange{" +
"blockLocation=" + blockLocation +
", material=" + material +
'}';
}
}
@@ -0,0 +1,41 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class WPacketPlayOutEntity implements WPacket {
private int id;
private boolean looked, moved, onGround;
private double x, y, z;
private float yaw, pitch;
@Override
public PacketType getPacketType() {
return PacketType.ENTITY;
}
@Override
public Object getPacket() {
return null;
}
@Override
public String toString() {
return "WPacketPlayOutEntity{" +
"id=" + id +
", looked=" + looked +
", moved=" + moved +
", onGround=" + onGround +
", x=" + x +
", y=" + y +
", z=" + z +
", yaw=" + yaw +
", pitch=" + pitch +
'}';
}
}
@@ -0,0 +1,35 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class WPacketPlayOutEntityEffect implements WPacket {
private int entityId, effectId, duration;
private byte amplifier, flags;
@Override
public PacketType getPacketType() {
return PacketType.ENTITY_EFFECT;
}
@Override
public Object getPacket() {
return null;
}
@Override
public String toString() {
return "WPacketPlayOutEntityEffect{" +
"entityId=" + entityId +
", effectId=" + effectId +
", duration=" + duration +
", amplifier=" + amplifier +
", flags=" + flags +
'}';
}
}
@@ -0,0 +1,39 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import lombok.Builder;
import lombok.Getter;
@Builder
@Getter
public class WPacketPlayOutEntityTeleport implements WPacket {
private int entityId;
private double x, y, z;
private float yaw, pitch;
private boolean onGround;
@Override
public PacketType getPacketType() {
return PacketType.ENTITY_TELEPORT;
}
@Override
public Object getPacket() {
return null;
}
@Override
public String toString() {
return "WPacketPlayOutEntityTeleport{" +
"entityId=" + entityId +
", x=" + x +
", y=" + y +
", z=" + z +
", yaw=" + yaw +
", pitch=" + pitch +
", onGround=" + onGround +
'}';
}
}
@@ -0,0 +1,34 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.Anticheat;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import lombok.Builder;
import lombok.Getter;
@Getter
@Builder
public class WPacketPlayOutEntityVelocity implements WPacket {
private int entityId;
private double deltaX, deltaY, deltaZ;
@Override
public PacketType getPacketType() {
return PacketType.VELOCITY;
}
@Override
public Object getPacket() {
return Anticheat.INSTANCE.getPacketProcessor().getPacketConverter().processVelocity(this);
}
@Override
public String toString() {
return "WPacketPlayOutEntityVelocity{" +
"entityId=" + entityId +
", deltaX=" + deltaX +
", deltaY=" + deltaY +
", deltaZ=" + deltaZ +
'}';
}
}
@@ -0,0 +1,51 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import dev.brighten.ac.utils.math.IntVector;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Getter;
import org.bukkit.Material;
import java.util.Arrays;
@Builder
@Getter
public class WPacketPlayOutMultiBlockChange implements WPacket {
private int[] chunk;
private BlockChange[] changes;
@Override
public PacketType getPacketType() {
return PacketType.MULTI_BLOCK_CHANGE;
}
@Override
public Object getPacket() {
return null;
}
@AllArgsConstructor
@Getter
public static class BlockChange {
private IntVector location;
private Material material;
@Override
public String toString() {
return "BlockChange{" +
"location=" + location +
", material=" + material +
'}';
}
}
@Override
public String toString() {
return "WPacketPlayOutMultiBlockChange{" +
"chunk=" + Arrays.toString(chunk) +
", changes=" + Arrays.toString(changes) +
'}';
}
}
@@ -0,0 +1,4 @@
package dev.brighten.ac.packet.wrapper.out;
public class WPacketPlayOutPlayerInfo {
}
@@ -0,0 +1,94 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import lombok.Builder;
import lombok.Getter;
import java.util.EnumSet;
import java.util.Iterator;
import java.util.Set;
@Builder
@Getter
public class WPacketPlayOutPosition implements WPacket {
private double x, y, z;
private float yaw, pitch;
private int teleportAwait;
private Set<EnumPlayerTeleportFlags> flags;
@Override
public PacketType getPacketType() {
return PacketType.SERVER_POSITION;
}
@Override
public Object getPacket() {
return null;
}
public enum EnumPlayerTeleportFlags {
X(0),
Y(1),
Z(2),
Y_ROT(3),
X_ROT(4);
private int f;
private EnumPlayerTeleportFlags(int var3) {
this.f = var3;
}
private int a() {
return 1 << this.f;
}
private boolean b(int var1) {
return (var1 & this.a()) == this.a();
}
public static Set<EnumPlayerTeleportFlags> a(int var0) {
EnumSet var1 = EnumSet.noneOf(EnumPlayerTeleportFlags.class);
EnumPlayerTeleportFlags[] var2 = values();
int var3 = var2.length;
for(int var4 = 0; var4 < var3; ++var4) {
EnumPlayerTeleportFlags var5 = var2[var4];
if (var5.b(var0)) {
var1.add(var5);
}
}
return var1;
}
public static int a(Set<EnumPlayerTeleportFlags> var0) {
int var1 = 0;
EnumPlayerTeleportFlags var3;
for(Iterator var2 = var0.iterator(); var2.hasNext(); var1 |= var3.a()) {
var3 = (EnumPlayerTeleportFlags)var2.next();
}
return var1;
}
}
@Override
public String toString() {
return "WPacketPlayOutPosition{" +
"x=" + x +
", y=" + y +
", z=" + z +
", yaw=" + yaw +
", pitch=" + pitch +
", teleportAwait=" + teleportAwait +
", flags=" + flags +
'}';
}
}
@@ -0,0 +1,47 @@
package dev.brighten.ac.packet.wrapper.out;
import dev.brighten.ac.Anticheat;
import dev.brighten.ac.packet.wrapper.PacketType;
import dev.brighten.ac.packet.wrapper.WPacket;
import dev.brighten.ac.packet.wrapper.objects.EnumParticle;
import lombok.Builder;
import lombok.Getter;
import java.util.Arrays;
@Getter
@Builder
public class WPacketPlayOutWorldParticles implements WPacket {
private EnumParticle particle;
private float x, y, z, offsetX, offsetY, offsetZ, speed;
private int amount;
private int[] data;
private boolean longD;
@Override
public PacketType getPacketType() {
return PacketType.WORLD_PARTICLE;
}
@Override
public Object getPacket() {
return Anticheat.INSTANCE.getPacketProcessor().getPacketConverter().processParticles(this);
}
@Override
public String toString() {
return "WPacketPlayOutWorldParticles{" +
"particle=" + particle +
", x=" + x +
", y=" + y +
", z=" + z +
", offsetX=" + offsetX +
", offsetY=" + offsetY +
", offsetZ=" + offsetZ +
", speed=" + speed +
", amount=" + amount +
", data=" + Arrays.toString(data) +
", longD=" + longD +
'}';
}
}