discord.py如何添加静音命令

时间:2018-02-12 19:00:59

标签: python discord discord.py discord.py-rewrite

我制作了一个不和谐的机器人,我真的想做一个静音命令来消除有毒用户的声音。 这是我目前done的代码,这不是重写版本。

{{1}}

4 个答案:

答案 0 :(得分:1)

我重写了我的代码并得到了一些代码,如果其他人需要它,就在这里:)

@bot.command(pass_context = True)
async def mute(ctx, member: discord.Member):
     if ctx.message.author.server_permissions.administrator or ctx.message.author.id == '194151340090327041':
        role = discord.utils.get(member.server.roles, name='Muted')
        await bot.add_roles(member, role)
        embed=discord.Embed(title="User Muted!", description="**{0}** was muted by **{1}**!".format(member, ctx.message.author), color=0xff00f6)
        await bot.say(embed=embed)
     else:
        embed=discord.Embed(title="Permission Denied.", description="You don't have permission to use this command.", color=0xff00f6)
        await bot.say(embed=embed)

答案 1 :(得分:0)

好吧,你应该使用这个选择器

@commands.has_role('YOUR ROLE')

而不是你的if语句

答案 2 :(得分:0)

您应该使用此:

await member.edit(mute = True)

答案 3 :(得分:0)

如果他为您所做的任何工作都没有尝试我并相应地进行更改,那么我在代码中修复了一些问题

@client.command(pass_context = True)
async def mute(ctx, member: discord.Member):
     if ctx.message.author.server_permissions.administrator:
        role = discord.utils.get(member.server.roles, name='Muted')
        await ctx.add_roles(member, role)
        embed=discord.Embed(title="User Muted!", description="**{0}** was muted by **{1}**!".format(member, ctx.message.author), color=0xff00f6)
        await ctx.send(embed=embed)
     else:
        embed=discord.Embed(title="Permission Denied.", description="You don't have permission to use this command.", color=0xff00f6)
        await ctx.send(embed=embed)