mention
This commit is contained in:
parent
54c81672cf
commit
3bc048ea6b
2 changed files with 9 additions and 3 deletions
|
@ -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')
|
||||
|
|
|
@ -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:
|
||||
|
|
Reference in a new issue