Skip to content

Commit 146957d

Browse files
committed
Workaround #47
1 parent ad8946e commit 146957d

File tree

3 files changed

+12
-5
lines changed

3 files changed

+12
-5
lines changed

common/src/main/java/com/lambda/mixin/ClientConnectionMixin.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,17 @@ public class ClientConnectionMixin {
2727

2828
@Inject(method = "send(Lnet/minecraft/network/packet/Packet;)V", at = @At("HEAD"), cancellable = true)
2929
private void sendingPacket(Packet<?> packet, final CallbackInfo callbackInfo) {
30+
if (side != NetworkSide.SERVERBOUND) return;
31+
3032
if (EventFlow.post(new PacketEvent.Send.Pre((Packet<ServerPacketListener>) packet)).isCanceled()) {
3133
callbackInfo.cancel();
3234
}
3335
}
3436

3537
@Inject(method = "send(Lnet/minecraft/network/packet/Packet;)V", at = @At("RETURN"))
3638
private void sendingPacketPost(Packet<?> packet, final CallbackInfo callbackInfo) {
39+
if (side != NetworkSide.SERVERBOUND) return;
40+
3741
EventFlow.post(new PacketEvent.Send.Post((Packet<ServerPacketListener>) packet));
3842
}
3943

@@ -44,6 +48,7 @@ private void receivingPacket(
4448
CallbackInfo callbackInfo
4549
) {
4650
if (side != NetworkSide.CLIENTBOUND) return;
51+
4752
if (EventFlow.post(new PacketEvent.Receive.Pre((Packet<ClientPacketListener>) packet)).isCanceled()) {
4853
callbackInfo.cancel();
4954
}

common/src/main/kotlin/com/lambda/module/modules/movement/Blink.kt

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,10 @@ import com.lambda.module.Module
1010
import com.lambda.module.modules.client.GuiSettings
1111
import com.lambda.module.modules.combat.KillAura
1212
import com.lambda.module.tag.ModuleTag
13+
import com.lambda.util.ClientPacket
1314
import com.lambda.util.PacketUtils.handlePacketSilently
1415
import com.lambda.util.PacketUtils.sendPacketSilently
1516
import com.lambda.util.math.ColorUtils.setAlpha
16-
import net.minecraft.network.listener.ServerPacketListener
17-
import net.minecraft.network.packet.Packet
1817
import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket
1918
import net.minecraft.network.packet.s2c.play.EntityVelocityUpdateS2CPacket
2019
import net.minecraft.util.math.BlockPos
@@ -32,7 +31,7 @@ object Blink : Module(
3231

3332
private val isActive get() = (KillAura.isEnabled && KillAura.target != null) || !requiresAura
3433

35-
private var packetPool = ConcurrentLinkedDeque<Packet<out ServerPacketListener>>()
34+
private var packetPool = ConcurrentLinkedDeque<ClientPacket>()
3635
private var lastVelocity: EntityVelocityUpdateS2CPacket? = null
3736
private var lastUpdate = 0L
3837

@@ -56,7 +55,6 @@ object Blink : Module(
5655

5756
listener<PacketEvent.Send.Pre> { event ->
5857
if (!isActive) return@listener
59-
if (!connection.connection.isOpen) return@listener
6058

6159
packetPool.add(event.packet)
6260
event.cancel()

common/src/main/kotlin/com/lambda/util/PacketUtils.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ object PacketUtils {
1616
*/
1717
fun ClientPlayNetworkHandler.sendPacketSilently(packet: ClientPacket) {
1818
if (!connection.isOpen) return
19+
if (connection.packetListener?.accepts(packet) == true)
20+
return // LOG.debug("Client tried to send client-bound packet {} to server ", packet)
21+
1922
connection.send(packet, null, true)
2023
connection.packetsSentCounter++
2124
}
@@ -29,7 +32,8 @@ object PacketUtils {
2932
*/
3033
fun ClientPlayNetworkHandler.handlePacketSilently(packet: ServerPacket) {
3134
if (!connection.isOpen) return
32-
if (connection.packetListener?.accepts(packet) == false) return
35+
if (connection.packetListener?.accepts(packet) == false)
36+
return // LOG.debug("Client tried to handle server-bound packet {}", packet)
3337

3438
ClientConnection.handlePacket(packet, connection.packetListener)
3539
connection.packetsReceivedCounter++

0 commit comments

Comments
 (0)