我一直在尝试创建一个命令,当他/她在特定频道中发言时为用户添加角色。然后角色将用户静音,使其成为一个消息通道。
代码:
@client.event
async def on_message(message):
if message.channel.name == '?・message-archive':
await client.process_commands(message)
elif "" in message.content:
role = discord.utils.get(message.guild.roles, name="one message")
await message.author.add_roles(role)
await client.process_commands(message)
问题在于它在任何频道中添加了一个角色。我希望它仅用于 1 个频道。
我曾尝试使用 if
和 else if
,但没有用。
答案 0 :(得分:1)
只需检查频道的名称/ID 是否正确:
if channel.id == 182739817283172:
await message.author.add_roles(role)
if channel.name == "whatever":
await message.author.add_roles(role)