From fb15e0754afaa603983b75ffaadb12e8d4ad4ba5 Mon Sep 17 00:00:00 2001 From: CMHopeSunshine <277073121@qq.com> Date: Sun, 2 Oct 2022 20:01:42 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E4=BF=AE=E5=A4=8D`=E6=B7=B1=E6=B8=8A?= =?UTF-8?q?=E9=85=8D=E9=98=9F`=E7=9A=84=E6=97=85=E8=A1=8C=E8=80=85?= =?UTF-8?q?=E6=9C=AA=E6=8B=A5=E6=9C=89=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- LittlePaimon/plugins/Paimon_Abyss/youchuang/draw.py | 6 ++++-- LittlePaimon/plugins/Paimon_Info/__init__.py | 7 ++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/LittlePaimon/plugins/Paimon_Abyss/youchuang/draw.py b/LittlePaimon/plugins/Paimon_Abyss/youchuang/draw.py index edada7a..97eb3d4 100644 --- a/LittlePaimon/plugins/Paimon_Abyss/youchuang/draw.py +++ b/LittlePaimon/plugins/Paimon_Abyss/youchuang/draw.py @@ -13,8 +13,10 @@ from .models import TeamRate async def draw_team_line(up: TeamRate, down: TeamRate, characters: List[str]) -> PMImage: img = PMImage(size=(1013, 127), mode='RGBA', color=(0, 0, 0, 0)) + up.formation.sort(key=lambda x: x.star, reverse=True) + down.formation.sort(key=lambda x: x.star, reverse=True) for i, member in enumerate(up.formation): - owned = member.name in characters if characters else True + owned = (member.name in characters or member.name in {'荧', '空'}) if characters else True await img.paste(await load_image(RESOURCE_BASE_PATH / 'icon' / f'{member.star}starbox.png'), (110 * i, 0)) await img.paste( await load_image(RESOURCE_BASE_PATH / 'avatar' / f'{get_chara_icon(name=member.name)}.png', size=(100, 100)), @@ -25,7 +27,7 @@ async def draw_team_line(up: TeamRate, down: TeamRate, characters: List[str]) -> await img.paste(await load_image(RESOURCE_BASE_PATH / 'icon' / 'grey_box.png'), (110 * i, 0)) await img.text(f'{round(up.rate * 100, 2)}%', 439, 30, fm.get('bahnschrift_bold', 30), '#33231a') for i, member in enumerate(down.formation): - owned = member.name in characters if characters else True + owned = (member.name in characters or member.name in {'荧', '空'}) if characters else True await img.paste(await load_image(RESOURCE_BASE_PATH / 'icon' / f'{member.star}starbox.png'), (583 + 110 * i, 0)) await img.paste( await load_image(RESOURCE_BASE_PATH / 'avatar' / f'{get_chara_icon(name=member.name)}.png', size=(100, 100)), diff --git a/LittlePaimon/plugins/Paimon_Info/__init__.py b/LittlePaimon/plugins/Paimon_Info/__init__.py index 541b010..00ea49c 100644 --- a/LittlePaimon/plugins/Paimon_Info/__init__.py +++ b/LittlePaimon/plugins/Paimon_Info/__init__.py @@ -1,5 +1,6 @@ from nonebot import on_command from nonebot.adapters.onebot.v11 import Message, MessageEvent, MessageSegment +from nonebot.adapters.onebot.v11.helpers import HandleCancellation from nonebot.params import Arg, ArgPlainText, CommandArg from nonebot.plugin import PluginMetadata from nonebot.typing import T_State @@ -238,7 +239,7 @@ async def _(event: MessageEvent, state: T_State, msg: Message = CommandArg()): state['alias'] = Message(msg[1]) -@add_alias.got('alias', prompt=Message.template('你想把{chara}设置为你的谁呢?')) +@add_alias.got('alias', prompt=Message.template('你想把{chara}设置为你的谁呢?'), parameterless=[HandleCancellation(f'好吧,有事再找{NICKNAME}吧')]) async def _(event: MessageEvent, chara: str = ArgPlainText('chara'), alias: str = ArgPlainText('alias')): await PlayerAlias.update_or_create(user_id=str(event.user_id), alias=alias, defaults={'character': chara}) await add_alias.finish(f'设置成功,{NICKNAME}知道{chara}是你的{alias}啦..') @@ -254,7 +255,7 @@ async def _(event: MessageEvent, state: T_State, msg: Message = CommandArg()): await delete_alias.finish('你还没有设置任何别名哦') -@delete_alias.got('alias', prompt=Message.template('{msg}')) +@delete_alias.got('alias', prompt=Message.template('{msg}'), parameterless=[HandleCancellation(f'好吧,有事再找{NICKNAME}吧')]) async def _(event: MessageEvent, msg: str = ArgPlainText('alias')): if msg == '全部': await PlayerAlias.filter(user_id=str(event.user_id)).delete() @@ -263,7 +264,7 @@ async def _(event: MessageEvent, msg: str = ArgPlainText('alias')): await alias.delete() await delete_alias.finish(f'别名{msg}删除成功!', at_sender=True) else: - await delete_alias.reject(f'你并没有将{msg}设置为某个角色的别名', at_sender=True) + await delete_alias.reject(f'你并没有将{msg}设置为某个角色的别名,回复"取消"取消删除', at_sender=True) @show_alias.handle()