diff options
-rw-r--r-- | bot/cogs/jams.py | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/bot/cogs/jams.py b/bot/cogs/jams.py index 74140b9db..75cf8fe6b 100644 --- a/bot/cogs/jams.py +++ b/bot/cogs/jams.py @@ -1,7 +1,7 @@ import logging import typing as t -from discord import CategoryChannel, Member, PermissionOverwrite, utils +from discord import CategoryChannel, Guild, Member, PermissionOverwrite, utils from discord.ext import commands from more_itertools import unique_everseen @@ -41,8 +41,8 @@ class CodeJams(commands.Cog): ) return - team_channel = await self.create_channels(ctx, team_name, members) - await self.add_roles(ctx, members) + team_channel = await self.create_channels(ctx.guild, team_name, members) + await self.add_roles(ctx.guild, members) await ctx.send( f":ok_hand: Team created: {team_channel}\n" @@ -51,19 +51,19 @@ class CodeJams(commands.Cog): ) @staticmethod - async def get_category(ctx: commands.Context) -> CategoryChannel: + async def get_category(guild: Guild) -> CategoryChannel: """Create a Code Jam category if it doesn't exist and return it.""" - code_jam_category = utils.get(ctx.guild.categories, name="Code Jam") + code_jam_category = utils.get(guild.categories, name="Code Jam") if code_jam_category is None: log.info("Code Jam category not found, creating it.") category_overwrites = { - ctx.guild.default_role: PermissionOverwrite(read_messages=False), - ctx.guild.me: PermissionOverwrite(read_messages=True) + guild.default_role: PermissionOverwrite(read_messages=False), + guild.me: PermissionOverwrite(read_messages=True) } - code_jam_category = await ctx.guild.create_category_channel( + code_jam_category = await guild.create_category_channel( "Code Jam", overwrites=category_overwrites, reason="It's code jam time!" @@ -72,7 +72,7 @@ class CodeJams(commands.Cog): return code_jam_category @staticmethod - def get_overwrites(members: t.List[Member], ctx: commands.Context) -> t.Dict[Member, PermissionOverwrite]: + def get_overwrites(members: t.List[Member], guild: Guild) -> t.Dict[Member, PermissionOverwrite]: """Get Code Jam team channels permission overwrites.""" # First member is always the team leader team_channel_overwrites = { @@ -82,8 +82,8 @@ class CodeJams(commands.Cog): manage_webhooks=True, connect=True ), - ctx.guild.default_role: PermissionOverwrite(read_messages=False, connect=False), - ctx.guild.get_role(Roles.verified): PermissionOverwrite( + guild.default_role: PermissionOverwrite(read_messages=False, connect=False), + guild.get_role(Roles.verified): PermissionOverwrite( read_messages=False, connect=False ) @@ -98,14 +98,14 @@ class CodeJams(commands.Cog): return team_channel_overwrites - async def create_channels(self, ctx: commands.Context, team_name: str, members: t.List[Member]) -> str: + async def create_channels(self, guild: Guild, team_name: str, members: t.List[Member]) -> str: """Create team text and voice channels. Return the mention for the text channel.""" # Get permission overwrites and category - team_channel_overwrites = self.get_overwrites(members, ctx) - code_jam_category = await self.get_category(ctx) + team_channel_overwrites = self.get_overwrites(members, guild) + code_jam_category = await self.get_category(guild) # Create a text channel for the team - team_channel = await ctx.guild.create_text_channel( + team_channel = await guild.create_text_channel( team_name, overwrites=team_channel_overwrites, category=code_jam_category @@ -114,7 +114,7 @@ class CodeJams(commands.Cog): # Create a voice channel for the team team_voice_name = " ".join(team_name.split("-")).title() - await ctx.guild.create_voice_channel( + await guild.create_voice_channel( team_voice_name, overwrites=team_channel_overwrites, category=code_jam_category @@ -123,13 +123,13 @@ class CodeJams(commands.Cog): return team_channel.mention @staticmethod - async def add_roles(ctx: commands.Context, members: t.List[Member]) -> None: + async def add_roles(guild: Guild, members: t.List[Member]) -> None: """Assign team leader and jammer roles.""" # Assign team leader role - await members[0].add_roles(ctx.guild.get_role(Roles.team_leaders)) + await members[0].add_roles(guild.get_role(Roles.team_leaders)) # Assign rest of roles - jammer_role = ctx.guild.get_role(Roles.jammers) + jammer_role = guild.get_role(Roles.jammers) for member in members: await member.add_roles(jammer_role) |