def write(self, stream, packet): assert packet.__class__.PACKET_DIRECTION == PacketDirection.SERVERBOUND \ if self._mode == PacketSerializer.Mode.CLIENT else \ packet.__class__.PACKET_DIRECTION == PacketDirection.CLIENTBOUND, \ "packet has invalid direction for this serializer" buf = StringIO() StreamIO.write_varint(buf, packet.__class__.PACKET_ID) packet.__class__.write(buf, packet) data = buf.getvalue() buf.close() if self.is_compression_enabled(): buf = StringIO() if len(data) >= self.get_threshold(): StreamIO.write_varint(buf, len(data)) data = zlib.compress(data) else: StreamIO.write_varint(buf, 0) StreamIO.write(buf, data) data = buf.getvalue() buf.close() buf = StringIO() StreamIO.write_string(buf, data) data = buf.getvalue() buf.close() StreamIO.write(stream, data)
def write(stream, packet): StreamIO.write_string(stream, packet.get_locale()) StreamIO.write_byte(stream, packet.get_view_distance()) StreamIO.write_varint(stream, packet.get_chat_mode()) StreamIO.write_bool(stream, packet.is_chat_colors()) StreamIO.write_ubyte(stream, packet.get_skin_parts()) StreamIO.write_varint(stream, packet.get_main_hand())
def write(stream, packet): StreamIO.write_int(stream, packet.get_entity_id()) StreamIO.write_ubyte(stream, packet.get_gamemode()) StreamIO.write_byte(stream, packet.get_dimension()) StreamIO.write_ubyte(stream, packet.get_difficulty()) StreamIO.write_ubyte(stream, packet.get_max_players()) StreamIO.write_string(stream, packet.get_level_type().encode("utf8")) StreamIO.write_bool(stream, packet.is_debug_info())
def write(stream, packet): StreamIO.write_ubyte(stream, packet.get_window_id()) StreamIO.write_string(stream, packet.get_window_type().encode("utf8")) StreamIO.write_string( stream, json.dumps(packet.get_window_title()).encode("utf8")) StreamIO.write_ubyte(stream, packet.get_slots_number()) if packet.get_window_type() == "EntityHorse": StreamIO.write_int(stream, packet.get_entity_id())
def write(stream, packet): StreamIO.write_string(stream, json.dumps(packet.get_chat()).encode("utf8")) StreamIO.write_byte(stream, packet.get_position())
def write(stream, packet): StreamIO.write_string(stream, packet.get_shared_secret()) StreamIO.write_string(stream, packet.get_verify_token())
def write(stream, packet): StreamIO.write_varint(stream, packet.get_protocol()) StreamIO.write_string(stream, packet.get_hostname().encode("utf8")) StreamIO.write_ushort(stream, packet.get_port()) StreamIO.write_varint(stream, packet.get_next_state())
def write(stream, packet): StreamIO.write_string(stream, packet.get_message().encode("utf8"))
def write(stream, packet): StreamIO.write_string(stream, json.dumps(packet.get_description()).encode("utf8"))
def write(stream, packet): StreamIO.write_string(stream, packet.get_uuid().encode("utf8")) StreamIO.write_string(stream, packet.get_username().encode("utf8"))
def write(stream, packet): StreamIO.write_string(stream, packet.get_channel().encode("utf8")) StreamIO.write(stream, packet.get_bytes())
def write(stream, packet): StreamIO.write_string(stream, packet.get_server_id().encode("utf8")) StreamIO.write_string(stream, packet.get_public_key()) StreamIO.write_string(stream, packet.get_verify_token())