diff options
author | Brady <thatgravyboat@gmail.com> | 2024-06-08 06:48:29 -0230 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-08 11:18:29 +0200 |
commit | f9cafb766115d5342f7d7e1f8b9e3a56504f0273 (patch) | |
tree | cd325dbd48a4f8cde6f7e3c74e49cf0ebef99cad /src/main/java/at/hannibal2/skyhanni/mixins | |
parent | f677ce0fa1cab31feccab6eff2e5c35e2524d8a3 (diff) | |
download | skyhanni-f9cafb766115d5342f7d7e1f8b9e3a56504f0273.tar.gz skyhanni-f9cafb766115d5342f7d7e1f8b9e3a56504f0273.tar.bz2 skyhanni-f9cafb766115d5342f7d7e1f8b9e3a56504f0273.zip |
Backend: Packet Events (#2025)
Co-authored-by: Cal <cwolfson58@gmail.com>
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/mixins')
4 files changed, 8 insertions, 23 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/mixins/hooks/NetHandlerPlayClientHook.kt b/src/main/java/at/hannibal2/skyhanni/mixins/hooks/NetHandlerPlayClientHook.kt deleted file mode 100644 index b18d80613..000000000 --- a/src/main/java/at/hannibal2/skyhanni/mixins/hooks/NetHandlerPlayClientHook.kt +++ /dev/null @@ -1,9 +0,0 @@ -package at.hannibal2.skyhanni.mixins.hooks - -import at.hannibal2.skyhanni.events.PacketEvent -import net.minecraft.network.Packet -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo - -fun onSendPacket(packet: Packet<*>, ci: CallbackInfo) { - if (PacketEvent.SendEvent(packet).postAndCatch()) ci.cancel() -}
\ No newline at end of file diff --git a/src/main/java/at/hannibal2/skyhanni/mixins/hooks/NetworkManagerHook.kt b/src/main/java/at/hannibal2/skyhanni/mixins/hooks/NetworkManagerHook.kt deleted file mode 100644 index 71f6aaba9..000000000 --- a/src/main/java/at/hannibal2/skyhanni/mixins/hooks/NetworkManagerHook.kt +++ /dev/null @@ -1,9 +0,0 @@ -package at.hannibal2.skyhanni.mixins.hooks - -import at.hannibal2.skyhanni.events.PacketEvent -import net.minecraft.network.Packet -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo - -fun onReceivePacket(packet: Packet<*>, ci: CallbackInfo) { - if (PacketEvent.ReceiveEvent(packet).postAndCatch()) ci.cancel() -} diff --git a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java index 879e41061..b8bb676db 100644 --- a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java +++ b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetHandlerPlayClient.java @@ -1,7 +1,7 @@ package at.hannibal2.skyhanni.mixins.transformers; import at.hannibal2.skyhanni.events.EntityEquipmentChangeEvent; -import at.hannibal2.skyhanni.mixins.hooks.NetHandlerPlayClientHookKt; +import at.hannibal2.skyhanni.events.minecraft.packet.PacketSentEvent; import net.minecraft.client.network.NetHandlerPlayClient; import net.minecraft.entity.Entity; import net.minecraft.network.Packet; @@ -18,7 +18,10 @@ public abstract class MixinNetHandlerPlayClient implements INetHandlerPlayClient @Inject(method = "addToSendQueue", at = @At("HEAD"), cancellable = true) private void onSendPacket(Packet<?> packet, CallbackInfo ci) { - NetHandlerPlayClientHookKt.onSendPacket(packet, ci); + NetHandlerPlayClient handler = (NetHandlerPlayClient) (Object) this; + if (new PacketSentEvent(handler, packet).post()) { + ci.cancel(); + } } @Inject(method = "handleEntityEquipment", at = @At(value = "INVOKE", target = "Lnet/minecraft/entity/Entity;setCurrentItemOrArmor(ILnet/minecraft/item/ItemStack;)V", shift = At.Shift.AFTER), locals = LocalCapture.CAPTURE_FAILHARD) diff --git a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetworkManager.java b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetworkManager.java index 11d7ed309..a00348021 100644 --- a/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetworkManager.java +++ b/src/main/java/at/hannibal2/skyhanni/mixins/transformers/MixinNetworkManager.java @@ -1,6 +1,6 @@ package at.hannibal2.skyhanni.mixins.transformers; -import at.hannibal2.skyhanni.mixins.hooks.NetworkManagerHookKt; +import at.hannibal2.skyhanni.events.minecraft.packet.PacketReceivedEvent; import io.netty.channel.ChannelHandlerContext; import io.netty.channel.SimpleChannelInboundHandler; import net.minecraft.network.NetworkManager; @@ -15,8 +15,8 @@ public abstract class MixinNetworkManager extends SimpleChannelInboundHandler<Pa @Inject(method = "channelRead0*", at = @At("HEAD"), cancellable = true) private void onReceivePacket(ChannelHandlerContext context, Packet<?> packet, CallbackInfo ci) { - if (packet != null) { - NetworkManagerHookKt.onReceivePacket(packet, ci); + if (packet != null && new PacketReceivedEvent(packet).post()) { + ci.cancel(); } } } |