From 15dfd75ce84235b07b845fdfb42e269002b92c01 Mon Sep 17 00:00:00 2001 From: Kyomotoi <1172294279@qq.com> Date: Mon, 5 Apr 2021 16:01:22 +0800 Subject: =?UTF-8?q?=E2=9C=A8=F0=9F=90=9B=E2=9A=A1=EF=B8=8F=20=E4=B8=80?= =?UTF-8?q?=E4=BA=9B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增:转发信息伪造 新增:关键词回复/添加/删除(待更新) 新增:涩图检测(部署方式待更新) 新增:使用方法 新增:ATRI语加密/解密 新增:注入检测 新增:部分命令频率限制 移除:群垃圾检测 优化:提升了部分代码可读性 优化:对 Service 部分代码进行重构 --- ATRI/rule.py | 59 ----------------------------------------------------------- 1 file changed, 59 deletions(-) (limited to 'ATRI/rule.py') diff --git a/ATRI/rule.py b/ATRI/rule.py index 7cdeb0a..109d644 100644 --- a/ATRI/rule.py +++ b/ATRI/rule.py @@ -1,13 +1,8 @@ -import datetime -from random import choice - from nonebot.rule import Rule from nonebot.adapters.cqhttp import GroupMessageEvent, PokeNotifyEvent from .config import config from .service import Service as sv -from .utils.list import count_list, del_list_aim -from .utils.apscheduler import scheduler, DateTrigger def is_in_service(service: str) -> Rule: @@ -34,60 +29,6 @@ def is_in_dormant() -> Rule: return Rule(_is_in_dormant) -exciting_user = [] -exciting_repo = [ - "歇歇8,。咱8能再快了", - "太快惹,太快惹嗯", - "你吼辣么快干什么!", - "其实吧我觉得你这速度去d个vup挺适合", - "我不接受!你太快了", - "我有点担心,因为你太快了", - "请稍等!您冲得太快了!" -] - -def is_too_exciting(times: int, repo: bool) -> Rule: - def del_list(user: str) -> None: - global exciting_user - exciting_user = del_list_aim(exciting_user, user) - - async def _is_too_exciting(bot, event, state) -> bool: - global exciting_user - user = event.get_user_id() - - if user in exciting_user: - if repo: - await bot.send( - event, - choice(exciting_repo) - ) - return False - else: - if count_list(exciting_user, user) == times: - delta = datetime.timedelta( - seconds=config["BotSelfConfig"]["session_exciting_time"]) - trigger = DateTrigger( - run_date=datetime.datetime.now() + delta) - - scheduler.add_job( - func=del_list, - trigger=trigger, - args=(user,), - misfire_grace_time=1, - ) - - if repo: - await bot.send( - event, - choice(exciting_repo) - ) - return False - else: - exciting_user.append(user) - return True - - return Rule(_is_too_exciting) - - def to_bot() -> Rule: async def _to_bot(bot, event, state) -> bool: return event.is_tome() -- cgit v1.2.3