Moved Directories of Cogs

pull/8/head
sgoudham 4 years ago
parent 1727fd038c
commit ac265cd1ff

@ -12,6 +12,17 @@ import settings
from settings import colour_list, enso_guild_ID, enso_ensochancommands_Mention, blank_space, enso_embedmod_colours, \
enso_verification_ID
"""events = {
"🎤": 722483603409469470, # Karaoke Night
"🎧": 696753950879383605, # Enso Bros Podcast
"🎥": 722482922518609990, # Movie Night
"🎮": 722493033882452078, # Game Night
":GameNight:": 722493033882452078,
":EnsoBros:": 696753950879383605,
":MovieNight:": 722482922518609990,
":Karaoke:": 722483603409469470
}"""
# Error handling function to make sure that the commands only work in "enso-chan-commands"
def error_function():
@ -367,6 +378,124 @@ class Enso(commands.Cog):
verif = await ctx.fetch_message(728424149692842115)
await verif.edit(embed=embed)
# Cog listener for enabling roles to be added to users when they react to the embedded message
@commands.Cog.listener()
async def on_raw_reaction_add(self, payload):
# If the message id equals the self roles message
if payload.message_id == 722514840559812649:
# Print out the emoji name
print(payload.emoji.name)
# Find a role corresponding to the Emoji name.
guild_id = payload.guild_id
# Find the guild Enso and find the role of the emoji that has been reacted to
guild = discord.utils.find(lambda g: g.id == guild_id, self.bot.guilds)
role = discord.utils.find(lambda r: r.name == payload.emoji.name, guild.roles)
# if the role does exist
if role is not None:
# Print to me that the role was found and display the id of the role
print(role.name + " was found!")
print(role.id)
# Find the member who had reacted to the emoji
member = discord.utils.find(lambda m: m.id == payload.user_id, guild.members)
# Add the role to the member
await member.add_roles(role)
# Print to me that the role has been added
print("done")
"""# Make sure the reaction event doesn't count other channels
if not payload.channel_id == 722347423913213992:
return
role = payload.member.guild.get_role(events.get(payload.emoji.name))
await payload.member.add_roles(role)
print(f"{payload.member.name} Was Given Role {role}")"""
# Cog listener for enabling roles to be removed from users when they unreact to the embedded messaged
@commands.Cog.listener()
async def on_raw_reaction_remove(self, payload):
# If the message id equals the self roles message
if payload.message_id == 722514840559812649:
# Print out the emoji name
print(payload.emoji.name)
# Get the server id
guild_id = payload.guild_id
# Find the guild Enso and find the role of the emoji that has been unreacted to
guild = discord.utils.find(lambda g: g.id == guild_id, self.bot.guilds)
role = discord.utils.find(lambda r: r.name == payload.emoji.name, guild.roles)
# if the role does exist
if role is not None:
# Find the member that has the role which the emoji is connected to
member = discord.utils.find(lambda m: m.id == payload.user_id, guild.members)
# Remove the role from the member
await member.remove_roles(role)
"""# Make sure the reaction event doesn't count other channels
if not payload.channel_id == 722347423913213992:
return
guild = self.bot.get_guild(payload.guild_id)
member = guild.get_member(payload.user_id)
role = guild.get_role(events.get(payload.emoji.name))
await member.remove_roles(role)
print(f"{member.name} Was Removed from Role {role}")"""
# Allowing people to get ping-able self roles
@command(name="rolemenu", hidden=True)
@is_owner()
async def role_menu(self, ctx):
# Setting the channel to "
channel = ctx.guild.get_channel(722347423913213992)
# Set up embed to let people know what ping-able roles can be chosen
embed = Embed(title="**Role Menu: Ping-Able Roles**",
colour=Colour.orange(),
timestamp=datetime.datetime.utcnow())
embed.set_thumbnail(url=ctx.guild.icon_url)
embed.set_author(name=ctx.author, icon_url=ctx.author.avatar_url)
embed.set_footer(text=f"{ctx.message.author}", icon_url=ctx.author.avatar_url)
embed.add_field(
name="\u200b",
value="React to give yourself roles to be pinged for these events!",
inline=False)
embed.add_field(
name="\u200b",
value="🎥 : `Movie Nights`",
inline=False)
embed.add_field(
name="\u200b",
value="🎤 : `Karaoke Nights`",
inline=False)
embed.add_field(
name="\u200b",
value="🎧 : `Enso Bros Podcasts`",
inline=False)
embed.add_field(
name="\u200b",
value="🎮 : `Game Nights`",
inline=False)
# Edit the Embed And Update it
message = await ctx.fetch_message(722514840559812649)
await message.edit(embed=embed)
# Send the embed to the channel "newpeople"
# await channel.send(embed=embed)
def setup(bot):
bot.add_cog(Enso(bot))
Loading…
Cancel
Save