支持sr帮助 (#48)

This commit is contained in:
Wuyi无疑 2023-05-29 01:05:17 +08:00
parent 3d1922884d
commit 3600b1bcdb
9 changed files with 213 additions and 0 deletions

View File

@ -0,0 +1,155 @@
{
"基础服务": {
"desc": "需要先绑定uid",
"data": [
{
"name": "sr绑定uid",
"desc": "绑定你的星铁UID",
"eg": "sr绑定uid123456",
"need_ck": false,
"need_sk": false,
"need_admin": false
},
{
"name": "sr删除uid",
"desc": "删除你的星铁UID",
"eg": "sr删除uid123456",
"need_ck": false,
"need_sk": false,
"need_admin": false
},
{
"name": "sr切换uid",
"desc": "切换你的星铁UID",
"eg": "sr切换uid123456",
"need_ck": false,
"need_sk": false,
"need_admin": false
}
]
},
"查询服务": {
"desc": "查询一些基本信息",
"data": [
{
"name": "sruid",
"desc": "角色信息一览,后可跟UID",
"eg": "sruid100740568",
"need_ck": true,
"need_sk": false,
"need_admin": false
},
{
"name": "sr深渊",
"desc": "查询星铁深渊信息",
"eg": "sr深渊100740568",
"need_ck": true,
"need_sk": false,
"need_admin": false
},
{
"name": "srmr",
"desc": "查询自己的体力派遣",
"eg": "sr每日",
"need_ck": true,
"need_sk": false,
"need_admin": false
},
{
"name": "sr札记",
"desc": "查询自己的每月收入",
"eg": "srzj",
"need_ck": true,
"need_sk": false,
"need_admin": false
},
{
"name": "sr签到",
"desc": "米游社签到",
"eg": "sr签到",
"need_ck": true,
"need_sk": false,
"need_admin": false
},
{
"name": "sr抽卡记录",
"desc": "查询自己的抽卡记录",
"eg": "sr抽卡记录",
"need_ck": false,
"need_sk": false,
"need_admin": false
},
{
"name": "sr每月统计",
"desc": "srzj的文字版",
"eg": "sr每月统计",
"need_ck": true,
"need_sk": false,
"need_admin": false
},
{
"name": "sr当前状态",
"desc": "srmr的文字版",
"eg": "sr当前状态",
"need_ck": true,
"need_sk": false,
"need_admin": false
}
]
},
"面板服务": {
"desc": "数据源由Mihomo提供",
"data": [
{
"name": "sr强制刷新",
"desc": "刷新自己游戏内面板数据",
"eg": "sr强制刷新",
"need_ck": false,
"need_sk": false,
"need_admin": false
},
{
"name": "sr查询xx",
"desc": "查询游戏内面板数据",
"eg": "sr查询希儿",
"need_ck": false,
"need_sk": false,
"need_admin": false
}
]
},
"私人服务": {
"desc": "一些仅供私聊调用的服务",
"data": [
{
"name": "sr导入抽卡链接",
"desc": "后跟抽卡记录连接以导入",
"eg": "sr导入抽卡链接",
"need_ck": false,
"need_sk": false,
"need_admin": false
}
]
},
"管理员服务": {
"desc": "一些仅供管理员调用的服务",
"data": [
{
"name": "sr下载全部资源",
"desc": "下载一些机器人必须的资源",
"eg": "sr下载全部资源",
"need_ck": false,
"need_sk": false,
"need_admin": true
},
{
"name": "sr强制推送体力提醒",
"desc": "强制推送一次体力提醒",
"eg": "sr强制推送体力提醒",
"need_ck": false,
"need_sk": false,
"need_admin": true
}
]
}
}

View File

@ -0,0 +1,16 @@
from gsuid_core.sv import SV
from gsuid_core.bot import Bot
from gsuid_core.models import Event
from gsuid_core.logger import logger
from .get_help import get_core_help
from ..utils.sr_prefix import PREFIX
sv_sr_help = SV('sr帮助')
@sv_sr_help.on_fullmatch((f'{PREFIX}帮助'))
async def send_help_img(bot: Bot, ev: Event):
logger.info('开始执行[sr帮助]')
im = await get_core_help()
await bot.send(im)

View File

@ -0,0 +1,41 @@
from pathlib import Path
from typing import Dict, Union, Optional
import aiofiles
from PIL import Image
from msgspec import json as msgjson
from gsuid_core.help.model import PluginHelp
from gsuid_core.help.draw_plugin_help import get_help
from ..version import StarRail_version
from ..utils.fonts.starrail_fonts import starrail_font_origin
TEXT_PATH = Path(__file__).parent / 'texture2d'
HELP_DATA = Path(__file__).parent / 'Help.json'
async def get_help_data() -> Optional[Dict[str, PluginHelp]]:
if HELP_DATA.exists():
async with aiofiles.open(HELP_DATA, 'rb') as file:
return msgjson.decode(
await file.read(), type=Dict[str, PluginHelp]
)
async def get_core_help() -> Union[bytes, str]:
help_data = await get_help_data()
if help_data is None:
return '暂未找到帮助数据...'
img = await get_help(
'StarRailUID',
f'版本号:{StarRail_version}',
help_data,
Image.open(TEXT_PATH / 'bg.jpg'),
Image.open(TEXT_PATH / 'icon.png'),
Image.open(TEXT_PATH / 'badge.png'),
Image.open(TEXT_PATH / 'banner.png'),
Image.open(TEXT_PATH / 'button.png'),
starrail_font_origin,
)
return img

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

1
poetry.lock generated
View File

@ -373,6 +373,7 @@ files = [
{file = "libcst-0.4.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3e9d9fdd9a9b9b8991936ff1c07527ce7ef396c8233280ba9a7137e72c2e48e"},
{file = "libcst-0.4.10-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e1b4cbaf7b1cdad5fa3eababe42d5b46c0d52afe13c5ba4eac2495fc57630ea"},
{file = "libcst-0.4.10-cp39-cp39-win_amd64.whl", hash = "sha256:bcbd07cec3d7a7be6f0299b0c246e085e3d6cc8af367e2c96059183b97c2e2fe"},
{file = "libcst-0.4.10.tar.gz", hash = "sha256:b98a829d96e8b209fb761b00cd1bacc27c70eae77d00e57976e5ae2c718c3f81"},
]
[package.dependencies]