mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 14:22:55 +08:00
74 lines
2.6 KiB
Python
Executable File
74 lines
2.6 KiB
Python
Executable File
from nonebot import on_command
|
|
from nonebot.adapters.onebot.v11 import (
|
|
Bot,
|
|
MessageEvent,
|
|
GroupMessageEvent,
|
|
Message
|
|
)
|
|
from nonebot.params import CommandArg
|
|
from nonebot.typing import T_State
|
|
from nonebot.rule import to_me
|
|
from configs.path_config import IMAGE_PATH, DATA_PATH
|
|
from utils.message_builder import image
|
|
from .data_source import create_help_img, get_plugin_help
|
|
import os
|
|
|
|
|
|
__zx_plugin_name__ = "帮助"
|
|
|
|
group_help_path = DATA_PATH / "group_help"
|
|
help_image = IMAGE_PATH / "help.png"
|
|
simple_help_image = IMAGE_PATH / "simple_help.png"
|
|
if help_image.exists():
|
|
help_image.unlink()
|
|
if simple_help_image.exists():
|
|
simple_help_image.unlink()
|
|
group_help_path.mkdir(exist_ok=True, parents=True)
|
|
for x in os.listdir(group_help_path):
|
|
group_help_image = group_help_path / x
|
|
group_help_image.unlink()
|
|
|
|
_help = on_command("详细功能", rule=to_me(), aliases={"详细帮助"}, priority=1, block=True)
|
|
simple_help = on_command("功能", rule=to_me(), aliases={"help", "帮助"}, priority=1, block=True)
|
|
|
|
|
|
@_help.handle()
|
|
async def _(bot: Bot, event: MessageEvent, state: T_State):
|
|
if not help_image.exists():
|
|
if help_image.exists():
|
|
help_image.unlink()
|
|
if simple_help_image.exists():
|
|
simple_help_image.unlink()
|
|
await create_help_img(None, help_image, simple_help_image)
|
|
await _help.finish(image("help.png"))
|
|
|
|
|
|
@simple_help.handle()
|
|
async def _(bot: Bot, event: MessageEvent, arg: Message = CommandArg()):
|
|
msg = arg.extract_plain_text().strip()
|
|
is_super = False
|
|
if msg:
|
|
if '-super' in msg:
|
|
if str(event.user_id) in bot.config.superusers:
|
|
is_super = True
|
|
msg = msg.replace('-super', '').strip()
|
|
msg = get_plugin_help(msg, is_super)
|
|
if msg:
|
|
await _help.send(image(b64=msg))
|
|
else:
|
|
await _help.send("没有此功能的帮助信息...")
|
|
else:
|
|
if isinstance(event, GroupMessageEvent):
|
|
_image_path = group_help_path / f"{event.group_id}.png"
|
|
if not _image_path.exists():
|
|
await create_help_img(event.group_id, help_image, _image_path)
|
|
await simple_help.send(image(_image_path))
|
|
else:
|
|
if not simple_help_image.exists():
|
|
if help_image.exists():
|
|
help_image.unlink()
|
|
if simple_help_image.exists():
|
|
simple_help_image.unlink()
|
|
await create_help_img(None, help_image, simple_help_image)
|
|
await _help.finish(image("simple_help.png"))
|