【发布时间】:2020-11-29 00:15:12
【问题描述】:
我希望我的机器人根据昵称模式(基本上是公司 ID)更改用户角色。
当用户将自己的ID放入昵称时,on_member_update()被正常调用。
在函数中,机器人添加角色并将昵称再次更改为特定模式。这会再次触发 on_member_update()。
请注意,我只有 1 个公会中的机器人。
我试图通过添加来阻止它
if before.display_name == after.display_name:
return
但是在昵称改变的时候还是会进入函数。有没有办法避免函数再次触发自己?
代码:
@bot.event
async def on_member_update(before, after):
if before.display_name == after.display_name:
return
id = re.findall(r'\d{6,7}', after.display_name)
if not id:
return
else:
# Business logic (changing nickname, adding roles etc...)
【问题讨论】:
标签: discord discord.py discord.py-rewrite