From a2c086998aede17a1244f74d4a53e0de6824045c Mon Sep 17 00:00:00 2001 From: pancakes-proxy Date: Tue, 3 Jun 2025 04:13:09 +0900 Subject: [PATCH] feat: Add user badges display in UserInfoCog for enhanced user profile information --- cogs/userinfo.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/cogs/userinfo.py b/cogs/userinfo.py index 7d626fa..2c0f1d7 100644 --- a/cogs/userinfo.py +++ b/cogs/userinfo.py @@ -70,12 +70,42 @@ class UserInfoCog(commands.Cog): roles_str = ", ".join(roles) if roles else "None" else: roles_str = "None" + + # Badges + badge_map = { + "staff": "Discord Staff 🛡️", + "partner": "Partner ⭐", + "hypesquad": "HypeSquad Event 🏆", + "bug_hunter": "Bug Hunter 🐛", + "hypesquad_bravery": "Bravery 🦁", + "hypesquad_brilliance": "Brilliance 🧠", + "hypesquad_balance": "Balance ⚖️", + "early_supporter": "Early Supporter 🕰️", + "team_user": "Team User 👥", + "system": "System 🤖", + "bug_hunter_level_2": "Bug Hunter Level 2 🐞", + "verified_bot": "Verified Bot 🤖", + "verified_developer": "Early Verified Bot Dev 🛠️", + "discord_certified_moderator": "Certified Mod 🛡️", + "active_developer": "Active Developer 🧑‍💻" + } + user_flags = getattr(user_obj, 'public_flags', None) + badges = [] + if user_flags: + for flag in badge_map: + if getattr(user_flags, flag, False): + badges.append(badge_map[flag]) + badge_str = ", ".join(badges) if badges else "" + if member.id == 1141746562922459136: + badge_str = (badge_str + ", " if badge_str else "") + "Bot Developer 🛠️" # Embed embed = discord.Embed( title=f"User Info: {member.display_name}", color=member.color if hasattr(member, 'color') else discord.Color.blurple(), description=f"Profile of {member.mention}" ) + if badge_str: + embed.add_field(name="Badge", value=badge_str, inline=False) if banner_url: embed.set_image(url=banner_url) embed.set_thumbnail(url=member.display_avatar.url)