fix(client): split long replies into multiple chunks

This commit is contained in:
Ryan 2025-02-17 22:18:59 -05:00
parent dde489a8ed
commit 2cba4d797f
Signed by: ErrorNoInternet
GPG Key ID: 2486BFB7B1E6A4A3

@ -19,14 +19,22 @@ pub struct CommandSource {
impl CommandSource { impl CommandSource {
pub fn reply(&self, message: &str) { pub fn reply(&self, message: &str) {
let response = if self.message.is_whisper() for chunk in message
&& let Some(username) = self.message.username() .chars()
.collect::<Vec<char>>()
.chunks(236)
.map(|chars| chars.iter().collect::<String>())
{ {
&format!("/w {username} {message}") self.client.chat(
} else { &(if self.message.is_whisper()
message && let Some(username) = self.message.username()
}; {
self.client.chat(response); format!("/w {username} {chunk}")
} else {
chunk
}),
);
}
} }
pub fn _entity(&mut self) -> Option<Entity> { pub fn _entity(&mut self) -> Option<Entity> {