Skip to content

Commit 0c68f7c

Browse files
committed
Reuse chat packet
1 parent 27e66a4 commit 0c68f7c

File tree

1 file changed

+9
-11
lines changed

1 file changed

+9
-11
lines changed

src/main/java/net/raphimc/viaproxy/proxy/packethandler/ChatSignaturePacketHandler.java

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import com.viaversion.viaversion.api.minecraft.signature.storage.ChatSession1_19_3;
2424
import com.viaversion.viaversion.api.type.Types;
2525
import io.netty.buffer.ByteBuf;
26+
import io.netty.buffer.ByteBufUtil;
2627
import io.netty.buffer.Unpooled;
2728
import io.netty.channel.ChannelFutureListener;
2829
import net.raphimc.netminecraft.constants.ConnectionState;
@@ -68,17 +69,14 @@ public boolean handleC2P(Packet packet, List<ChannelFutureListener> listeners) t
6869
final MessageMetadata metadata = new MessageMetadata(null, timestamp, salt);
6970
final byte[] signature = chatSession.signChatMessage(metadata, message, new PlayerMessageSignature[0]);
7071

71-
final ByteBuf newChatMessage = Unpooled.buffer();
72-
PacketTypes.writeVarInt(newChatMessage, this.chatMessageId);
73-
PacketTypes.writeString(newChatMessage, message); // message
74-
newChatMessage.writeLong(timestamp); // timestamp
75-
newChatMessage.writeLong(salt); // salt
76-
Types.OPTIONAL_SIGNATURE_BYTES.write(newChatMessage, signature); // signature
77-
PacketTypes.writeVarInt(newChatMessage, 0); // offset
78-
Types.ACKNOWLEDGED_BIT_SET.write(newChatMessage, new BitSet(20)); // acknowledged
79-
this.proxyConnection.getChannel().writeAndFlush(newChatMessage).addListener(ChannelFutureListener.FIRE_EXCEPTION_ON_FAILURE);
80-
81-
return false;
72+
final ByteBuf newChatMessageData = Unpooled.buffer();
73+
PacketTypes.writeString(newChatMessageData, message); // message
74+
newChatMessageData.writeLong(timestamp); // timestamp
75+
newChatMessageData.writeLong(salt); // salt
76+
Types.OPTIONAL_SIGNATURE_BYTES.write(newChatMessageData, signature); // signature
77+
PacketTypes.writeVarInt(newChatMessageData, 0); // offset
78+
Types.ACKNOWLEDGED_BIT_SET.write(newChatMessageData, new BitSet(20)); // acknowledged
79+
unknownPacket.data = ByteBufUtil.getBytes(newChatMessageData);
8280
}
8381
}
8482

0 commit comments

Comments
 (0)