aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xazalea-client/src/chat.rs11
1 files changed, 9 insertions, 2 deletions
diff --git a/azalea-client/src/chat.rs b/azalea-client/src/chat.rs
index 202cf47c..e127f0d7 100755
--- a/azalea-client/src/chat.rs
+++ b/azalea-client/src/chat.rs
@@ -149,6 +149,7 @@ impl Client {
entity: self.entity,
content: content.to_string(),
});
+ self.run_schedule_sender.send(()).unwrap();
}
}
@@ -228,9 +229,15 @@ fn handle_send_chat_kind_event(
mut send_packet_events: EventWriter<SendPacketEvent>,
) {
for event in events.iter() {
+ let content = event
+ .content
+ .chars()
+ .filter(|c| !matches!(c, '\x00'..='\x1F' | '\x7F' | 'ยง'))
+ .take(256)
+ .collect::<String>();
let packet = match event.kind {
ChatPacketKind::Message => ServerboundChatPacket {
- message: event.content.clone(),
+ message: content,
timestamp: SystemTime::now()
.duration_since(UNIX_EPOCH)
.expect("Time shouldn't be before epoch")
@@ -245,7 +252,7 @@ fn handle_send_chat_kind_event(
ChatPacketKind::Command => {
// TODO: chat signing
ServerboundChatCommandPacket {
- command: event.content.clone(),
+ command: content,
timestamp: SystemTime::now()
.duration_since(UNIX_EPOCH)
.expect("Time shouldn't be before epoch")