feat: added role icons to roleinfo

This commit is contained in:
Seaswimmer 2023-08-08 16:42:17 -04:00
parent 7dd3131bb9
commit 8eef448ca3
No known key found for this signature in database
GPG key ID: 5019678FD9CF50D8

View file

@ -500,6 +500,11 @@ class Info(commands.Cog):
async def roleinfo(self, ctx, role: discord.Role, list_permissions: bool = False):
"""Gives information on a specific role.
`list_permissions` is ignored if the role you're checking has the `Administrator` permission."""
icon = role.display_icon
if isinstance(icon, discord.Asset):
icon_url = icon.url
else:
icon_url = None
permissions = role.permissions
if role.color.value == 0:
colorint = 10070709
@ -510,6 +515,8 @@ class Info(commands.Cog):
colorcodelink = f"https://www.color-hex.com/color/{color}"
timestamp = int(datetime.timestamp(role.created_at))
embed = discord.Embed(title=f"{role.name}", color=colorint, description=f"**ID:** {role.id}\n**Mention:** {role.mention}\n**Creation Date:** <t:{timestamp}>\n**Color:** [#{color}]({colorcodelink})\n**Hoisted:** {role.hoist}\n**Position:** {role.position}\n**Managed:** {role.managed}\n**Mentionable:** {role.mentionable}\n**Administrator:** {permissions.administrator}")
if icon_url:
embed.set_thumbnail(icon_url)
if permissions.administrator == False and list_permissions == True:
embed.add_field(name="Permissions", value=f"**Manage Server:** {permissions.manage_guild}\n**Manage Webhooks:** {permissions.manage_webhooks}\n**Manage Channels:** {permissions.manage_channels}\n**Manage Roles:** {permissions.manage_roles}\n**Manage Emojis:** {permissions.manage_emojis}\n**Manage Messages:** {permissions.manage_messages}\n**Manage Nicknames:** {permissions.manage_nicknames}\n**Mention @everyone**: {permissions.mention_everyone}\n**Ban Members:** {permissions.ban_members}\n**Kick Members:** {permissions.kick_members}")
await ctx.send(embed=embed)