extends PacketHandler signal message_received(message: String) func send_message(message: String): var buffer := StreamPeerBuffer.new() buffer.put_u8(Packet.CHAT) buffer.put_data(message.to_utf8_buffer()) %Client.send(buffer.data_array) func handle_packet(data: PackedByteArray): var buffer := StreamPeerBuffer.new() buffer.data_array = data var player_id := buffer.get_string() var player := Global.players.get_player(player_id) var message := buffer.get_utf8_string() Log.info("%s: %s" % [player.name, message]) message_received.emit("[color=#e0e0e0]%s:[/color] %s" % [player.name, escape_bbcode(message)]) func escape_bbcode(text: String) -> String: return text.replace("[", "[lb]")