GoogleChat/src/main/java/io/gitlab/jfronny/googlechat/mixin/ClientPlayNetworkHandlerMix...

20 lines
1.1 KiB
Java

package io.gitlab.jfronny.googlechat.mixin;
import io.gitlab.jfronny.googlechat.*;
import net.minecraft.client.gui.hud.*;
import net.minecraft.client.network.*;
import net.minecraft.network.message.*;
import net.minecraft.text.*;
import org.spongepowered.asm.mixin.*;
import org.spongepowered.asm.mixin.injection.*;
@Mixin(ClientPlayNetworkHandler.class)
public class ClientPlayNetworkHandlerMixin {
@Redirect(method = "handleMessage(Lnet/minecraft/network/message/MessageType;Lnet/minecraft/network/message/SignedMessage;Lnet/minecraft/network/message/MessageSender;)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/hud/InGameHud;onChatMessage(Lnet/minecraft/network/message/MessageType;Lnet/minecraft/text/Text;Lnet/minecraft/network/message/MessageSender;)V"))
private void googlechat$interceptChatMessage(InGameHud hud, MessageType type, Text message, MessageSender sender) {
if (!GoogleChat.isSelf(sender.uuid()))
message = GoogleChat.translateIfNeeded(message, GoogleChat.Direction.S2C, true);
hud.onChatMessage(type, message, sender);
}
}