[英](discord.py) why my kick commands is not working?
@client.command
@commands.has_permissions(kick_members=True)
async def kick(ctx, member: discord.Member, *, reason = None):
await member.kick(reason=reason)
await ctx.send(f'{member} Has been kicked')
我有我的on_command_error
事件,
@kick.error
async def on_kick_error(ctx, error):
if isinstance(error, commands.MissingRequiredArgument):
await ctx.send('Please specify an user')
elif isinstance(error, commands.CheckFailure):
await ctx.send('You do not have a perms to do that!')
else:
await ctx.send('There is some error')
然后我收到了不和諧的錯誤消息
discord.py 版本 1.5
@commands.has_permissions(kick_members=True)
@client.command()
async def kick(ctx, user: discord.Member, *, reason="No reason provided"):
await user.kick(reason=reason)
kick = discord.Embed(title=f":boot: Kicked {user.name}!", description=f"Reason: {reason}\nBy: {ctx.author.mention}")
await ctx.message.delete()
await ctx.channel.send(embed=kick)
await user.send(embed=kick)
這行得通嗎?
@client.command()
@commands.has_permissions(kick_members=True)
async def kick(ctx, member: typing.Optional[discord.Member], arg = None):
if arg == None:
await ctx.send("Kicked " + member.mention + ".")
else:
await ctx.send("Kicked " + member.mention + " for " + arg + ".")
await ctx.guild.kick(member)
這應該有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.