@@ -76,18 +76,20 @@ def is_mentioned_bot_in_message(message: MessageRecv) -> tuple[bool, float]:
|
|||||||
else:
|
else:
|
||||||
if not is_mentioned:
|
if not is_mentioned:
|
||||||
# 判断是否被回复
|
# 判断是否被回复
|
||||||
if re.match("回复[\s\S]*?\((\d+)\)的消息,说:", message.processed_plain_text):
|
if re.match(
|
||||||
|
f"\[回复 [\s\S]*?\({str(global_config.BOT_QQ)}\):[\s\S]*?\],说:", message.processed_plain_text
|
||||||
|
):
|
||||||
is_mentioned = True
|
is_mentioned = True
|
||||||
|
else:
|
||||||
# 判断内容中是否被提及
|
# 判断内容中是否被提及
|
||||||
message_content = re.sub(r"@[\s\S]*?((\d+))", "", message.processed_plain_text)
|
message_content = re.sub(r"@[\s\S]*?((\d+))", "", message.processed_plain_text)
|
||||||
message_content = re.sub(r"回复[\s\S]*?\((\d+)\)的消息,说: ", "", message_content)
|
message_content = re.sub(r"\[回复 [\s\S]*?\(((\d+)|未知id)\):[\s\S]*?\],说:", "", message_content)
|
||||||
for keyword in keywords:
|
for keyword in keywords:
|
||||||
if keyword in message_content:
|
if keyword in message_content:
|
||||||
is_mentioned = True
|
is_mentioned = True
|
||||||
for nickname in nicknames:
|
for nickname in nicknames:
|
||||||
if nickname in message_content:
|
if nickname in message_content:
|
||||||
is_mentioned = True
|
is_mentioned = True
|
||||||
if is_mentioned and global_config.mentioned_bot_inevitable_reply:
|
if is_mentioned and global_config.mentioned_bot_inevitable_reply:
|
||||||
reply_probability = 1.0
|
reply_probability = 1.0
|
||||||
logger.info("被提及,回复概率设置为100%")
|
logger.info("被提及,回复概率设置为100%")
|
||||||
|
|||||||
Reference in New Issue
Block a user