diff --git a/Paimon_Info/draw_daily_note.py b/Paimon_Info/draw_daily_note.py index 63b45db..4d44283 100644 --- a/Paimon_Info/draw_daily_note.py +++ b/Paimon_Info/draw_daily_note.py @@ -3,6 +3,7 @@ import datetime from io import BytesIO import os from PIL import Image, ImageDraw, ImageFont +import matplotlib.pyplot as plt from aiohttp import ClientSession from nonebot.adapters.onebot.v11 import MessageSegment from ..utils.util import pil2b64 @@ -10,25 +11,173 @@ from ..utils.util import pil2b64 res_path = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'res') -def get_font(size): - return ImageFont.truetype(os.path.join(res_path, 'msyhbd.ttc'), size) +# def get_font(size): +# return ImageFont.truetype(os.path.join(res_path, 'msyhbd.ttc'), size) +# +# +# def get_odd_time(seconds): +# m, s = divmod(int(seconds), 60) +# h, m = divmod(m, 60) +# return "剩余%02d时%02d分%02d秒" % (h, m, s) +# +# +# async def get_avater_pic(avater_url): +# async with ClientSession() as session: +# res = await session.get(avater_url) +# res = await res.read() +# avater = Image.open(BytesIO(res)).convert("RGBA").resize((60, 60)) +# return avater +# +# +# bg_card_color = {'1': '#C3B8A4', '2': '#C3B8A4', '3': '#4C74A7', '4': '#D7B599'} +# +# +# async def draw_daily_note_card(data, uid): +# if not data: +# return '数据出错' +# if data['retcode'] == 10102: +# return '这uid没有在米游社公开信息哦,请到 个人主页-管理 中打开' +# elif data['retcode'] == 10104: +# return 'uid有误哦,检查一下或再手动输入一次uid吧' +# elif data['retcode'] != 0: +# return f'派蒙获取数据失败了,获取状态:\n{data["message"]},{data["retcode"]}' +# data = data['data'] +# # 载入所需素材图标 +# bg_color = random.choice(list(bg_card_color.items())) +# bg_img = Image.open(os.path.join(res_path, 'daily_note', f'便签背景{bg_color[0]}.png')).convert("RGBA") +# enemy = Image.open(os.path.join(res_path, 'daily_note', '周本.png')).convert("RGBA") +# task = Image.open(os.path.join(res_path, 'daily_note', '委托.png')).convert("RGBA") +# power = Image.open(os.path.join(res_path, 'daily_note', '树脂.png')).convert("RGBA") +# money = Image.open(os.path.join(res_path, 'daily_note', '洞天宝钱.png')).convert("RGBA") +# send_icon = Image.open(os.path.join(res_path, 'daily_note', '派遣背景.png')).convert("RGBA").resize((110, 55)) +# send_finish_icon = Image.open(os.path.join(res_path, 'daily_note', '派遣完成.png')).convert("RGBA").resize((55, 55)) +# abyss = Image.open(os.path.join(res_path, 'daily_note', '深渊.png')).convert('RGBA').resize((160, 160)) +# tran = Image.open(os.path.join(res_path, 'daily_note', '参量.png')).convert('RGBA').resize((40, 40)) +# bg_draw = ImageDraw.Draw(bg_img) +# +# bg_draw.text((23, 20), '实时便笺', font=get_font(30), fill='white') +# bg_draw.text((255, 20), 'UID:' + uid, font=get_font(30), fill='white') +# # 树脂 +# bg_img.alpha_composite(power, (120, 150)) +# bg_draw.text((170, 145), f'{data["current_resin"]}/160', font=get_font(30), fill=bg_color[1]) +# if data["current_resin"] == 160: +# bg_draw.text((310, 144), '已回满', font=get_font(30), fill=bg_color[1]) +# else: +# recover_time = datetime.datetime.now() + datetime.timedelta(seconds=int(data['resin_recovery_time'])) +# # recover_time_day = recover_time.day > datetime.datetime.now().day and '明天' or '今天' +# recover_time_day = '今天' if recover_time.day == datetime.datetime.now().day else '明天' +# recover_time_str = f'将于{recover_time_day}{recover_time.strftime("%H:%M")}回满' +# bg_draw.text((320, 147), recover_time_str, font=get_font(25), fill=bg_color[1]) +# # 洞天宝钱 +# bg_img.alpha_composite(money, (120, 220)) +# bg_draw.text((170, 220), f'{data["current_home_coin"]}/2400', font=get_font(30), fill=bg_color[1]) +# if data["current_home_coin"] == 2400: +# bg_draw.text((350, 219), '已存满', font=get_font(30), fill=bg_color[1]) +# else: +# recover_time = datetime.datetime.now() + datetime.timedelta(seconds=int(data['home_coin_recovery_time'])) +# recover_time_day = recover_time.day - datetime.datetime.now().day +# if recover_time_day == 1: +# recover_time_day_str = '明天' +# elif recover_time_day == 0: +# recover_time_day_str = '今天' +# else: +# recover_time_day_str = str(recover_time.day) + '日' +# recover_time_str = f'将于{recover_time_day_str}{recover_time.strftime("%H:%M")}攒满' +# # recover_time_str = f'将于{recover_time.strftime("%d日%H:%M")}攒满' +# bg_draw.text((360, 222), recover_time_str, font=get_font(25), fill=bg_color[1]) +# # 委托 +# bg_img.alpha_composite(task, (120, 295)) +# bg_draw.text((170, 297), f'{data["finished_task_num"]}/4', font=get_font(30), fill=bg_color[1]) +# if data["finished_task_num"] == 4: +# bg_draw.text((247, 297), '已完成', font=get_font(30), fill=bg_color[1]) +# else: +# bg_draw.text((245, 298), '未完成', font=get_font(25), fill=bg_color[1]) +# # 周本 +# bg_img.alpha_composite(enemy, (120, 370)) +# bg_draw.text((170, 370), f'{data["remain_resin_discount_num"]}/3', font=get_font(30), fill=bg_color[1]) +# if data["remain_resin_discount_num"] == 0: +# bg_draw.text((247, 369), '已完成', font=get_font(30), fill=bg_color[1]) +# else: +# bg_draw.text((245, 372), '未完成', font=get_font(25), fill=bg_color[1]) +# # 参量质变仪 +# bg_img.alpha_composite(tran, (360, 297)) +# if not data['transformer']['obtained']: +# bg_draw.text((413, 298), '未获得', font=get_font(25), fill=bg_color[1]) +# else: +# if data['transformer']['recovery_time']['reached']: +# bg_draw.text((415, 297), '已可用', font=get_font(30), fill=bg_color[1]) +# else: +# bg_draw.text((413, 298), f"{data['transformer']['recovery_time']['Day']}天后", font=get_font(25), +# fill=bg_color[1]) +# # 深渊 +# abyss_new_month = datetime.datetime.now().month if datetime.datetime.now().day < 16 else datetime.datetime.now().month + 1 +# abyss_new_day = 16 if datetime.datetime.now().day < 16 else 1 +# abyss_new = datetime.datetime.strptime('2022.' + str(abyss_new_month) + '.' + str(abyss_new_day) + '.04:00', +# '%Y.%m.%d.%H:%M') - datetime.datetime.now() +# abyss_new_str = f'{abyss_new.days + 1}天后刷新' if abyss_new.days <= 8 else '已刷新' +# bg_img.alpha_composite(abyss, (520, 264)) +# bg_draw.text((568, 300), '深渊', font=get_font(30), fill=bg_color[1]) +# if abyss_new_str == '已刷新': +# bg_draw.text((561, 350), abyss_new_str, font=get_font(25), fill=bg_color[1]) +# else: +# bg_draw.text((540, 350), abyss_new_str, font=get_font(25), fill=bg_color[1]) +# # 派遣 +# h = 430 +# if not data['expeditions']: +# bg_draw.text((300, h + 140), '没有派遣信息', font=get_font(30), fill=bg_color[1]) +# else: +# for send in data['expeditions']: +# send_avatar = await get_avater_pic(send['avatar_side_icon']) +# send_status = '派遣已完成!' if send['status'] == 'Finished' else get_odd_time(send['remained_time']) +# bg_draw.rectangle((145, h, 645, h + 55), fill=None, outline=bg_color[1], width=3) +# if send['status'] == 'Finished': +# bg_img.alpha_composite(send_finish_icon, (590, h)) +# bg_img.alpha_composite(send_icon, (150, h)) +# bg_img.alpha_composite(send_avatar, (150, h - 10)) +# if send_status == '派遣已完成!': +# bg_draw.text((329, h + 10), send_status, font=get_font(25), fill=bg_color[1]) +# else: +# bg_draw.text((300, h + 10), send_status, font=get_font(25), fill=bg_color[1]) +# h += 57 +# last_finish_second = int(max([s['remained_time'] for s in data['expeditions']])) +# if last_finish_second != 0: +# last_finish_time = datetime.datetime.now() + datetime.timedelta(seconds=last_finish_second) +# last_finish_day = last_finish_time.day > datetime.datetime.now().day and '明天' or '今天' +# last_finish_str = f'将于{last_finish_day}{last_finish_time.strftime("%H:%M")}完成全部派遣' +# bg_draw.text((211, h + 3.5), last_finish_str, font=get_font(30), fill=bg_color[1]) +# else: +# bg_draw.text((290, h + 3.5), '派遣已全部完成', font=get_font(30), fill=bg_color[1]) +# bg_draw.text((274, 797), 'Created by 惜月の小派蒙', font=get_font(20), fill=bg_color[1]) +# +# bg_img = pil2b64(bg_img, 70) +# bg_img = MessageSegment.image(bg_img) +# return bg_img + +def get_font(size, font='msyhbd.ttc'): + return ImageFont.truetype(os.path.join(res_path, font), size) -def get_odd_time(seconds): - m, s = divmod(int(seconds), 60) - h, m = divmod(m, 60) - return "剩余%02d时%02d分%02d秒" % (h, m, s) - - -async def get_avater_pic(avater_url): +async def get_avatar_pic(avatar_url): async with ClientSession() as session: - res = await session.get(avater_url) + res = await session.get(avatar_url) res = await res.read() - avater = Image.open(BytesIO(res)).convert("RGBA").resize((60, 60)) - return avater + avatar = Image.open(BytesIO(res)).convert("RGBA").resize((135, 135)) + return avatar -bg_card_color = {'1': '#C3B8A4', '2': '#C3B8A4', '3': '#4C74A7', '4': '#D7B599'} +async def draw_ring(per): + per_list = [per, 1 - per] + colors = ['#507bd0', '#FFFFFF'] + plt.pie(per_list, startangle=90, colors=colors) + fig, ax = plt.subplots(figsize=(6, 6)) + ax.pie(per_list, + wedgeprops={'width': 0.18}, + startangle=90, + colors=colors) + plt.savefig('temp.png', transparent=True) + img = Image.open('temp.png').resize((266, 266)).convert('RGBA') + os.remove('temp.png') + return img async def draw_daily_note_card(data, uid): @@ -41,37 +190,27 @@ async def draw_daily_note_card(data, uid): elif data['retcode'] != 0: return f'派蒙获取数据失败了,获取状态:\n{data["message"]},{data["retcode"]}' data = data['data'] - # 载入所需素材图标 - bg_color = random.choice(list(bg_card_color.items())) - bg_img = Image.open(os.path.join(res_path, 'daily_note', f'便签背景{bg_color[0]}.png')).convert("RGBA") - enemy = Image.open(os.path.join(res_path, 'daily_note', '周本.png')).convert("RGBA") - task = Image.open(os.path.join(res_path, 'daily_note', '委托.png')).convert("RGBA") - power = Image.open(os.path.join(res_path, 'daily_note', '树脂.png')).convert("RGBA") - money = Image.open(os.path.join(res_path, 'daily_note', '洞天宝钱.png')).convert("RGBA") - send_icon = Image.open(os.path.join(res_path, 'daily_note', '派遣背景.png')).convert("RGBA").resize((110, 55)) - send_finish_icon = Image.open(os.path.join(res_path, 'daily_note', '派遣完成.png')).convert("RGBA").resize((55, 55)) - abyss = Image.open(os.path.join(res_path, 'daily_note', '深渊.png')).convert('RGBA').resize((160, 160)) - tran = Image.open(os.path.join(res_path, 'daily_note', '参量.png')).convert('RGBA').resize((40, 40)) + circle_img = Image.open(os.path.join(res_path, 'daily_note', '透明圆.png')) + finished_icon = Image.open(os.path.join(res_path, 'daily_note', 'finished.png')) + bg_img = Image.open(os.path.join(res_path, 'daily_note', 'ssbq.png')).convert("RGBA") bg_draw = ImageDraw.Draw(bg_img) - - bg_draw.text((23, 20), '实时便笺', font=get_font(30), fill='white') - bg_draw.text((255, 20), 'UID:' + uid, font=get_font(30), fill='white') - # 树脂 - bg_img.alpha_composite(power, (120, 150)) - bg_draw.text((170, 145), f'{data["current_resin"]}/160', font=get_font(30), fill=bg_color[1]) - if data["current_resin"] == 160: - bg_draw.text((310, 144), '已回满', font=get_font(30), fill=bg_color[1]) + # uid文字 + bg_draw.text((152, 251), f"uid{uid}", fill='#5680d2', font=get_font(60, 'number.ttf')) + # 树脂文字 + bg_draw.text((337, 480), f"{data['current_resin']}/160", fill='white', font=get_font(48, 'number.ttf')) + bg_img.alpha_composite(await draw_ring(data['current_resin'] / 160), (98, 369)) + if data['current_resin'] == 160: + bg_draw.text((892, 480), f"树脂满了哦~", fill='white', font=get_font(40, '优设标题黑.ttf')) else: recover_time = datetime.datetime.now() + datetime.timedelta(seconds=int(data['resin_recovery_time'])) - # recover_time_day = recover_time.day > datetime.datetime.now().day and '明天' or '今天' recover_time_day = '今天' if recover_time.day == datetime.datetime.now().day else '明天' recover_time_str = f'将于{recover_time_day}{recover_time.strftime("%H:%M")}回满' - bg_draw.text((320, 147), recover_time_str, font=get_font(25), fill=bg_color[1]) - # 洞天宝钱 - bg_img.alpha_composite(money, (120, 220)) - bg_draw.text((170, 220), f'{data["current_home_coin"]}/2400', font=get_font(30), fill=bg_color[1]) - if data["current_home_coin"] == 2400: - bg_draw.text((350, 219), '已存满', font=get_font(30), fill=bg_color[1]) + bg_draw.text((780, 480), recover_time_str, fill='white', font=get_font(40, '优设标题黑.ttf')) + # 宝钱文字 + bg_draw.text((337, 701), f"{data['current_home_coin']}/2400", fill='white', font=get_font(48, 'number.ttf')) + bg_img.alpha_composite(await draw_ring(data['current_home_coin'] / 2400), (98, 593)) + if data['current_home_coin'] == 2400: + bg_draw.text((820, 701), f"洞天宝钱满了哦~", fill='white', font=get_font(40, '优设标题黑.ttf')) else: recover_time = datetime.datetime.now() + datetime.timedelta(seconds=int(data['home_coin_recovery_time'])) recover_time_day = recover_time.day - datetime.datetime.now().day @@ -82,72 +221,82 @@ async def draw_daily_note_card(data, uid): else: recover_time_day_str = str(recover_time.day) + '日' recover_time_str = f'将于{recover_time_day_str}{recover_time.strftime("%H:%M")}攒满' - # recover_time_str = f'将于{recover_time.strftime("%d日%H:%M")}攒满' - bg_draw.text((360, 222), recover_time_str, font=get_font(25), fill=bg_color[1]) - # 委托 - bg_img.alpha_composite(task, (120, 295)) - bg_draw.text((170, 297), f'{data["finished_task_num"]}/4', font=get_font(30), fill=bg_color[1]) - if data["finished_task_num"] == 4: - bg_draw.text((247, 297), '已完成', font=get_font(30), fill=bg_color[1]) + bg_draw.text((762, 701), recover_time_str, fill='white', font=get_font(40, '优设标题黑.ttf')) + # 委托文字 + bg_draw.text((337, 924), f"{data['finished_task_num']}/4", fill='white', font=get_font(48, 'number.ttf')) + bg_img.alpha_composite(await draw_ring(data['finished_task_num'] / 4), (98, 816)) + if data['finished_task_num'] == 4: + bg_draw.text((750, 924), "今日委托已全部完成~", fill='white', font=get_font(40, '优设标题黑.ttf')) else: - bg_draw.text((245, 298), '未完成', font=get_font(25), fill=bg_color[1]) - # 周本 - bg_img.alpha_composite(enemy, (120, 370)) - bg_draw.text((170, 370), f'{data["remain_resin_discount_num"]}/3', font=get_font(30), fill=bg_color[1]) - if data["remain_resin_discount_num"] == 0: - bg_draw.text((247, 369), '已完成', font=get_font(30), fill=bg_color[1]) - else: - bg_draw.text((245, 372), '未完成', font=get_font(25), fill=bg_color[1]) - # 参量质变仪 - bg_img.alpha_composite(tran, (360, 297)) - if not data['transformer']['obtained']: - bg_draw.text((413, 298), '未获得', font=get_font(25), fill=bg_color[1]) - else: - if data['transformer']['recovery_time']['reached']: - bg_draw.text((415, 297), '已可用', font=get_font(30), fill=bg_color[1]) + bg_draw.text((790, 924), "今日委托完成情况", fill='white', font=get_font(40, '优设标题黑.ttf')) + # 质变文字 + if data['transformer']['obtained']: + bg_draw.text((337, 1147), f"{7 - data['transformer']['recovery_time']['Day']}/7", fill='white', + font=get_font(48, 'number.ttf')) + bg_img.alpha_composite(await draw_ring((7 - data['transformer']['recovery_time']['Day']) / 7), (98, 1039)) + if data['transformer']['recovery_time']['Day'] == 0: + bg_draw.text((465, 1147), "可使用", fill='white', font=get_font(40, '优设标题黑.ttf')) else: - bg_draw.text((413, 298), f"{data['transformer']['recovery_time']['Day']}天后", font=get_font(25), - fill=bg_color[1]) - # 深渊 + bg_draw.text((471, 1127), f"{data['transformer']['recovery_time']['Day']}天后", fill='white', + font=get_font(40, '优设标题黑.ttf')) + bg_draw.text((465, 1167), "可使用", fill='white', font=get_font(40, '优设标题黑.ttf')) + else: + bg_draw.text((337, 1143), "未获得", fill='white', font=get_font(48, '优设标题黑.ttf')) + # 周本文字 + bg_draw.text((843, 1147), f"{3 - data['remain_resin_discount_num']}/3", fill='white', + font=get_font(48, 'number.ttf')) + bg_img.alpha_composite(await draw_ring((3 - data['remain_resin_discount_num']) / 3), (604, 1039)) + if data['remain_resin_discount_num'] == 0: + bg_draw.text((1005, 1147), "已完成", fill='white', font=get_font(40, '优设标题黑.ttf')) + else: + bg_draw.text((977, 1127), f"剩余{data['remain_resin_discount_num']}次", fill='white', + font=get_font(40, '优设标题黑.ttf')) + bg_draw.text((965, 1167), "周本减半", fill='white', font=get_font(40, '优设标题黑.ttf')) + # 深渊文字 abyss_new_month = datetime.datetime.now().month if datetime.datetime.now().day < 16 else datetime.datetime.now().month + 1 abyss_new_day = 16 if datetime.datetime.now().day < 16 else 1 abyss_new = datetime.datetime.strptime('2022.' + str(abyss_new_month) + '.' + str(abyss_new_day) + '.04:00', '%Y.%m.%d.%H:%M') - datetime.datetime.now() - abyss_new_str = f'{abyss_new.days + 1}天后刷新' if abyss_new.days <= 8 else '已刷新' - bg_img.alpha_composite(abyss, (520, 264)) - bg_draw.text((568, 300), '深渊', font=get_font(30), fill=bg_color[1]) - if abyss_new_str == '已刷新': - bg_draw.text((561, 350), abyss_new_str, font=get_font(25), fill=bg_color[1]) - else: - bg_draw.text((540, 350), abyss_new_str, font=get_font(25), fill=bg_color[1]) - # 派遣 - h = 430 - if not data['expeditions']: - bg_draw.text((300, h + 140), '没有派遣信息', font=get_font(30), fill=bg_color[1]) - else: - for send in data['expeditions']: - send_avatar = await get_avater_pic(send['avatar_side_icon']) - send_status = '派遣已完成!' if send['status'] == 'Finished' else get_odd_time(send['remained_time']) - bg_draw.rectangle((145, h, 645, h + 55), fill=None, outline=bg_color[1], width=3) - if send['status'] == 'Finished': - bg_img.alpha_composite(send_finish_icon, (590, h)) - bg_img.alpha_composite(send_icon, (150, h)) - bg_img.alpha_composite(send_avatar, (150, h - 10)) - if send_status == '派遣已完成!': - bg_draw.text((329, h + 10), send_status, font=get_font(25), fill=bg_color[1]) - else: - bg_draw.text((300, h + 10), send_status, font=get_font(25), fill=bg_color[1]) - h += 57 - last_finish_second = int(max([s['remained_time'] for s in data['expeditions']])) - if last_finish_second != 0: - last_finish_time = datetime.datetime.now() + datetime.timedelta(seconds=last_finish_second) - last_finish_day = last_finish_time.day > datetime.datetime.now().day and '明天' or '今天' - last_finish_str = f'将于{last_finish_day}{last_finish_time.strftime("%H:%M")}完成全部派遣' - bg_draw.text((211, h + 3.5), last_finish_str, font=get_font(30), fill=bg_color[1]) - else: - bg_draw.text((290, h + 3.5), '派遣已全部完成', font=get_font(30), fill=bg_color[1]) - bg_draw.text((274, 797), 'Created by 惜月の小派蒙', font=get_font(20), fill=bg_color[1]) + bg_draw.text((337, 1358), f"{abyss_new.days}/15", fill='white', + font=get_font(48, 'number.ttf')) + bg_draw.text((745, 1358), f"本期深渊还有{abyss_new.days}天结束", fill='white', + font=get_font(40, '优设标题黑.ttf')) + bg_img.alpha_composite(await draw_ring(abyss_new.days / 15), (100, 1249)) - bg_img = pil2b64(bg_img, 70) + # 派遣情况 + exp = data['expeditions'] + i = 0 + for role in exp: + role_avatar = await get_avatar_pic(role['avatar_side_icon']) + bg_img.alpha_composite(role_avatar, (i * 200 + 168, 1537)) + bg_img.alpha_composite(await draw_ring(1 - int(role['remained_time']) / 72000), (i * 201 + 101, 1490)) + if role['status'] == 'Ongoing': + bg_img.alpha_composite(circle_img, (i * 200 + 172, 1559)) + hour = int(role['remained_time']) // 3600 + bg_draw.text((i * 200 + 205, 1580), f"{hour}h", fill='white', font=get_font(40, 'number.ttf')) + minute = int(role['remained_time']) % 3600 // 60 + bg_draw.text((i * 200 + 200, 1620), f"{minute}m", fill='white', font=get_font(40, 'number.ttf')) + else: + bg_img.alpha_composite(finished_icon, (i * 200 + 191, 1576)) + i += 1 + + bg_draw.text((1210, 1580), "距离派遣全", fill="#5680d2", font=get_font(40, '优设标题黑.ttf')) + bg_draw.text((1210, 1620), "部完成还有", fill="#5680d2", font=get_font(40, '优设标题黑.ttf')) + max_time = int(max(exp, key=lambda x: x['remained_time'])['remained_time']) + if max_time == 0: + bg_draw.text((1410, 1583), "已全部完成~", fill="#5680d2", + font=get_font(60, '优设标题黑.ttf')) + else: + bg_draw.text((1410, 1593), f"{max_time // 3600}h{max_time % 3600 // 60}m{max_time & 60}s", fill="#5680d2", + font=get_font(60, 'number.ttf')) + + role_img = random.choice(os.listdir(os.path.join(res_path, 'emoticons'))) + role_img = Image.open(os.path.join(res_path, 'emoticons', role_img)).convert('RGBA') + role_img = role_img.resize((int(role_img.size[0] * 3.5), int(role_img.size[1] * 3.5)), Image.ANTIALIAS) + bg_img.alpha_composite(role_img, (1220, 200)) + now = datetime.datetime.now().strftime('%m月%d日%H:%M') + bg_draw.text((554, 1794), 'Created by LittlePaimon·' + now, fill='#5680d2', font=get_font(40, '优设标题黑.ttf')) + bg_img = bg_img.resize((int(bg_img.size[0] * 0.4), int(bg_img.size[1] * 0.4)), Image.ANTIALIAS) + bg_img = pil2b64(bg_img) bg_img = MessageSegment.image(bg_img) return bg_img diff --git a/Paimon_Plugins/__init__.py b/Paimon_Plugins/__init__.py index f7cada9..93b2882 100644 --- a/Paimon_Plugins/__init__.py +++ b/Paimon_Plugins/__init__.py @@ -13,10 +13,10 @@ import random superuser = int(list(get_driver().config.superusers)[0]) -duilian = on_command('对联', aliases={'对对联'}, priority=15, block=True) -cat_pic = on_command('猫图', aliases={'来点猫片', '看看猫猫', '来个猫猫'}, priority=15, block=True) -ecy_pic = on_regex(r'^来点(二次元|二刺螈|银发|兽耳|星空|竖屏|横屏)图?$', priority=15, block=True) -ys_pic = on_command('原神壁纸', aliases={'来点原神图', '来点原神壁纸'}, priority=15, block=True) +duilian = on_command('对联', aliases={'对对联'}, priority=13, block=True) +cat_pic = on_command('猫图', aliases={'来点猫片', '看看猫猫', '来个猫猫'}, priority=13, block=True) +ecy_pic = on_regex(r'^来点(二次元|二刺螈|银发|兽耳|星空|竖屏|横屏)图?$', priority=13, block=True) +ys_pic = on_command('原神壁纸', aliases={'来点原神图', '来点原神壁纸'}, priority=13, block=True) duilian_limit = FreqLimiter(config.paimon_duilian_cd) cat_lmt = FreqLimiter(config.paimon_cat_cd) diff --git a/res/daily_note/finished.png b/res/daily_note/finished.png new file mode 100644 index 0000000..60695d3 Binary files /dev/null and b/res/daily_note/finished.png differ diff --git a/res/daily_note/ssbq.png b/res/daily_note/ssbq.png new file mode 100644 index 0000000..a9a13ea Binary files /dev/null and b/res/daily_note/ssbq.png differ diff --git a/res/daily_note/透明圆.png b/res/daily_note/透明圆.png new file mode 100644 index 0000000..80e6f24 Binary files /dev/null and b/res/daily_note/透明圆.png differ diff --git a/res/emoticons/config.json b/res/emoticons/config.json deleted file mode 100644 index 1def20f..0000000 --- a/res/emoticons/config.json +++ /dev/null @@ -1,886 +0,0 @@ -[ - { - "filename": "七七-倒.png", - "quote": "咦,刚刚…我想说什么来着…" - }, - { - "filename": "七七-品尝.png", - "quote": "尝不出,味道。但是,喜欢。" - }, - { - "filename": "七七-哦.png", - "quote": "" - }, - { - "filename": "七七-暗中观察.png", - "quote": "" - }, - { - "filename": "丽莎-干得漂亮.png", - "quote": "你努力的样子,姐姐全都见到了哦。嗯…让我想想,给你什么奖励吧…" - }, - { - "filename": "九条裟罗-冲锋.png", - "quote": "常道恢弘,鸣神永恒!" - }, - { - "filename": "九条裟罗-别想逃.png", - "quote": "我一个人,就是一支幕府军!" - }, - { - "filename": "九条裟罗-开心.png", - "quote": "知道稻妻最具代表性的特产是什么吗?不对,并非刀具。是「御建鸣神主尊大御所大人像」造型的漆器,由老练的漆器师傅手工打造,城内几乎每家每户都供奉着一座。我的屋里?有五座。" - }, - { - "filename": "九条裟罗-拒绝.png", - "quote": "上次执行任务时,花见坂的商户送给我一个名为「独乐」的陀螺,那是种「一个人也能玩」的玩具,我觉得挺有意思,就留在了身边。你说…一起玩?那岂不是违背了「独乐」的原则,请容我拒绝。" - }, - { - "filename": "五郎-呲牙.png", - "quote": "旅行者已经加入了反抗军,现在是我的部下,反抗军不会出卖任何一名同伴!" - }, - { - "filename": "五郎-开心.png", - "quote": "有什么烦恼,千万不要埋在心里,来和我说说吧。虽然我不是什么事情都在行,但我一定会尽力为你出谋划策的。就算…就算答案不够可靠,至少我也是你忠实的听众!" - }, - { - "filename": "五郎-星星眼.png", - "quote": "啊——甜品果然能让人心情放松!" - }, - { - "filename": "五郎-痛哭.png", - "quote": "大部分食物我都不忌口,可洋葱是个例外。有一次,后勤兵往饭菜里加了洋葱末,让我在饭桌上痛哭流涕…啊,那次实在太丢人了!弄得后勤兵也很过意不去。" - }, - { - "filename": "优菈-出发.png", - "quote": "游击骑士,率先行动!" - }, - { - "filename": "优菈-嫌弃.png", - "quote": "浓郁的汤品,我实在不能接受。口感太厚重,饱腹感很强,影响运动和战斗,还不方便携带,简直是我的天敌。" - }, - { - "filename": "优菈-干杯.png", - "quote": "凉爽的事,我都很中意。比如,痛饮冰镇后的酒和饮料,或者跳进龙脊雪山山脚的湖里泡澡。哈,没准哪天你在湖边晃荡,会被我拖进冰水里哦?" - }, - { - "filename": "优菈-开饭了.png", - "quote": "我喜欢亲手做点心,点心不一定都是甜品,比如冰镇后的番茄肉冻蛋卷,就很适合搭配冰树莓薄荷酒。重要的是,有些人吃到我做的点心,就会笑得很开心。" - }, - { - "filename": "优菈-打喷嚏.png", - "quote": "估计是古恩希尔德家的女儿又在背后嚼舌根了吧,…这个仇我也记下了!" - }, - { - "filename": "优菈-落雪.png", - "quote": "" - }, - { - "filename": "优菈-让我看看.png", - "quote": "视野不错!登上高地,就能将周围的敌情尽收眼底。" - }, - { - "filename": "优菈-赞扬.png", - "quote": "" - }, - { - "filename": "优菈-远眺.png", - "quote": "" - }, - { - "filename": "优菈-邀请.png", - "quote": "那就…与罪人共舞一曲,如何?" - }, - { - "filename": "凯亚-你真幽默.png", - "quote": "什么?你说菲谢尔遮起一只眼睛的神秘样子,的确很符合「断罪皇女」的形象?哈哈哈,按照这个规律,我至少也得是个末代皇族后裔,对吧?" - }, - { - "filename": "刻晴-夜宵.png", - "quote": "" - }, - { - "filename": "刻晴-我拒绝.png", - "quote": "每种菜肴都有最理想的味道,我不能接受除此以外的做法,尝试都不行。比如,咸味的杏仁豆腐,甜味的莲子禽蛋羹什么的…都是在暴殄天物!" - }, - { - "filename": "刻晴-晚安.png", - "quote": "" - }, - { - "filename": "刻晴-点赞.png", - "quote": "我很欣赏你,面对神明,不笃信,不盲从,随时保持独立思考,有问题就大胆问出来,没有答案就会一直追寻下去。别不好意思,这才是正确的态度,毕竟,谁又能保证,神就不会犯错呢?" - }, - { - "filename": "刻晴-疑问.png", - "quote": "帝君离去之后,我一直都在思考,璃月港的未来该怎么走。除了参考帝君以前的行动,我还去研究了其他神明的治世手段。可是,邻国蒙德就让我很是困惑…像风之神这种做法,真的能让蒙德长久吗?" - }, - { - "filename": "刻晴-祝贺.png", - "quote": "心有所向,日复一日,必有精进。" - }, - { - "filename": "刻晴-赌气.png", - "quote": "话虽这么说!明星斋的「琉璃新月」,我提前三个月就预定了!结果去取货的时候才知道,凝光她用两倍的价钱,把这几个月里所有的「琉璃新月」都买走了!果然我还是受不了她!" - }, - { - "filename": "北斗-大笑.png", - "quote": "航海准备,兄弟们,各就各位,全新的冒险要开始了!" - }, - { - "filename": "北斗-拜拜.png", - "quote": "追随我的兄弟有很多,我问过,我也记得他们每一个人上船的理由。你是很特别的。我知道你还有需要完成的事情,我不会授予你职务和头衔。但无论你的旅途去往何方,「死兆星」号上,永远都有你的位置。" - }, - { - "filename": "可莉-呜….png", - "quote": "可莉这就去禁闭室报到…呜呜…" - }, - { - "filename": "可莉-好耶.png", - "quote": "好耶!可莉喜欢聊天。" - }, - { - "filename": "可莉-委屈.png", - "quote": "等我这次的禁闭结束、好好反省过以后,再来找你带我出去玩…" - }, - { - "filename": "可莉-抓到了!.png", - "quote": "可莉今天又勇敢地抓到了花纹奇怪的蜥蜴!从没见过这种图案,你要看看吗?" - }, - { - "filename": "可莉-求求你.png", - "quote": "求求你啦!求求你啦求求你啦——帮帮可莉吧!" - }, - { - "filename": "可莉-生气气!.png", - "quote": "嘟嘟可是可莉最好的朋友,不是玩偶!" - }, - { - "filename": "可莉-陪我玩.png", - "quote": "嘟嘟大魔王,可莉来见你啦!你可以…呃…判、判…嗯?" - }, - { - "filename": "安柏-不要啊.png", - "quote": "" - }, - { - "filename": "安柏-救救我.png", - "quote": "" - }, - { - "filename": "安柏-给我走开.png", - "quote": "" - }, - { - "filename": "宵宫-喂.png", - "quote": "风好大啊——声音都被吹回来啦——!" - }, - { - "filename": "宵宫-得意.png", - "quote": "现在是最适合测试烟花效果的时间,无论是在天上还是地上炸开都会很好看。嘿嘿,开玩笑的,我会注意安全啦。" - }, - { - "filename": "宵宫-抱歉.png", - "quote": "" - }, - { - "filename": "宵宫-没问题.png", - "quote": "「『英雄形态』的宵宫姐姐登场!邪恶退散!正义必胜!」" - }, - { - "filename": "式大将-思考.png", - "quote": "自从诞生于世,我们便开始向着孤独的尽头行走,但迷雾之中会有火光,夜空之下会有新的伙伴…我们的使命,从不因远行而告终。" - }, - { - "filename": "式大将-躺.png", - "quote": "对于我和「诀箓阴阳寮」,晴之介有着美好的祝愿。非要说的话,可能是我们都有些生不逢时吧。" - }, - { - "filename": "影狼丸-威风.png", - "quote": "" - }, - { - "filename": "影狼丸-注视.png", - "quote": "" - }, - { - "filename": "托马-举高高.png", - "quote": "你喜欢小动物吗?要是你也喜欢的话,下次我带你去城郊附近走走。到时候我一声口哨,好多可爱的小猫小狗就会钻出来,黏在你的脚边向你撒娇。哈哈,光是想象就觉得很开心了。" - }, - { - "filename": "托马-害怕.png", - "quote": "神子大人?为、为什么突然提她?唉,每次小姐派我出去送口信,我最不想去的就是鸣神大社了。啊,倒不是神子大人的气场让人发慌,而是,呃…是敬畏…敬畏!啊哈哈…" - }, - { - "filename": "托马-拜托了.png", - "quote": "要不是你在「狩眼仪式」上站出来,单枪匹马与将军对抗,我应该已经失去神之眼,失去愿望了。我想了很久,恐怕只有这样才配得上你挺身而出的觉悟——我,托马,愿献上我的武艺与忠诚。不惜一切,为你而战。" - }, - { - "filename": "托马-瞧好了.png", - "quote": "把居住的地方打扫干净,布置整齐,让所有生活在这里的人露出笑容,这就是家政的意义。至于现在…我会连带着为了你的份一起,好好努力的。" - }, - { - "filename": "托马-胃痛.png", - "quote": "肚子好痛!胃里…好像在放烟花一样!…我感觉眼前已经出现人生走马灯了,再见了,大家…" - }, - { - "filename": "托马-超赞.png", - "quote": "要说我最喜欢的食物,那绝对是市井杂煮了。煮好香喷喷的一大锅,然后大家一起分着吃,又热闹又开心。" - }, - { - "filename": "早柚-困.png", - "quote": "呼——如果没有什么事情的话,我先去睡觉了。对了,不准趁我睡觉的时候偷偷摸我的头。" - }, - { - "filename": "早柚-生气.png", - "quote": "怎么会有荒泷一斗这么吵吵嚷嚷的人,而且他还能长这么高!" - }, - { - "filename": "早柚-看我的.png", - "quote": "" - }, - { - "filename": "早柚-警觉.png", - "quote": "" - }, - { - "filename": "枫原万叶-偷笑.png", - "quote": "" - }, - { - "filename": "枫原万叶-吃惊.png", - "quote": "想要了解我的事?如你所见,我只是个随处可见的流浪武士。" - }, - { - "filename": "枫原万叶-嗨.png", - "quote": "「飘摇风雨中,带刀归来赤脚行」…我的名字是枫原万叶,游历四方的浪人。既然你我都在旅行的路上,这段路不妨结伴同行。" - }, - { - "filename": "枫原万叶-汗.png", - "quote": "" - }, - { - "filename": "派蒙-交给我吧.png", - "quote": "" - }, - { - "filename": "派蒙-出货吧.png", - "quote": "收获的果实,来和派蒙一起分享吧!" - }, - { - "filename": "派蒙-吃惊.png", - "quote": "" - }, - { - "filename": "派蒙-咕咕咕.png", - "quote": "" - }, - { - "filename": "派蒙-哭.png", - "quote": "" - }, - { - "filename": "派蒙-哼哼.png", - "quote": "" - }, - { - "filename": "派蒙-大哭.png", - "quote": "" - }, - { - "filename": "派蒙-好耶.png", - "quote": "" - }, - { - "filename": "派蒙-安详.png", - "quote": "" - }, - { - "filename": "派蒙-小事一桩.png", - "quote": "" - }, - { - "filename": "派蒙-干杯.png", - "quote": "" - }, - { - "filename": "派蒙-微笑.png", - "quote": "" - }, - { - "filename": "派蒙-怎会如此.png", - "quote": "" - }, - { - "filename": "派蒙-愤怒.png", - "quote": "" - }, - { - "filename": "派蒙-星星眼.png", - "quote": "" - }, - { - "filename": "派蒙-期待.png", - "quote": "" - }, - { - "filename": "派蒙-该吃饭了.png", - "quote": "" - }, - { - "filename": "派蒙-问号.png", - "quote": "" - }, - { - "filename": "派蒙-馋.png", - "quote": "" - }, - { - "filename": "派蒙-黑线.png", - "quote": "" - }, - { - "filename": "温迪-吃惊.png", - "quote": "这么说吧,占卜和我的诗歌一样,都是让人穷到酒钱都凑不齐的没用技术呢!欸?你说占星至少是一项文化传统,所以不是没用的?呜,真失礼啊,那诗歌也一样有用啊!" - }, - { - "filename": "温迪-撒花.png", - "quote": "" - }, - { - "filename": "温迪-有主意了.png", - "quote": "" - }, - { - "filename": "温迪-期待.png", - "quote": "" - }, - { - "filename": "温迪-鼓掌.png", - "quote": "" - }, - { - "filename": "烟绯-得意.png", - "quote": "我叫烟绯,是璃月港最顶尖的律法专家,没有之一!商业纠纷、民事调解、刑事诉讼,样样精通,一出手就搞得定!我的联系方式…要给你记在哪里好呢?唔…记在纸上容易丢,记在手上容易糊掉…哦!有了,就写在你旁边这个小家伙的衣服上吧。" - }, - { - "filename": "烟绯-无奈.png", - "quote": "你知道「天权星」凝光小姐吧?她主管律法,也经常修正法典,每次增补删改的内容都多得要命。就在上次,全新的法典里又增加了三条律法,修改了一百二十一条律法注释,还新附了一堆典型判例,这次我又不知道要背到什么时候了…" - }, - { - "filename": "烟绯-没问题.png", - "quote": "你四处游历,要是怕遇到麻烦处理起来棘手,最好的办法就是跟知法懂法之人同行。而我烟绯擅长的,也不止璃月本国的律法。呃,虽然,枫丹那边的还挺复杂…但靠我这个聪明的脑袋,要熟记也不是什么难事!总…总之!我是绝对值得依靠的!" - }, - { - "filename": "烟绯-睡不着.png", - "quote": "嗯?《璃月商典》第二十七章第六条第三款是什么来着…我怎么会忘记?不应当不应当…" - }, - { - "filename": "珊瑚宫心海-好累.png", - "quote": "其实很早以前,我并不想成为现人神巫女,只想每天读读兵书,做一个幕僚。这样就可以把自己隐藏在幕后,身上的担子也会减轻不少。不过最后还是事与愿违,毕竟血脉这种东西,是没办法违抗的…" - }, - { - "filename": "珊瑚宫心海-悠闲.png", - "quote": "八重堂出版的刊物中,我尤其喜欢这本《提瓦特战争艺术》。你看,上面记录了许多经典战役,以及兵法名家对此的解析。其中有几篇我特别欣赏,让我来念给你听…" - }, - { - "filename": "珊瑚宫心海-摸鱼.png", - "quote": "每个生灵的意志都值得尊重,就像海中的游鱼,也有自己的方向。" - }, - { - "filename": "珊瑚宫心海-祈祷.png", - "quote": "天色真好,一起走走吧?" - }, - { - "filename": "琴-唔.png", - "quote": "慰劳…派对?唔…大家…我、我只是很感动而已…" - }, - { - "filename": "琴-沉思.png", - "quote": "「狮牙骑士」,代表温妮莎为蒙德而斗争的过去;而建立西风骑士团之后的「蒲公英骑士」,代表她所期望的,骑士团的未来…比起「狮牙骑士」,果然还是「蒲公英骑士」更适合我。" - }, - { - "filename": "琴-生气.png", - "quote": "可莉!你应该知道后果吧?" - }, - { - "filename": "琴-苦笑.png", - "quote": "虽说玩乐是孩子的天性,但可莉中意的玩具却都是些危险品。让人难以放心。" - }, - { - "filename": "琴-赞扬.png", - "quote": "听凭风引。自由之风会指引前进的路,今后也请与我们同行吧,旅行者。" - }, - { - "filename": "甘雨-不要摸.png", - "quote": "请…请不要碰我的角…" - }, - { - "filename": "甘雨-懊恼.png", - "quote": "「想要了解更多甘雨的事情」…这,这是什么工作要求啊。我,我还从来没有处理过这样的…去年年底述职报告的背诵可以吗?啊,不行啊。" - }, - { - "filename": "甘雨-打瞌睡.png", - "quote": "安逸的氛围…喜欢。" - }, - { - "filename": "甘雨-挺好的.png", - "quote": "爱好吗,爱好的话…工作吧。嗯?工作不能算?但是,为什么呢?难道爱好不是指自己想要去做,做了就会感到开心的事情吗。那么爱好是工作,又有什么问题呢?" - }, - { - "filename": "甘雨-早安.png", - "quote": "早上好…唔?是哪里没有梳理好吗,请不要盯着我的…盯着我的头饰看。" - }, - { - "filename": "甘雨-祈祷.png", - "quote": "我想和你一起种花。或者是…别的植物,比如蔬菜…一起种,一起吃…" - }, - { - "filename": "砂糖-ok.png", - "quote": "" - }, - { - "filename": "砂糖-乖巧.png", - "quote": "我对你的经历,特别好奇,所以…我可以「观察」你一段时间吗?我会很安静的,不会打扰你,这样…你会介意吗?" - }, - { - "filename": "砂糖-加油.png", - "quote": "" - }, - { - "filename": "砂糖-委屈巴巴.png", - "quote": "我有点不敢和琴团长说话,因为她太严肃了…我知道她是个很好的人,但、但知道归知道,害怕…还是会害怕。我一般都不会去打扰她,实在有不得不找她的事,我…我也会拜托阿贝多先生。" - }, - { - "filename": "砂糖-疑问.png", - "quote": "" - }, - { - "filename": "砂糖-纪录.png", - "quote": "趁现在,赶快整理一下研究笔记…" - }, - { - "filename": "神里绫华-偷笑.png", - "quote": "这就是旅行者平日里的生活么,呵,感觉又多了解了你一些。" - }, - { - "filename": "神里绫华-喝茶.png", - "quote": "试问,常说「禅茶一味」,又说「剑禅一如」,那么剑和茶,又是什么关系呢?" - }, - { - "filename": "神里绫华-早安.png", - "quote": "早安,旅行者。能像这样在清晨见你一面,我会忍不住觉得…接下来将是顺利的一天。" - }, - { - "filename": "神里绫华-行礼.png", - "quote": "多亏你的点拨。有你相助,我对自己的能力也理解得更透彻了。" - }, - { - "filename": "空-睡着了.png", - "quote": "" - }, - { - "filename": "空-警觉.png", - "quote": "" - }, - { - "filename": "罗莎莉亚-下班.png", - "quote": "" - }, - { - "filename": "罗莎莉亚-凝视.png", - "quote": "" - }, - { - "filename": "罗莎莉亚-嫌弃.png", - "quote": "" - }, - { - "filename": "罗莎莉亚-汗.png", - "quote": "" - }, - { - "filename": "胡桃-不好意思.png", - "quote": "" - }, - { - "filename": "胡桃-交给我吧.png", - "quote": "需要帮手吗?需要帮手吗?我来啦!若你需要帮助,胡桃我定当全力以赴,绝不推辞。" - }, - { - "filename": "胡桃-卖萌.png", - "quote": "不如去我那儿喝杯茶?嘿~" - }, - { - "filename": "胡桃-变戏法.png", - "quote": "变个戏法给你看,瞧好了哦…火!然后…嚯!火蝴蝶!呼,飞啦——哈哈。" - }, - { - "filename": "胡桃-吃惊.png", - "quote": "「玉衡」刻晴啊,嘶…是个很难打交道的人呢。嘿嘿,瞧那一本正经的样子,真想逗逗她。哎呦,她应该不会用剑敲我头吧?不会的吧?" - }, - { - "filename": "胡桃-吓你一跳.png", - "quote": "" - }, - { - "filename": "胡桃-吓唬.png", - "quote": "" - }, - { - "filename": "胡桃-坏笑.png", - "quote": "香菱可好玩了,一碰就跳,特别容易被唬住。做我们这行,最喜欢这种人喽。" - }, - { - "filename": "胡桃-念诗.png", - "quote": "大丘丘病了,二丘丘瞧;三丘丘采药,四丘丘熬;五丘丘死了,六丘丘抬~" - }, - { - "filename": "胡桃-打哈欠.png", - "quote": "嗯~早起身体好,晚睡人会飘。" - }, - { - "filename": "胡桃-打招呼.png", - "quote": "" - }, - { - "filename": "胡桃-搞砸了.png", - "quote": "" - }, - { - "filename": "胡桃-爱心.png", - "quote": "" - }, - { - "filename": "胡桃-看招.png", - "quote": "吃饱喝饱,一路走好!" - }, - { - "filename": "芭芭拉-嘘.png", - "quote": "" - }, - { - "filename": "芭芭拉-害羞.png", - "quote": "欸,想听我唱歌…?对不起,还…还没有到演出时间呢。" - }, - { - "filename": "芭芭拉-慌张.png", - "quote": "代理团长大人…骑士团的领袖,大家都很喜欢她哦。欸?问我吗?我…我当然也非常尊敬她!" - }, - { - "filename": "芭芭拉-没事吧.png", - "quote": "" - }, - { - "filename": "若陀龙王-休息.png", - "quote": "" - }, - { - "filename": "若陀龙王-咆哮.png", - "quote": "" - }, - { - "filename": "若陀龙王-挠头.png", - "quote": "" - }, - { - "filename": "若陀龙王-迷茫.png", - "quote": "" - }, - { - "filename": "荒泷一斗-吃糖.png", - "quote": "棒棒糖全身都是宝,不但糖好吃,棍子叼在嘴里还很帅,为我增添了一丝不羁的气质,来,你也试试吧。" - }, - { - "filename": "荒泷一斗-大笑.png", - "quote": "嘿嘿,荒泷天下第一斗到此一游! 哈哈哈哈…咳…" - }, - { - "filename": "荒泷一斗-挑衅.png", - "quote": "哈哈哈哈…我说将军啊,现在加入荒泷派的话…还能让你做个美梦哦?" - }, - { - "filename": "荒泷一斗-挠头.png", - "quote": "" - }, - { - "filename": "荧-拜托.png", - "quote": "" - }, - { - "filename": "荧-请投币.png", - "quote": "" - }, - { - "filename": "莫娜-吃炸鸡.png", - "quote": "" - }, - { - "filename": "莫娜-哼哼.png", - "quote": "命中当如此,我早已预知到了。" - }, - { - "filename": "莫娜-好饿.png", - "quote": "已经正午了,去吃点东西吧,嗯?我…我吃份沙拉就行了,呃…简朴的生活是…是占星术士修行的一环!" - }, - { - "filename": "莫娜-是摩拉.png", - "quote": "" - }, - { - "filename": "莫娜-比心.png", - "quote": "" - }, - { - "filename": "菲谢尔-傲娇.png", - "quote": "旅行者…再见了。这次的一小段旅途,是一场很好的冒险。突然说要走,我也…" - }, - { - "filename": "菲谢尔-哈哈哈.png", - "quote": "" - }, - { - "filename": "诺艾尔-再来一杯.png", - "quote": "有点累了吗?那就在这里休息吧,我去为你沏茶,要全糖、半糖,还是无糖?" - }, - { - "filename": "诺艾尔-叼薯条.png", - "quote": "我每天做的都是一些琐碎的小事,但只要这些小事能帮到你的冒险、你的生活,我就会很开心…因为你的道谢,会让我觉得这些小事,也都有小小的意义。" - }, - { - "filename": "诺艾尔-土豆泥.png", - "quote": "喜欢的食物?当然是「满足沙拉」,蒙德的自然水土汇于一盘,营养均衡,热量也不会超标…你问吃不腻吗?当然不会,很好吃的!我已经吃了十年了。" - }, - { - "filename": "诺艾尔-擦嘴.png", - "quote": "我不挑食!但有一种情况会让我比较头疼…宴会上的一大桌菜,作为女仆,每一道菜都必须自己先尝一尝。但这样一口接一口…唉,太罪恶了。" - }, - { - "filename": "诺艾尔-超赞.png", - "quote": "" - }, - { - "filename": "诺艾尔-送餐.png", - "quote": "" - }, - { - "filename": "辛焱-冲呀.png", - "quote": "摇滚不可缺少的,就是激情——喂,别发呆了,快动起来!" - }, - { - "filename": "辛焱-击掌.png", - "quote": "" - }, - { - "filename": "辛焱-勉强.png", - "quote": "" - }, - { - "filename": "辛焱-气死了.png", - "quote": "" - }, - { - "filename": "辛焱-燃起来了.png", - "quote": "酷!我感受到你饱满的「激情」了!那么,就让我写一首专属于你的摇滚,只为你而奏响吧!" - }, - { - "filename": "达达利亚-偷看.png", - "quote": "" - }, - { - "filename": "达达利亚-冲浪.png", - "quote": "" - }, - { - "filename": "达达利亚-可恶.png", - "quote": "" - }, - { - "filename": "达达利亚-叹气.png", - "quote": "无论决斗的对手是神,还是深渊的魔兽,只要有形,就有得胜的可能。但执行官当中,有的人热衷于权术、阴谋那些…「看不见的手段」。我跟那些无聊的家伙合不来。" - }, - { - "filename": "达达利亚-吃惊.png", - "quote": "" - }, - { - "filename": "达达利亚-失去高光.png", - "quote": "" - }, - { - "filename": "达达利亚-征服世界.png", - "quote": "记住了,伙伴,我是终有一天要征服世界的人!" - }, - { - "filename": "达达利亚-得意.png", - "quote": "时间过得真快。总有一天,我要让你亲眼看见我征服世界的样子、我把神的王座踩在脚下的样子。哈哈,在那之前,你可绝对不要倒下啊,伙伴!" - }, - { - "filename": "达达利亚-挠头.png", - "quote": "" - }, - { - "filename": "达达利亚-瞄准.png", - "quote": "" - }, - { - "filename": "达达利亚-美妙.png", - "quote": "" - }, - { - "filename": "迪卢克-摇可乐.png", - "quote": "我偶尔会去「天使的馈赠」亲自调酒,因为酒馆是情报集中流通的地方。" - }, - { - "filename": "迪卢克-撒盐.png", - "quote": "" - }, - { - "filename": "迪卢克-擦汗.png", - "quote": "" - }, - { - "filename": "迪卢克-有事吗.png", - "quote": "" - }, - { - "filename": "迪卢克-特别招待.png", - "quote": "" - }, - { - "filename": "迪卢克-谢谢惠顾.png", - "quote": "" - }, - { - "filename": "迪奥娜-傲娇.png", - "quote": "你没有猫的夜视能力,走夜路不要紧吧?要我护送你的话…欸,有灯啊?…谁,谁要护送你啦,快点走快点走。" - }, - { - "filename": "迪奥娜-无聊.png", - "quote": "" - }, - { - "filename": "迪奥娜-烦躁.png", - "quote": "我喜欢吃鱼!作为主食的鱼…爸爸做的鱼!但是…不要作为下酒菜,那是对鱼的亵渎!" - }, - { - "filename": "迪奥娜-超凶.png", - "quote": "我扑…捕捉蝴蝶的技巧可是一流的。喂,不是啦!抓蝴蝶是为了加进酒里做出难吃的味道,不要把我当成猫啦!喵!" - }, - { - "filename": "钟离-不必匆忙.png", - "quote": "一份新的「契约」?好吧…虽然我还在度假,但也可以陪你走一趟。契约书上,该签什么名字呢?我有许多名字,度假期间的话…我会自称「钟离」。你呢,旅行者?你会签下什么名字?" - }, - { - "filename": "钟离-可惜忘了.png", - "quote": "哦?私房钱?嗯…以普遍理性而论,真是个好建议。可惜…忘了。" - }, - { - "filename": "钟离-喝茶.png", - "quote": "" - }, - { - "filename": "钟离-天动万象.png", - "quote": "原来如此,驱动「神之眼」驾驭元素力,对于常人而言不啻伟业。哦,原来如此…那时的他们,是抱着这样的觉悟站在我身旁啊…" - }, - { - "filename": "钟离-思考.png", - "quote": "时间会淬炼一切意志。而巴尔,恰好是会为信念付出所有的人。或许正因如此,她才能走到这一步。如有机会,我也想见识一下她为之倾尽一切的「永恒」。" - }, - { - "filename": "钟离-我全都要.png", - "quote": "" - }, - { - "filename": "钟离-摊手.png", - "quote": "" - }, - { - "filename": "阿贝多-交给我.png", - "quote": "我是阿贝多,西风骑士团首席炼金术士。我对你身上星海的气息很感兴趣,想要就近观察研究。相信以后我们会有很多独处的机会。" - }, - { - "filename": "阿贝多-冷.png", - "quote": "" - }, - { - "filename": "阿贝多-坏笑.png", - "quote": "怎么了?我脖子上有什么东西吗?何,看你的表情,还以为是我刚开了什么恶劣的玩笑呢。" - }, - { - "filename": "阿贝多-怎么了.png", - "quote": "" - }, - { - "filename": "阿贝多-沉思.png", - "quote": "即便到了现在,师父传授给我的「黑土之术」仍是充满了谜团,师父到底想要用这个技术创造出什么呢?…研究之期还远未到尽头,得麻烦你和我一起继续探索了。" - }, - { - "filename": "阿贝多-没什么.png", - "quote": "" - }, - { - "filename": "阿贝多-送花.png", - "quote": "" - }, - { - "filename": "雷电将军-威胁.png", - "quote": "" - }, - { - "filename": "雷电将军-惊讶.png", - "quote": "" - }, - { - "filename": "雷电将军-美味.png", - "quote": "你别听将军她的。甜点心!蛀牙什么的,换一套就好了。这怎么会影响对永恒的追求呢。" - }, - { - "filename": "雷电将军-轻笑.png", - "quote": "虽然是微服出访的保镖,但是我遇到危险不用替我挡刀了。将军她构造还挺结实的,坏了还能替换呢。所以遇到危险把将军她推到前面就好了。" - }, - { - "filename": "香菱-新菜谱.png", - "quote": "看着点哦!像这样烧热一锅油,然后,把去掉翅膀的晶蝶这样放下去炸…哎呀你别走啊,超香的啦!" - }, - { - "filename": "香菱-星星眼.png", - "quote": "你见过蒙德城的龙?有多大?哇,不是吧。那要是做成龙肉排——嗯,该有多棒啊!" - }, - { - "filename": "香菱-诶嘿嘿.png", - "quote": "" - }, - { - "filename": "魈-冷漠.png", - "quote": "海灯节?哼,原来又到了凡人用发光垃圾塞满璃月港的时候了,唉,为何如此幼稚。…不过你若无聊,我便陪你去。" - }, - { - "filename": "魈-发呆.png", - "quote": "" - }, - { - "filename": "魈-吃.png", - "quote": "杏仁豆腐的味道,和「美梦」非常相似呢。" - }, - { - "filename": "魈-坐.png", - "quote": "" - }, - { - "filename": "魈-揉眼.png", - "quote": "" - }, - { - "filename": "魈-来吧.png", - "quote": "荒野上的孤魂,休想伤我分毫。" - }, - { - "filename": "魈-疑问.png", - "quote": "要我亲手在薄饼中包入肉片?啊…然后…一起吃下去?呵…麻烦。如今的人间,真是越来越缺乏常识了。" - }, - { - "filename": "魈-皱眉.png", - "quote": "…谁!?…你觉得我是站着睡着了?哼,不敬仙师!" - } -] diff --git a/res/number.ttf b/res/number.ttf new file mode 100644 index 0000000..89a392f Binary files /dev/null and b/res/number.ttf differ diff --git a/res/优设标题黑.ttf b/res/优设标题黑.ttf new file mode 100644 index 0000000..3729151 Binary files /dev/null and b/res/优设标题黑.ttf differ