#python #discord.py #discord.py-rewrite
#python #discord.py
Вопрос:
Итак, я пытаюсь создать команду, доступную только для определенных гильдий.
Вот код.
Если я добавлю несколько идентификаторов гильдий, каждая гильдия сможет использовать эту команду.
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 ")
Однако, когда я добавляю только один идентификатор гильдии, все работает нормально. Только определенная гильдия может использовать команду, а другие получат сообщение об ошибке.
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")
Кто-нибудь знает, как у меня может быть несколько идентификаторов гильдий, я попытался просмотреть документы discordpy-rewrite, но, похоже, там ничего нет.
Ответ №1:
Используйте
async def is_guild(ctx):
return ctx.guild.id in [someguildidhere, someguildidhere, ...]