Archived
1
0
Fork 0
This commit is contained in:
yzhh 2022-03-16 19:20:30 +08:00
parent 54c81672cf
commit 3bc048ea6b
2 changed files with 9 additions and 3 deletions

View file

@ -64,7 +64,7 @@ async def _(event: Event):
senderFrom='QQ', senderName=''), Session(message=event,
target=event.group_id if event.detail_type == 'group' else event.user_id,
sender=event.user_id))
await parser(msg)
await parser(msg, running_mention=True)
class GuildAccountInfo:
@ -91,7 +91,7 @@ async def _(event):
Session(message=event,
target=f'{str(event.guild_id)}|{str(event.channel_id)}',
sender=event.user_id))
await parser(msg)
await parser(msg, running_mention=True)
"""@bot.on('request.friend')

View file

@ -45,12 +45,14 @@ async def msg_counter(msg: MessageSession, command: str):
raise AbuseWarning('一段时间内使用命令的次数过多')
async def parser(msg: MessageSession, require_enable_modules: bool = True, prefix: list = None):
async def parser(msg: MessageSession, require_enable_modules: bool = True, prefix: list = None,
running_mention: bool = False):
"""
接收消息必经的预处理器
:param msg: 从监听器接收到的dict该dict将会经过此预处理器传入下游
:param require_enable_modules: 是否需要检查模块是否已启用
:param prefix: 使用的命令前缀如果为None则使用默认的命令前缀存在''值的情况下则代表无需命令前缀
:param running_mention: 消息内若包含机器人名称则检查是否有命令正在运行
:return: 无返回
"""
modules = ModulesManager.return_modules_list_as_dict(msg.target.targetFrom)
@ -214,6 +216,10 @@ async def parser(msg: MessageSession, require_enable_modules: bool = True, prefi
continue
ExecutionLockList.remove(msg)
if not is_command:
if running_mention:
if display.find('小可') != -1:
if ExecutionLockList.check(msg):
return await msg.sendMessage('您先前的命令正在执行中。')
for regex in modulesRegex: # 遍历正则模块列表
try:
if regex in enabled_modules_list: