public void Send(params IPacket[] packets) { if (!IsConnected()) { return; } var bytes = packets.Sum(p => Packet.GetSize(p.Type)) + Packet.HeaderSize + Packet.PacketTypeSize * packets.Length; ReserveBufferStorage(ref sendBuffer, bytes); PacketSerializer.Serialize(packets, ref sendBuffer); var socket = connection.Client; if (socket == null || !socket.Connected) { return; } socket.Send(sendBuffer, 0, bytes, SocketFlags.None); }
public void Send(IPacket packet) { if (!IsConnected()) { return; } var bytes = Packet.GetSize(packet.Type) + Packet.HeaderSize + Packet.PacketTypeSize; ReserveBufferStorage(ref sendBuffer, bytes); PacketSerializer.Serialize(packet, ref sendBuffer); var socket = connection.Client; if (socket == null || !socket.Connected) { return; } socket.Send(sendBuffer, 0, bytes, SocketFlags.None); }