From 27cfb731ff9f27d747f39444826ca2bf31caedb7 Mon Sep 17 00:00:00 2001 From: wling Date: Wed, 10 Jan 2024 00:28:58 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=F0=9F=93=A6=20=E6=B7=BB=E5=8A=A0=E5=AF=B9?= =?UTF-8?q?=E6=9C=BA=E5=99=A8=E4=BA=BA=E7=9A=84=E4=BF=9D=E6=8A=A4=E4=BA=8E?= =?UTF-8?q?=E5=A8=B6=E5=92=8C=E9=80=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/plugins/waifu/__init__.py | 17 +++++++++++++++-- src/plugins/waifu/utils.py | 1 + 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/plugins/waifu/__init__.py b/src/plugins/waifu/__init__.py index b1d1330..d52cabc 100644 --- a/src/plugins/waifu/__init__.py +++ b/src/plugins/waifu/__init__.py @@ -104,6 +104,10 @@ async def waifu_rule(bot: Bot, event: GroupMessageEvent, state: T_State) -> bool msg = event.message.extract_plain_text() if not msg.startswith("娶群友"): return False + # 不能娶机器人 + if event.to_me: + await bot.send(event, "不可以啦~", at_sender=True) + return False group_id = event.group_id user_id = event.user_id protect_list = await WaifuProtect.get_or_none(group_id=group_id) @@ -155,7 +159,6 @@ async def waifu_rule(bot: Bot, event: GroupMessageEvent, state: T_State) -> bool ) await bot.send(event, msg, at_sender=True) return False - if at: if at == rec.get(str(at)): X = HE @@ -173,7 +176,11 @@ async def waifu_rule(bot: Bot, event: GroupMessageEvent, state: T_State) -> bool if not waifu_id: group_id = event.group_id - member_list = await bot.get_group_member_list(group_id=group_id) + member_list = [ + member + for member in await bot.get_group_member_list(group_id=group_id) + if member["user_id"] != int(bot.self_id) + ] lastmonth = event.time - last_sent_time_filter rule_out = protect_list or set(rec.keys()) waifu_ids = [ @@ -389,6 +396,10 @@ async def yinpa_rule(bot: Bot, event: GroupMessageEvent, state: T_State) -> bool msg = event.message.extract_plain_text() if not msg.startswith("透群友"): return False + # 不能透机器人 + if event.to_me: + await bot.send(event, "不行!", at_sender=True) + return False group_id = event.group_id user_id = event.user_id protect_list, _ = await WaifuProtect.get_or_create(group_id=group_id) @@ -402,6 +413,7 @@ async def yinpa_rule(bot: Bot, event: GroupMessageEvent, state: T_State) -> bool at = at[0] if at in protect_set: return False + if at == user_id: msg = f"恭喜你涩到了你自己!{MessageSegment.image(file=await user_img(user_id))}" await bot.send(event, msg, at_sender=True) @@ -428,6 +440,7 @@ async def yinpa_rule(bot: Bot, event: GroupMessageEvent, state: T_State) -> bool for member in member_list if (user_id := member["user_id"]) not in protect_set and member["last_sent_time"] > lastmonth + and member["user_id"] != int(bot.self_id) ] if yinpa_ids: yinpa_id = random.choice(yinpa_ids) diff --git a/src/plugins/waifu/utils.py b/src/plugins/waifu/utils.py index 6cfc5ea..69a00e4 100644 --- a/src/plugins/waifu/utils.py +++ b/src/plugins/waifu/utils.py @@ -2,6 +2,7 @@ import httpx import hashlib import asyncio +from nonebot import logger from pil_utils import BuildImage, Text2Image from nonebot.adapters.onebot.v11 import Message From b03be0e3cd2694b6921c6d8b6d06bbd83ebd2da5 Mon Sep 17 00:00:00 2001 From: wling Date: Wed, 10 Jan 2024 00:29:44 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=F0=9F=8E=A8=20=E5=8E=BB=E9=99=A4=E4=B8=8D?= =?UTF-8?q?=E5=BF=85=E8=A6=81=E7=9A=84=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/plugins/waifu/utils.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/plugins/waifu/utils.py b/src/plugins/waifu/utils.py index 69a00e4..3a6daad 100644 --- a/src/plugins/waifu/utils.py +++ b/src/plugins/waifu/utils.py @@ -2,8 +2,6 @@ import httpx import hashlib import asyncio -from nonebot import logger - from pil_utils import BuildImage, Text2Image from nonebot.adapters.onebot.v11 import Message