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

View File

@ -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
.chars()
.collect::<Vec<char>>()
.chunks(236)
.map(|chars| chars.iter().collect::<String>())
{
self.client.chat(
&(if self.message.is_whisper()
&& let Some(username) = self.message.username() && let Some(username) = self.message.username()
{ {
&format!("/w {username} {message}") format!("/w {username} {chunk}")
} else { } else {
message chunk
}; }),
self.client.chat(response); );
}
} }
pub fn _entity(&mut self) -> Option<Entity> { pub fn _entity(&mut self) -> Option<Entity> {