我如何提及命令触发器中提到的人?
How can I mention whoever was mentioned in the command trigger?
我正在尝试让我的 discord.py 机器人在服务器暂停中提及一个成员,然后给他们暂停的角色。但是,我不知道在嵌入中放什么,即使我只是放一些东西,它也不会发送消息。我也不确定它是否会起作用。这是我的代码:
@bot.command(pass_ctx=True)
@commands.has_permission(administrator=True)
async def suspend(ctx, *, self, member = discord.Member):
embed = discord.Embed(
colour = discord.Colour.red(title='Successful Suspension'))
[
embed.add_field(name='Details', value='')]
await ctx.send(embed=embed)
await member.add_roles('Suspended')
else:
await ctx.send('Insufficient Permissions.')
我在 else: function 上也遇到语法错误。
首先我要回答你的问题。您可以使用 discord.Member.mention
(在您的情况下,您可以简单地写 member.mention
) 来提及某人。
其次,我将帮助您嵌入:
- 函数中的参数凌乱。
- 为什么要在
discord.Colour.red()
中加上标题?那是一种 颜色 ,它用于更改嵌入侧边栏的颜色 (如果那是您尝试做的,您也不能更改文本颜色)。
- 在嵌入字段中,值中不能没有任何内容。
value=''
- 你有一个小错别字,是
has_permissions()
我不喜欢吃勺子,但是你的代码应该是这样的:
@bot.command(pass_ctx=True)
@commands.has_permissions(administrator=True)
async def suspend(self, ctx, *, member = discord.Member):
embed = discord.Embed(title='Succesful Suspension', colour=discord.Colour.red())
embed.add_field(name='Details', value='A')
await ctx.send(embed=embed)
await member.add_roles('Suspended')
我还删除了您代码的最后一部分,因为它没有意义。参见 error handling.
我想就这些了,希望这有用,我建议你看看at the docs.
如果有人发现任何错误,请在评论中告诉我。
我正在尝试让我的 discord.py 机器人在服务器暂停中提及一个成员,然后给他们暂停的角色。但是,我不知道在嵌入中放什么,即使我只是放一些东西,它也不会发送消息。我也不确定它是否会起作用。这是我的代码:
@bot.command(pass_ctx=True)
@commands.has_permission(administrator=True)
async def suspend(ctx, *, self, member = discord.Member):
embed = discord.Embed(
colour = discord.Colour.red(title='Successful Suspension'))
[
embed.add_field(name='Details', value='')]
await ctx.send(embed=embed)
await member.add_roles('Suspended')
else:
await ctx.send('Insufficient Permissions.')
我在 else: function 上也遇到语法错误。
首先我要回答你的问题。您可以使用 discord.Member.mention
(在您的情况下,您可以简单地写 member.mention
) 来提及某人。
其次,我将帮助您嵌入:
- 函数中的参数凌乱。
- 为什么要在
discord.Colour.red()
中加上标题?那是一种 颜色 ,它用于更改嵌入侧边栏的颜色 (如果那是您尝试做的,您也不能更改文本颜色)。 - 在嵌入字段中,值中不能没有任何内容。
value=''
- 你有一个小错别字,是
has_permissions()
我不喜欢吃勺子,但是你的代码应该是这样的:
@bot.command(pass_ctx=True)
@commands.has_permissions(administrator=True)
async def suspend(self, ctx, *, member = discord.Member):
embed = discord.Embed(title='Succesful Suspension', colour=discord.Colour.red())
embed.add_field(name='Details', value='A')
await ctx.send(embed=embed)
await member.add_roles('Suspended')
我还删除了您代码的最后一部分,因为它没有意义。参见 error handling.
我想就这些了,希望这有用,我建议你看看at the docs. 如果有人发现任何错误,请在评论中告诉我。