如何检查被踢的人是作者还是机器人?

时间:2020-08-03 10:49:52

标签: discord.py

我已经为此工作了很长时间,但我仍然无法弄清楚!我一直在尝试许多不同的方法来检查会员是否既不是作者也不是机器人!

@bot.command() #kick (verified works)
@commands.has_permissions(kick_members = True)
async def kick(ctx, member : discord.Member, *, reason = None):
    if member == ctx.author.bot:
        await ctx.send("Unfortunatly I cannot do that!")
        return
    else:
        await ctx.send('Kicked the member {}'.format(ctx.member.mention))
        await member.kick(reason = reason)
        await ctx.message.delete()

这是我的反冲命令!不幸的是,如果它是机器人或作者,它什么也不会返回!甚至由于某种奇怪的原因,甚至仅用它来踢人也不起作用!有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

检查它是否是机器人非常简单,而您几乎就拥有了它。要检查您是否是同一个人,请将该成员与作者进行比较

if ctx.author.bot or member == ctx.author:  # If the author is a bot ctx.author.bot is True
    await ctx.send("Unfortunatly I cannot do that!")
    return