diff --git a/.env.example b/.env.example index 4670670..4d40b7b 100644 --- a/.env.example +++ b/.env.example @@ -27,6 +27,8 @@ BOT_ID= ## Emojis SUCCESS_EMOJI_NAME= SUCCESS_EMOJI_ID= +FAIL_EMOJI_NAME= +FAIL_EMOJI_ID= LOADING_EMOJI_NAME= LOADING_EMOJI_ID= LOGO_EMOJI_NAME= diff --git a/Cargo.toml b/Cargo.toml index 6900733..46de206 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -37,7 +37,7 @@ chrono = "0.4.19" [dependencies.serenity] -version = "0.11" +version = "=0.11.1" default-features = false features = ["collector", "gateway", "builder", "standard_framework", "http", "model", "client", "framework", "utils", "rustls_backend"] diff --git a/src/cache.rs b/src/cache.rs index b2d4bef..75073a2 100644 --- a/src/cache.rs +++ b/src/cache.rs @@ -122,6 +122,8 @@ pub async fn fill( let emoji_identifiers = [ "SUCCESS_EMOJI_ID", "SUCCESS_EMOJI_NAME", + "FAIL_EMOJI_NAME", + "FAIL_EMOJI_ID", "LOADING_EMOJI_ID", "LOADING_EMOJI_NAME", "LOGO_EMOJI_NAME", diff --git a/src/utls/discordhelpers/mod.rs b/src/utls/discordhelpers/mod.rs index 0ffc4e4..4227459 100644 --- a/src/utls/discordhelpers/mod.rs +++ b/src/utls/discordhelpers/mod.rs @@ -212,11 +212,11 @@ pub async fn send_completion_react( success: bool, ) -> Result { let reaction; - if success { - { - let data = ctx.data.read().await; - let botinfo_lock = data.get::().unwrap(); - let botinfo = botinfo_lock.read().await; + let data = ctx.data.read().await; + let botinfo_lock = data.get::().unwrap(); + let botinfo = botinfo_lock.read().await; + match success { + true => { if let Some(success_id) = botinfo.get("SUCCESS_EMOJI_ID") { let success_name = botinfo .get("SUCCESS_EMOJI_NAME") @@ -230,10 +230,20 @@ pub async fn send_completion_react( reaction = ReactionType::Unicode(String::from("✅")); } } - } else { - reaction = ReactionType::Unicode(String::from("❌")); + false => { + if let Some(fail_id) = botinfo.get("FAIL_EMOJI_ID") { + let fail_name = botinfo + .get("FAIL_EMOJI_NAME") + .expect("Unable to find fail emoji name") + .clone(); + reaction = + discordhelpers::build_reaction(fail_id.parse::().unwrap(), &fail_name); + } else { + reaction = ReactionType::Unicode(String::from("❌")); + } + } } - return msg.react(&ctx.http, reaction).await; + msg.react(&ctx.http, reaction).await } // Certain compiler outputs use unicode control characters that