def encode_packet(packet_id, data): """ Encodes a packet payload :param packet_id: Packet ID :type packet_id: int :param data: Data :type data: bytes :return: The encoded payload :rtype: bytes """ payload = DataTypes.write_varint(packet_id) + data return DataTypes.write_varint(len(payload)) + payload
def encode_handshake(protocol_version, server_address, server_port, next_state): return encode_packet(0x00, DataTypes.write_varint(protocol_version) + DataTypes.write_string(server_address) + DataTypes.write_short(server_port) + DataTypes.write_varint(next_state) )