discord.py 检查是否有大规模加入(raid)
问题描述
我想让我的机器人使用 discord.py 检查是否有超过 10 人在 15 秒内进入服务器
I would like to have my bot check if more than 10 people enter in 15 seconds in a server with discord.py
discord.py有默认功能还是我自己创建?
Is there a default function of discord.py or do I have to create it myself?
解决方案
找不到这样的功能!但是制作一个并不难:
I couldn't find such a function! However making one is not so hard:
import time
...
THRESHOLD = 10
m = []
time_ = time.time()
def antiraid(member):
global m
global time_
m.append(member)
if time.time() - time_ >= 15.0:
time_ = time.time()
if len(m) >= THRESHOLD:
return True
else:
return False
m = []
@bot.event
async def on_member_join(member):
bool_ = antiraid(member)
print('Raid state: %s' % bool_)
注意:这只是一个想法如何制作这个功能!您也可以使用可能更好的线程来实现这一点.
Note: This is only an idea how to make this function! You can also implement this with threads which might be better.
相关文章