Skip to content

Commit 8aa3a89

Browse files
committed
Merge branch 'Jerrie-Aries-dev-01-2' into development
2 parents 26eaada + 535c114 commit 8aa3a89

File tree

2 files changed

+33
-13
lines changed

2 files changed

+33
-13
lines changed

cogs/utility.py

+31-12
Original file line numberDiff line numberDiff line change
@@ -673,25 +673,37 @@ async def ping(self, ctx):
673673

674674
@commands.command()
675675
@checks.has_permissions(PermissionLevel.ADMINISTRATOR)
676-
async def mention(self, ctx, *mention: Union[discord.Role, discord.Member, str]):
676+
async def mention(self, ctx, *user_or_role: Union[discord.Role, discord.Member, str]):
677677
"""
678678
Change what the bot mentions at the start of each thread.
679679
680-
Type only `{prefix}mention` to retrieve your current "mention" message.
681-
`{prefix}mention disable` to disable mention.
682-
`{prefix}mention reset` to reset it to default value.
680+
`user_or_role` may be a user ID, mention, name, role ID, mention, or name.
681+
You can also set it to mention multiple users or roles, just separate the arguments with space.
682+
683+
Examples:
684+
- `{prefix}mention @user`
685+
- `{prefix}mention @user @role`
686+
- `{prefix}mention 984301093849028 388218663326449`
687+
- `{prefix}mention everyone`
688+
689+
Do not ping `@everyone` to set mention to everyone, use "everyone" or "all" instead.
690+
691+
Notes:
692+
- Type only `{prefix}mention` to retrieve your current "mention" message.
693+
- `{prefix}mention disable` to disable mention.
694+
- `{prefix}mention reset` to reset it to default value, which is "@here".
683695
"""
684696
current = self.bot.config["mention"]
685-
if not mention:
697+
if not user_or_role:
686698
embed = discord.Embed(
687699
title="Current mention:", color=self.bot.main_color, description=str(current)
688700
)
689701
elif (
690-
len(mention) == 1
691-
and isinstance(mention[0], str)
692-
and mention[0].lower() in ["disable", "reset"]
702+
len(user_or_role) == 1
703+
and isinstance(user_or_role[0], str)
704+
and user_or_role[0].lower() in ("disable", "reset")
693705
):
694-
option = mention[0].lower()
706+
option = user_or_role[0].lower()
695707
if option == "disable":
696708
embed = discord.Embed(
697709
description=f"Disabled mention on thread creation.", color=self.bot.main_color,
@@ -704,10 +716,17 @@ async def mention(self, ctx, *mention: Union[discord.Role, discord.Member, str])
704716
self.bot.config.remove("mention")
705717
await self.bot.config.update()
706718
else:
707-
for m in mention:
708-
if not isinstance(m, (discord.Role, discord.Member)):
719+
mention = []
720+
everyone = ("all", "everyone")
721+
for m in user_or_role:
722+
if not isinstance(m, (discord.Role, discord.Member)) and m not in everyone:
709723
raise commands.BadArgument(f'Role or Member "{m}" not found.')
710-
mention = " ".join(i.mention for i in mention)
724+
elif m == ctx.guild.default_role or m in everyone:
725+
mention.append("@everyone")
726+
continue
727+
mention.append(m.mention)
728+
729+
mention = " ".join(mention)
711730
embed = discord.Embed(
712731
title="Changed mention!",
713732
description=f'On thread creation the bot now says "{mention}".',

core/config_help.json

+2-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@
5252
"`{prefix}mention Yo~ Here's a new thread for ya!`"
5353
],
5454
"notes": [
55-
"Unfortunately, it's not currently possible to disable mention. You do not have to include a mention."
55+
"To disable mention, use command `{prefix}mention disable`.",
56+
"See also: `{prefix}help mention`."
5657
]
5758
},
5859
"main_color": {

0 commit comments

Comments
 (0)