From c41c3ff851a1c917cf6566c0b16cec7057ef81af Mon Sep 17 00:00:00 2001 From: Nilstrieb Date: Tue, 15 Jun 2021 13:53:08 +0200 Subject: [PATCH] does stuff --- src/autorole.rs | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/src/autorole.rs b/src/autorole.rs index 866233f..6532370 100644 --- a/src/autorole.rs +++ b/src/autorole.rs @@ -107,37 +107,32 @@ async fn autorole(ctx: &Context, msg: &Message, mut args: Args) -> CommandResult }) .await?; - for data in roles { - reaction_message.react(http, data.0).await?; + for data in &roles { + reaction_message.react(http, data.0.clone()).await?; } let mut data = ctx.data.write().await; let mut auto_roles = data.get_mut::().unwrap(); + roles + .iter() + .map(|(emoji, role)| ((emoji.id, reaction_message.id), role.id)) + .for_each(|(key, value)| { + auto_roles.messages.insert(key, value); + }); + Ok(()) } #[derive(Serialize, Deserialize)] pub struct AutoRoleData { - messages: Vec>, + messages: HashMap<(EmojiId, MessageId), RoleId>, } impl Default for AutoRoleData { fn default() -> Self { Self { - messages: Vec::default(), + messages: HashMap::default(), } } } - -#[derive(Serialize, Deserialize, Eq, PartialEq, Hash)] -struct DEmote { - name: String, - id: String, -} - -#[derive(Serialize, Deserialize, Eq, PartialEq)] -struct DRole { - name: String, - id: String, -}