feat: mise en place message pour schedule

This commit is contained in:
Max batleforc 2024-06-29 16:24:54 +02:00
parent 1b2f0e25ac
commit 48924d4bd9
No known key found for this signature in database
GPG Key ID: 25D243AB4B6AC9E7
2 changed files with 30 additions and 3 deletions

View File

@ -97,7 +97,7 @@ Ceux qui votent pour leur propre photo, cela ne sera pas pris en compte, une pho
À vos photos ! À vos photos !
{} {}
", keyword.to_string(),ping_concour); ", keyword,ping_concour);
let output = CreateEmbed::new() let output = CreateEmbed::new()
.title(format!( .title(format!(
"Concour: {} Jour : {}", "Concour: {} Jour : {}",

View File

@ -1,5 +1,5 @@
use poise::serenity_prelude::{ use poise::serenity_prelude::{
Color, CreateEmbed, CreateMessage, Http, Mentionable, MessagePagination, Color, CreateEmbed, CreateMessage, Http, Mentionable, MessagePagination, RoleId,
}; };
use std::{ use std::{
collections::HashMap, collections::HashMap,
@ -376,6 +376,28 @@ impl ScheduleJob {
.keywords .keywords
.get(concour.index_keyword as usize) .get(concour.index_keyword as usize)
.unwrap(); .unwrap();
let ping_role = match concour.ping_concour {
Some(role_id) => RoleId::new(role_id).mention().to_string(),
None => "".to_string(),
};
let answer = format!(
"Bonsoir !
🏆 Bravo à {} pour ses réactions sous son image.
👹 Le thème de ce soir est : {}
📜 Les règles : Pas de loli, ni de shoota, ni de irl, ni de zoo.
Celui ou celle qui a le plus de votes gagne, comme récompense elle aura le rôle @ROLE pour une durée de 48h.
Le concours ce termine dans deux jours.
Ceux qui votent pour leur propre photo, cela ne sera pas pris en compte, une photo par personne.
À vos photos !
{}",
winner.id.mention(), next_keyword, ping_role
);
let output = CreateEmbed::new() let output = CreateEmbed::new()
.title(format!( .title(format!(
"Concour: {} Jour : {}", "Concour: {} Jour : {}",
@ -391,7 +413,12 @@ impl ScheduleJob {
false, false,
) )
.color(Color::DARK_GREEN); .color(Color::DARK_GREEN);
let reply = CreateMessage::default().embed(output); let mut reply = CreateMessage::default();
if !answer.is_empty() {
reply = reply.content(answer);
}else{
reply = reply.embed(output);
}
let last_id = let last_id =
match http.send_message(channel_id.into(), vec![], &reply).await { match http.send_message(channel_id.into(), vec![], &reply).await {
Ok(message) => message.id, Ok(message) => message.id,