Archived
1
0
Fork 0
This repository has been archived on 2024-04-26. You can view files and clone it, but cannot push or open issues or pull requests.
akari-bot/modules/mcplayer/__init__.py

37 lines
1.2 KiB
Python
Raw Normal View History

2023-02-05 14:33:33 +00:00
from core.builtins import Bot
from core.builtins import Plain, Image, Url
2023-03-04 08:51:56 +00:00
from core.component import module
2022-01-18 11:09:54 +00:00
from .mojang_api import *
2023-03-04 08:51:56 +00:00
mcplayer = module(
2022-01-18 11:09:54 +00:00
bind_prefix='mcplayer',
2023-04-15 06:06:42 +00:00
desc='{mcplayer.help.desc}',
2022-01-18 11:09:54 +00:00
developers=['Dianliang233'],
)
2023-04-15 06:06:42 +00:00
@mcplayer.handle('<username_or_uuid> {{mcplayer.help}}')
2023-06-04 13:03:24 +00:00
async def main(msg: Bot.MessageSession, username_or_uuid: str):
arg = username_or_uuid
2022-01-18 11:14:29 +00:00
try:
if len(arg) == 32:
name = await uuid_to_name(arg)
uuid = arg
elif len(arg) == 36 and arg.count('-') == 4:
uuid = arg.replace('-', '')
name = await uuid_to_name(arg)
else:
name = arg
uuid = await name_to_uuid(arg)
sac = await uuid_to_skin_and_cape(uuid)
2022-07-21 17:40:01 +00:00
render = sac['render']
2022-01-18 11:14:29 +00:00
skin = sac['skin']
cape = sac['cape']
namemc = 'https://namemc.com/profile/' + name
2022-07-21 17:40:01 +00:00
chain = [Plain(f'{name}{uuid}\nNameMC{Url(namemc)}'), Image(render), Image(skin)]
2022-05-14 12:32:29 +00:00
if cape:
chain.append(Image(cape))
2022-01-18 11:14:29 +00:00
except ValueError:
2023-03-17 17:42:23 +00:00
chain = [Plain(msg.locale.t('mcplayer.message.not_found', player=arg))]
2022-05-21 16:04:29 +00:00
await msg.finish(chain)