Как я могу создать объект discord.Permissions в discord.py? - PullRequest
1 голос
/ 25 июня 2019

Я хочу создать роль с некоторыми конкретными разрешениями, взятыми из словаря.Вот что я попробовал:

  for r in x:
      role = r['permissions']
      perms = discord.Permissions(create_instant_invite=role["create_instant_invite"], kick_members=role["kick_members"], ban_members=role["ban_members"], administrator=role["administrator"], manage_channels=role["manage_channels"], manage_guild=role["manage_guild"], view_audit_log=role["view_audit_log"], add_reactions=role["add_reactions"], priority_speaker=role["priority_speaker"], stream=role["stream"], read_messages=role["read_messages"],send_messages=role["send_messages"], send_tts_messages=role["send_tts_messages"], manage_messages=role["manage_messages"], embed_links=role["embed_links"], attach_files=role["attach_files"], read_message_history=role["read_message_history"], mention_everyone=role["mention_everyone"], external_emojis=role["external_emojis"], connect=role["connect"], speak=role["speak"], mute_members=role["mute_members"], deafen_members=role["deafen_members"], move_members=role["move_members"], use_voice_activation=role["use_voice_activation"], change_nickname=role["change_nickname"], manage_nicknames=role["manage_nicknames"], manage_roles=role["manage_roles"], manage_webhooks=role["manage_webhooks"], manage_emojis=role["manage_emojis"])
      await ctx.message.guild.create_role(name=r['name'], permissions=perms, colour=r['colour'].from_rgb(), hoist=r['hoist'], mentionable=r['mentionable'])

, но он все время говорит, что __init__ получил неожиданный аргумент.Вот полная ошибка:

TypeError: __init__() got an unexpected keyword argument 'kick_members'

Любая помощь будет оценена .. спасибо.

1 Ответ

0 голосов
/ 25 июня 2019

Вы должны создать объект Permissions без прав, а затем обновить его словарем:

perms = discord.Permissions.none()
perms.update(**role)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...