[英]Discord.py on_message() missing arguments with @client.event
[英]Get permissions with @client.event on_message (Discord.py)
我想查看message.author
是否具有更改前綴的Manage Server
權限。 我想使用@client.event
而不是@bot.command
或其他。 請告訴我怎么做,謝謝!
@client.event
async def on_message(message):
if message.content.startswith(f'{prefix}prefix'):
message.channel.guild.author.guild_permissions
requestList = message.content.split()
if len(requestList) == 2:
prefixData[guildID] = requestList[1] #'str' object does not support item assignment
await message.channel.send(message.author.mention + "\n" + f"The new prefix is {requestList[1]}")
else:
await message.channel.send(message.author.mention + "\n" + "ERROR")
guild_permissions
是Member
的一個屬性,似乎 prefixData 是一個字符串而不是一個字典
以下是修改后的代碼:
@client.event
async def on_message(m):
if not m.guild: return # DM Message
if m.author.guild_permissions.manage_guild and m.content.startswith(f'{prefix}prefix'):
# change prefix code
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.