Skip to content

Commit 81be689

Browse files
committed
cancelable connection event
1 parent 86016c8 commit 81be689

File tree

2 files changed

+5
-3
lines changed

2 files changed

+5
-3
lines changed

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,15 +65,15 @@ private void receivingPacketPost(
6565
EventFlow.post(new PacketEvent.Receive.Post((Packet<ClientPacketListener>) packet));
6666
}
6767

68-
@Inject(method = "connect(Ljava/lang/String;ILnet/minecraft/network/listener/PacketListener;Lnet/minecraft/network/packet/c2s/handshake/ConnectionIntent;)V", at = @At("HEAD"))
68+
@Inject(method = "connect(Ljava/lang/String;ILnet/minecraft/network/listener/PacketListener;Lnet/minecraft/network/packet/c2s/handshake/ConnectionIntent;)V", at = @At("HEAD"), cancellable = true)
6969
private void onConnect(
7070
String address,
7171
int port,
7272
PacketListener listener,
7373
ConnectionIntent intent,
7474
CallbackInfo ci
7575
) {
76-
EventFlow.post(new ConnectionEvent.Connect.Pre(address, port, listener, intent));
76+
if (EventFlow.post(new ConnectionEvent.Connect.Pre(address, port, listener, intent)).isCanceled()) ci.cancel();
7777
}
7878

7979
@Inject(method = "disconnect(Lnet/minecraft/text/Text;)V", at = @At("HEAD"))

common/src/main/kotlin/com/lambda/event/events/ConnectionEvent.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.lambda.event.events
22

33
import com.lambda.event.Event
4+
import com.lambda.event.callback.Cancellable
5+
import com.lambda.event.callback.ICancellable
46
import com.mojang.authlib.GameProfile
57
import net.minecraft.network.listener.PacketListener
68
import net.minecraft.network.packet.c2s.handshake.ConnectionIntent
@@ -29,7 +31,7 @@ sealed class ConnectionEvent : Event {
2931
val port: Int,
3032
val listener: PacketListener,
3133
val intent: ConnectionIntent,
32-
) : ConnectionEvent()
34+
) : ConnectionEvent(), ICancellable by Cancellable()
3335

3436
/**
3537
* Event representing a handshake during connection.

0 commit comments

Comments
 (0)