|
1 | 1 | package com.lambda.mixin; |
2 | 2 |
|
3 | 3 | import com.lambda.event.EventFlow; |
| 4 | +import com.lambda.event.events.ConnectionEvent; |
4 | 5 | import com.lambda.event.events.PacketEvent; |
5 | 6 | import io.netty.channel.ChannelHandlerContext; |
6 | 7 | import net.minecraft.network.ClientConnection; |
7 | 8 | import net.minecraft.network.NetworkSide; |
| 9 | +import net.minecraft.network.listener.PacketListener; |
8 | 10 | import net.minecraft.network.packet.Packet; |
| 11 | +import net.minecraft.network.packet.c2s.handshake.ConnectionIntent; |
| 12 | +import net.minecraft.text.Text; |
9 | 13 | import org.spongepowered.asm.mixin.Final; |
10 | 14 | import org.spongepowered.asm.mixin.Mixin; |
11 | 15 | import org.spongepowered.asm.mixin.Shadow; |
@@ -53,4 +57,20 @@ private void receivingPacketPost( |
53 | 57 |
|
54 | 58 | EventFlow.post(new PacketEvent.Receive.Post(packet)); |
55 | 59 | } |
| 60 | + |
| 61 | + @Inject(method = "connect(Ljava/lang/String;ILnet/minecraft/network/listener/PacketListener;Lnet/minecraft/network/packet/c2s/handshake/ConnectionIntent;)V", at = @At("HEAD")) |
| 62 | + private void onConnect( |
| 63 | + String address, |
| 64 | + int port, |
| 65 | + PacketListener listener, |
| 66 | + ConnectionIntent intent, |
| 67 | + CallbackInfo ci |
| 68 | + ) { |
| 69 | + EventFlow.post(new ConnectionEvent.Connect(address, port, listener, intent)); |
| 70 | + } |
| 71 | + |
| 72 | + @Inject(method = "disconnect(Lnet/minecraft/text/Text;)V", at = @At("HEAD")) |
| 73 | + private void onDisconnect(Text reason, CallbackInfo ci) { |
| 74 | + EventFlow.post(new ConnectionEvent.Disconnect(reason)); |
| 75 | + } |
56 | 76 | } |
0 commit comments