23 lines
940 B
Java
23 lines
940 B
Java
package codes.som.hibiscus.mixins;
|
|
|
|
import codes.som.hibiscus.Hibiscus;
|
|
import codes.som.hibiscus.events.SendPacketEvent;
|
|
import net.minecraft.client.network.ClientPlayNetworkHandler;
|
|
import net.minecraft.network.ClientConnection;
|
|
import net.minecraft.network.Packet;
|
|
import org.spongepowered.asm.mixin.Mixin;
|
|
import org.spongepowered.asm.mixin.injection.At;
|
|
import org.spongepowered.asm.mixin.injection.Redirect;
|
|
|
|
@Mixin(ClientPlayNetworkHandler.class)
|
|
public abstract class MixinClientPlayNetworkHandler {
|
|
@Redirect(method = "sendPacket", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/ClientConnection;send(Lnet/minecraft/network/Packet;)V"))
|
|
public void onSendPacket(ClientConnection clientConnection, Packet<?> packet) {
|
|
var event = new SendPacketEvent(packet);
|
|
Hibiscus.bus().fire(event);
|
|
if (!event.isCancelled()) {
|
|
clientConnection.send(event.getPacket());
|
|
}
|
|
}
|
|
}
|