Slight refactoring to reduce indentation
This commit is contained in:
parent
9f713a6463
commit
a4ddf32b73
43
src/main.rs
43
src/main.rs
|
@ -18,27 +18,28 @@ impl EventHandler for Handler {
|
||||||
old: Option<VoiceState>,
|
old: Option<VoiceState>,
|
||||||
new: VoiceState,
|
new: VoiceState,
|
||||||
) {
|
) {
|
||||||
if let Some(gid) = guild_id {
|
if guild_id.is_none() || !ROLES_BY_SERVER.contains_key(&guild_id.unwrap()) {
|
||||||
if let Some(rid) = ROLES_BY_SERVER.get(&gid) {
|
return;
|
||||||
if let Ok(guild) = PartialGuild::get(&ctx.http, gid) {
|
}
|
||||||
let mut roles = guild
|
let gid = guild_id.unwrap();
|
||||||
.member(&ctx.http, new.user_id)
|
let rid = ROLES_BY_SERVER.get(&gid).unwrap();
|
||||||
.expect("could not retrieve member")
|
if let Ok(guild) = PartialGuild::get(&ctx.http, gid) {
|
||||||
.roles;
|
let mut roles = guild
|
||||||
// user just joined the VC -> add the role
|
.member(&ctx.http, new.user_id)
|
||||||
if old.is_none() {
|
.expect("could not retrieve member")
|
||||||
roles.push(*rid);
|
.roles;
|
||||||
// user is no longer in VC -> remove the role
|
// user just joined the VC -> add the role
|
||||||
} else if new.channel_id.is_none() {
|
if old.is_none() {
|
||||||
roles.retain(|r| r != rid);
|
roles.push(*rid);
|
||||||
}
|
// user is no longer in VC -> remove the role
|
||||||
if let Err(e) = guild.edit_member(&ctx.http, new.user_id, |m| m.roles(roles)) {
|
} else if new.channel_id.is_none() {
|
||||||
println!(
|
roles.retain(|r| r != rid);
|
||||||
"Could not edit member {} of guild {}, {}",
|
}
|
||||||
new.user_id, gid, e
|
if let Err(e) = guild.edit_member(&ctx.http, new.user_id, |m| m.roles(roles)) {
|
||||||
);
|
println!(
|
||||||
}
|
"Could not edit member {} of guild {}, {}",
|
||||||
}
|
new.user_id, gid, e
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user