From b4b5b4a6372c209aa01d3ac030e33bc3dfd6038a Mon Sep 17 00:00:00 2001 From: HibiKier <775757368@qq.com> Date: Thu, 8 Aug 2024 02:51:11 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20=E5=91=BD=E4=BB=A4=E6=A3=80?= =?UTF-8?q?=E6=B5=8B=E8=BF=87=E6=BB=A4b=E7=AB=99=E8=A7=A3=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zhenxun/builtin_plugins/hooks/chkdsk_hook.py | 5 ++++- zhenxun/plugins/fudu.py | 9 ++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/zhenxun/builtin_plugins/hooks/chkdsk_hook.py b/zhenxun/builtin_plugins/hooks/chkdsk_hook.py index a279d9d0..df23e48e 100644 --- a/zhenxun/builtin_plugins/hooks/chkdsk_hook.py +++ b/zhenxun/builtin_plugins/hooks/chkdsk_hook.py @@ -61,6 +61,9 @@ _blmt = BanCheckLimiter( malicious_ban_count, ) +# TODO: 恶意出发命令检测过滤 +_ignore = ["parse_bilibili"] + # 恶意触发命令检测 @run_preprocessor @@ -70,7 +73,7 @@ async def _(matcher: Matcher, bot: Bot, session: EventSession, state: T_State): module = plugin.module_name if metadata := plugin.metadata: extra = metadata.extra - if extra.get("plugin_type") == PluginType.HIDDEN: + if extra.get("plugin_type") == PluginType.HIDDEN or module not in _ignore: return user_id = session.id1 group_id = session.id3 or session.id2 diff --git a/zhenxun/plugins/fudu.py b/zhenxun/plugins/fudu.py index 1b05b983..ffb1057d 100644 --- a/zhenxun/plugins/fudu.py +++ b/zhenxun/plugins/fudu.py @@ -91,6 +91,9 @@ class Fudu: _manage = Fudu() +base_config = Config.get("fudu") + + _matcher = on_message(rule=ensure_group, priority=999) @@ -124,11 +127,11 @@ async def _(message: UniMsg, event: Event, session: EventSession): _manage.clear(group_id) _manage.append(group_id, add_msg) if _manage.size(group_id) > 2: - if random.random() < Config.get_config( - "fudu", "FUDU_PROBABILITY" + if random.random() < base_config.get( + "FUDU_PROBABILITY" ) and not _manage.is_repeater(group_id): if random.random() < 0.2: - if plain_text.endswith("打断施法!"): + if plain_text.startswith("打断施法"): await Text("打断" + plain_text).finish() else: await Text("打断施法!").finish()