From 7ef4f51edfd674d29e8c6844d9ab067e0dcaba44 Mon Sep 17 00:00:00 2001 From: Agatha Rose Date: Fri, 10 Jul 2020 19:59:23 +0300 Subject: [PATCH] Make owoify use last message's content if empty --- src/main.rs | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index fd02b42..bcb9ec0 100755 --- a/src/main.rs +++ b/src/main.rs @@ -306,7 +306,7 @@ fn bottom_rng(ctx: &mut Context, message: &Message, mut args: Args) -> CommandRe .channel_id .messages(&ctx.http, |get| get.before(message.id).limit(num)); if let Err(e) = messages { - let _ = message.channel_id.say(&ctx.http, format!("Error: {}", e)); + return Err(CommandError(s!(format!("Error: {}", e)))); } else { let mut messages = messages?; // remove all messages by other users @@ -471,7 +471,22 @@ fn pfp(ctx: &mut Context, message: &Message) -> CommandResult { fn owo(ctx: &mut Context, message: &Message, args: Args) -> CommandResult { use owoify::OwOifiable; - let input: String = args.rest().trim().to_string(); + let lastmsg = match message + .channel_id + .messages(&ctx.http, |get| get.before(message.id) + .limit(1)) { + Ok(v) => v, + Err(_) => return Err(CommandError(s!("Could not get last message!"))) + }; + + let ref lastmsg = lastmsg[0].content; + + let input: String = match args.is_empty() { + true => { + s!(lastmsg) + }, + false => args.rest().trim().to_string() + }; let _ = message.channel_id.say(&ctx.http, input.owoify()); Ok(())