好的,我正在尝试制作仅适用于特定行会的命令。
这是代码。
如果我添加了多个公会ID,那么每个公会都可以使用此命令。
async def is_guild(ctx):
return ctx.guild.id == someguildidhere, someguildidhere
@client.command()
@commands.check(is_guild)
async def checkispremium(ctx):
await ctx.send("Guild owns lifetime premium.")
@checkispremium.error
async def checkispremium(ctx, error):
if isinstance(error, commands.CheckFailure):
await ctx.send("Guild doesn't owns premium ")
但是,当我仅添加一个公会ID时,一切正常。只有特定的行会才能使用该命令,其他行会出错。
async def is_guild(ctx):
return ctx.guild.id == someguildidhere
@client.command()
@commands.check(is_guild)
async def checkispremium(ctx):
await ctx.send("Guild owns lifetime premium.")
@checkispremium.error
async def checkispremium(ctx, error):
if isinstance(error, commands.CheckFailure):
await ctx.send("Guild doesn't owns premium")
任何人都知道我如何拥有多个公会ID,我尝试查看discordpy-rewrite文档,但看起来好像什么都没有。
答案 0 :(得分:0)
使用
async def is_guild(ctx):
return ctx.guild.id in [someguildidhere, someguildidhere, ...]