From 762e9389c5bfbe5321227a0d4e6d95b769200dad Mon Sep 17 00:00:00 2001 From: Michael Messmer <43071487+mnmenator@users.noreply.github.com> Date: Thu, 12 Mar 2020 12:55:31 -0700 Subject: [PATCH] Remove unnecessary iter() calls MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add a check that ignores the "@everyone" role when the add/sub commands are called with "all" as an argument //I don't know how to test this without actually implementing it so I can't confirm that it works as intended ¯\_(ツ)_/¯ --- bot.py | 68 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/bot.py b/bot.py index 85101f1..5bf1420 100644 --- a/bot.py +++ b/bot.py @@ -119,23 +119,23 @@ async def logout(ctx): @bot.command(pass_context=True) async def sub(ctx, *args): - "Subtracts any roles mentioned after sub if they exist say all for all possible roles to remove" - member = discord.utils.get(ctx.guild.members, name=ctx.author.name) - for arg in args: - if(arg == "all"): - roles = ctx.guild.roles - iterroles = iter(roles) - next(iterroles) - for role in iterroles: - if role.name == "hackbot 1.1": - break - else: - await member.remove_roles(role) - break - else: - role = discord.utils.get(ctx.guild.roles, name=arg) - await member.remove_roles(role) - await ctx.send('I\'ve removed your requested roles %s!' %ctx.author.name) + "Subtracts any roles mentioned after sub if they exist say all for all possible roles to remove" + member = discord.utils.get(ctx.guild.members, name=ctx.author.name) + for arg in args: + if(arg == "all"): + roles = ctx.guild.roles + for role in roles: + if role.name == "hackbot 1.1": + break + elif role.name == "@everyone": + continue + else: + await member.remove_roles(role) + break + else: + role = discord.utils.get(ctx.guild.roles, name=arg) + await member.remove_roles(role) + await ctx.send('I\'ve removed your requested roles %s!' %ctx.author.name) """ @sub.error @@ -145,23 +145,23 @@ async def sub_error(error, ctx): @bot.command(pass_context=True) async def add(ctx, *args): - "Adds any roles mentioned after add if they exist say all for all roles possible to add" - member = discord.utils.get(ctx.guild.members, name=ctx.author.name) - for arg in args: - if(arg == "all"): - roles = ctx.guild.roles - iterroles = iter(roles) - next(iterroles) - for role in iterroles: - if role.name == "hackbot 1.1": - break - else: - await member.add_roles(role) - break - else: - role = discord.utils.get(ctx.guild.roles, name=arg) - await member.add_roles(role) - await ctx.send('I\'ve added your new roles %s!' %ctx.author.name) + "Adds any roles mentioned after add if they exist say all for all roles possible to add" + member = discord.utils.get(ctx.guild.members, name=ctx.author.name) + for arg in args: + if(arg == "all"): + roles = ctx.guild.roles + for role in roles: + if role.name == "hackbot 1.1": + break + elif role.name == "@everyone": + continue + else: + await member.add_roles(role) + break + else: + role = discord.utils.get(ctx.guild.roles, name=arg) + await member.add_roles(role) + await ctx.send('I\'ve added your new roles %s!' %ctx.author.name) """ @add.error