mirror of
https://github.com/yoimiya-kokomi/miao-plugin.git
synced 2024-11-28 02:06:28 +00:00
角色立绘支持随机,用于面板场景
This commit is contained in:
parent
5fb7da70ae
commit
6eabd3f0cb
1
.gitignore
vendored
1
.gitignore
vendored
@ -17,4 +17,3 @@
|
|||||||
/config/cfg.js
|
/config/cfg.js
|
||||||
/resources/profile/super-character/*
|
/resources/profile/super-character/*
|
||||||
/resources/profile/normal-character/*
|
/resources/profile/normal-character/*
|
||||||
!/resources/profile/super-character/达达利亚.webp
|
|
317
CHANGELOG.md
317
CHANGELOG.md
@ -1,59 +1,58 @@
|
|||||||
# 2.1.3
|
# 2.1.4
|
||||||
|
|
||||||
|
* 角色立绘支持随机,用于面板场景
|
||||||
|
* 图像支持webp及png格式
|
||||||
|
* 普通立绘:**resources/profile/normal-character/**
|
||||||
|
* 彩蛋立绘(满命/ACE/三皇冠):**resources/profile/super-character/**
|
||||||
|
* 单张立绘请放置在普通&彩蛋目录下,以**角色全名**为**文件名**,例如**刻晴.webp**
|
||||||
|
* 如需多张随机,请在普通&彩蛋目录下,以**角色全名**为**目录**名,任意文件名为文件名,例如 **刻晴/1.png**
|
||||||
|
|
||||||
|
# 2.1.1~2.1.3
|
||||||
|
|
||||||
* 增加面板替换功能,可通过命令更换面板的圣遗物、武器、天赋命座等,用于伤害计算
|
* 增加面板替换功能,可通过命令更换面板的圣遗物、武器、天赋命座等,用于伤害计算
|
||||||
* `#雷神面板换稻光换90级满命` / `#刻晴面板换雷神圣遗物` 等命令
|
* `#雷神面板换稻光换90级满命` / `#刻晴面板换雷神圣遗物` 等命令
|
||||||
* 更多命令参见 `#面板帮助`,请根据需求吟唱。后续会提供更细致的咒语详解
|
* 更多命令参见 `#面板帮助`,请根据需求吟唱。后续会提供更细致的咒语详解
|
||||||
* 角色立绘支持随机,用于面板、图鉴等场景
|
|
||||||
* 立绘可放置在 **resources/profile/randomMode-character/角色名/** 目录下,webp格式
|
|
||||||
* 若目录获取到图片则不会使用普通立绘和彩蛋立绘
|
|
||||||
# 2.1.1~2.1.2
|
|
||||||
|
|
||||||
* 角色普通立绘支持自定义,用于面板、图鉴等场景
|
|
||||||
* 立绘可放置在 **resources/profile/normal-character/** 目录下,webp格式
|
|
||||||
* 由于缓存,新增的角色图需要重启bot生效(已有图像替换无需重启)
|
|
||||||
* 去除插件内自带的V2/V3兼容逻辑,使用runtime进行V2/V3兼容,如使用遇到问题请升级至最新版Yunzai
|
* 去除插件内自带的V2/V3兼容逻辑,使用runtime进行V2/V3兼容,如使用遇到问题请升级至最新版Yunzai
|
||||||
* V3-Yunzai:官方Yunzai最新版本
|
* V3-Yunzai:官方Yunzai最新版本
|
||||||
* V2-Yunzai:喵版V2-Yunzai,2.2.3版本。其余分值维护的V2-Yunzai可合并2.2.3版本
|
* V2-Yunzai:喵版V2-Yunzai,2.2.3版本。其余分值维护的V2-Yunzai可合并2.2.3版本
|
||||||
* 较低版本的Yunzai可能无法正常使用miao-plugin
|
* 较低版本的Yunzai可能无法正常使用miao-plugin
|
||||||
* 部分底层结构升级
|
* 部分底层结构升级
|
||||||
* 底层增加面板计算逻辑
|
* 底层增加面板计算逻辑
|
||||||
* 圣遗物数据底层存储格式与处理逻辑初步升级
|
* 圣遗物数据底层存储格式与处理逻辑初步升级
|
||||||
* 圣遗物主词条评分规则微调,可能会影响部分角色评分
|
* 圣遗物主词条评分规则微调,可能会影响部分角色评分
|
||||||
* 元素杯属性不符会触发主词缀评分惩罚
|
* 元素杯属性不符会触发主词缀评分惩罚
|
||||||
* 充能主词条不再触发主词缀评分惩罚
|
* 充能主词条不再触发主词缀评分惩罚
|
||||||
* 一些已知问题修正与样式优化
|
* 一些已知问题修正与样式优化
|
||||||
|
|
||||||
# 2.1.0
|
# 2.1.0
|
||||||
|
|
||||||
* 增加群内排名功能
|
* 增加群内排名功能
|
||||||
* 默认关闭,如需启用可通过 `#喵喵设置排名开启`进行打开
|
* 默认关闭,如需启用可通过 `#喵喵设置排名开启`进行打开
|
||||||
* 统计为bot本地统计,只统计在群内主动查看过的面板数据
|
* 统计为bot本地统计,只统计在群内主动查看过的面板数据
|
||||||
* 可通过 `#面板`、`#心海面板`、`#更新面板`等命令来触发排名数据更新
|
* 可通过 `#面板`、`#心海面板`、`#更新面板`等命令来触发排名数据更新
|
||||||
* 增加命令 `#刷新排名`,获取群成员面板数据,刷新当前排名 **@munnks**
|
* 增加命令 `#刷新排名`,获取群成员面板数据,刷新当前排名 **@munnks**
|
||||||
* `#雷神排名` 使用个人头像作为排行头像展示(首次使用可使用 `#刷新排名`以更新uid信息)
|
* `#雷神排名` 使用个人头像作为排行头像展示(首次使用可使用 `#刷新排名`以更新uid信息)
|
||||||
* 增加排名相关命令
|
* 增加排名相关命令
|
||||||
* 增加 `#最强雷神`、`#最高分甘雨`命令,查看当前统计中最高练度/最高圣遗物评分的面板数据
|
* 增加 `#最强雷神`、`#最高分甘雨`命令,查看当前统计中最高练度/最高圣遗物评分的面板数据
|
||||||
* 增加 `#雷神排名`、`#甘雨圣遗物排名`命令,查看当前群中角色的排名数据
|
* 增加 `#雷神排名`、`#甘雨圣遗物排名`命令,查看当前群中角色的排名数据
|
||||||
* 增加 `#重置排名`、`#重置刻晴排名`命令,来重置当前群的排名统计
|
* 增加 `#重置排名`、`#重置刻晴排名`命令,来重置当前群的排名统计
|
||||||
* 面板及伤害计算升级
|
* 面板及伤害计算升级
|
||||||
* `#雷神面板`圣遗物支持展示强化次数
|
* `#雷神面板`圣遗物支持展示强化次数
|
||||||
* `#面板`会展示角色名命座信息
|
* `#面板`会展示角色名命座信息
|
||||||
* 底层元素反应计算逻辑更新 **@冷落**
|
* 底层元素反应计算逻辑更新 **@冷落**
|
||||||
* 增加纳西妲的伤害计算
|
* 增加纳西妲的伤害计算
|
||||||
* `#喵喵设置` 部分配置项及功能改进
|
* `#喵喵设置` 部分配置项及功能改进
|
||||||
* 删除一些无效或暂不支持的配置项
|
* 删除一些无效或暂不支持的配置项
|
||||||
* 配置存储位置变更为**config/cfg.js**。原设置会自动迁移
|
* 配置存储位置变更为**config/cfg.js**。原设置会自动迁移
|
||||||
* 喵喵设置中增加排名限制门槛,支持限制 有16个角色数据/包含御三家角色 才能参与排名,防止被非群成员uid刷榜
|
* 喵喵设置中增加排名限制门槛,支持限制 有16个角色数据/包含御三家角色 才能参与排名,防止被非群成员uid刷榜
|
||||||
* `#日历` 页面样式微调,功能升级
|
* `#日历` 页面样式微调,功能升级
|
||||||
* 日历中会展示角色生日
|
* 日历中会展示角色生日
|
||||||
* 日历会展示本日可刷天赋角色列表
|
* 日历会展示本日可刷天赋角色列表
|
||||||
* 增加3.3角色信息及图片,可通过 `#散兵天赋`、`#珐露珊命座`查看
|
* 增加3.3角色信息及图片,可通过 `#散兵天赋`、`#珐露珊命座`查看
|
||||||
* 一些样式及功能点优化
|
* 一些样式及功能点优化
|
||||||
* 优化character的进入判定逻辑,防止一些额外的log触发
|
* 优化character的进入判定逻辑,防止一些额外的log触发
|
||||||
* 角色相关命令在V3下会联合V3的角色别名一同查询
|
* 角色相关命令在V3下会联合V3的角色别名一同查询
|
||||||
* `#深渊组队`使用新版胡桃API进行组队信息获取
|
* `#深渊组队`使用新版胡桃API进行组队信息获取
|
||||||
* 角色面板彩蛋图(满命/三皇冠/ACE 任一触发)支持自定义
|
|
||||||
* 自定义图像可放置在 **resources/profile/super-character/** 目录下
|
|
||||||
* 增加命令 `#最强排行`、`#最高分排行` 查看群排行
|
* 增加命令 `#最强排行`、`#最高分排行` 查看群排行
|
||||||
* 增加莱依拉的伤害计算及圣遗物评分权重
|
* 增加莱依拉的伤害计算及圣遗物评分权重
|
||||||
|
|
||||||
@ -62,67 +61,67 @@
|
|||||||
* 底层架构升级,以V3为主要版本,V2做兼容处理
|
* 底层架构升级,以V3为主要版本,V2做兼容处理
|
||||||
* `#深渊配队`、`#戳一戳` 适配V3
|
* `#深渊配队`、`#戳一戳` 适配V3
|
||||||
* `#喵喵帮助`配置功能升级
|
* `#喵喵帮助`配置功能升级
|
||||||
* 支持自定义帮助皮肤包,皮肤目录为**resources/help/theme**
|
* 支持自定义帮助皮肤包,皮肤目录为**resources/help/theme**
|
||||||
* 若有多套皮肤包,默认随机使用,可通过**config/help.js**指定
|
* 若有多套皮肤包,默认随机使用,可通过**config/help.js**指定
|
||||||
* 支持配帮助文字颜色及容器颜色与透明度
|
* 支持配帮助文字颜色及容器颜色与透明度
|
||||||
* 支持图片毛玻璃效果,默认开启,可通过配置关闭
|
* 支持图片毛玻璃效果,默认开启,可通过配置关闭
|
||||||
* `注意1:` 如之前更改过底图可能会在更新后失效,可将自定义底图放置在新建的皮肤包目录内
|
* `注意1:` 如之前更改过底图可能会在更新后失效,可将自定义底图放置在新建的皮肤包目录内
|
||||||
* `注意2:` 为统一配置目录,帮助配置文件迁移至**config/help.js**,如之前自定义过配置文件,help-cfg.js仍能够识别,但建议移至新配置目录以使用后续更多功能
|
* `注意2:` 为统一配置目录,帮助配置文件迁移至**config/help.js**,如之前自定义过配置文件,help-cfg.js仍能够识别,但建议移至新配置目录以使用后续更多功能
|
||||||
* `#面板练度统计` 功能调整,样式重写
|
* `#面板练度统计` 功能调整,样式重写
|
||||||
* 样式由深色调整为浅色方案
|
* 样式由深色调整为浅色方案
|
||||||
* 在未绑定CK时,使用本地面板数据展示练度信息
|
* 在未绑定CK时,使用本地面板数据展示练度信息
|
||||||
* 重写 `#刻晴`、`#老婆`的角色卡片
|
* 重写 `#刻晴`、`#老婆`的角色卡片
|
||||||
* 样式整体升级,展示信息重新排版
|
* 样式整体升级,展示信息重新排版
|
||||||
* 未绑定CK时,会同时使用本地面板数据进行展示
|
* 未绑定CK时,会同时使用本地面板数据进行展示
|
||||||
* `#上传深渊`队伍人数少于4人时展示样式优化
|
* `#上传深渊`队伍人数少于4人时展示样式优化
|
||||||
* MysApi内部逻辑重写
|
* MysApi内部逻辑重写
|
||||||
* 在未绑定CK时,会使用本地面板数据综合计算,以使信息展示更完备
|
* 在未绑定CK时,会使用本地面板数据综合计算,以使信息展示更完备
|
||||||
* 优化V3下获取Uid及CK的逻辑,防止一些情况下触发报错
|
* 优化V3下获取Uid及CK的逻辑,防止一些情况下触发报错
|
||||||
* 武器、圣遗物 meta数据及图像资源逻辑更新
|
* 武器、圣遗物 meta数据及图像资源逻辑更新
|
||||||
* 重构武器及圣遗物的底层处理逻辑,重构页面引用图像资源的逻辑
|
* 重构武器及圣遗物的底层处理逻辑,重构页面引用图像资源的逻辑
|
||||||
* 图像资源更新为webp格式
|
* 图像资源更新为webp格式
|
||||||
* 增加多莉的伤害计算
|
* 增加多莉的伤害计算
|
||||||
* 其他已知Bug修复
|
* 其他已知Bug修复
|
||||||
|
|
||||||
# 1.11.0
|
# 1.11.0
|
||||||
|
|
||||||
* 面板圣遗物评分初步增加流派判定能力
|
* 面板圣遗物评分初步增加流派判定能力
|
||||||
* 实验性,尚未完全稳定,可能会导致一些角色圣遗物评分变化,如遇问题请反馈
|
* 实验性,尚未完全稳定,可能会导致一些角色圣遗物评分变化,如遇问题请反馈
|
||||||
* 目前实验暴力芭芭拉、血牛钟离的判定
|
* 目前实验暴力芭芭拉、血牛钟离的判定
|
||||||
* `#刻晴面板`、`#芭芭拉圣遗物`支持展示角色时装
|
* `#刻晴面板`、`#芭芭拉圣遗物`支持展示角色时装
|
||||||
* 如果角色装备了时装,面板的角色图会展示时装立绘
|
* 如果角色装备了时装,面板的角色图会展示时装立绘
|
||||||
* 需要重新 `#更新面板`以获取时装数据
|
* 需要重新 `#更新面板`以获取时装数据
|
||||||
* 增加赛诺、妮露、坎蒂丝的角色信息,可以通过 `#妮露天赋`、`#妮露命座`查看角色信息了
|
* 增加赛诺、妮露、坎蒂丝的角色信息,可以通过 `#妮露天赋`、`#妮露命座`查看角色信息了
|
||||||
* 角色面板支持旅行者,暂未支持伤害计算及圣遗物评分
|
* 角色面板支持旅行者,暂未支持伤害计算及圣遗物评分
|
||||||
* 需要重新更新旅行者的面板数据
|
* 需要重新更新旅行者的面板数据
|
||||||
* `#雷主天赋`、`#草主命座`功能升级
|
* `#雷主天赋`、`#草主命座`功能升级
|
||||||
* 页面样式微调,内部处理逻辑升级
|
* 页面样式微调,内部处理逻辑升级
|
||||||
* 支持旅行者天赋及命座信息查看
|
* 支持旅行者天赋及命座信息查看
|
||||||
* 增加 `#心海图鉴`功能,可查看突破材料及常用武器
|
* 增加 `#心海图鉴`功能,可查看突破材料及常用武器
|
||||||
* 功能尚未完全稳定,信息还在继续补全中
|
* 功能尚未完全稳定,信息还在继续补全中
|
||||||
* 如无需使用,master可通过 `#喵喵设置图鉴关闭`关闭,防止覆盖图鉴插件等图鉴功能
|
* 如无需使用,master可通过 `#喵喵设置图鉴关闭`关闭,防止覆盖图鉴插件等图鉴功能
|
||||||
* 框架底层角色相关逻辑重构,角色图像资源迁移为webp格式
|
* 框架底层角色相关逻辑重构,角色图像资源迁移为webp格式
|
||||||
* 若遇到图像资源无法正常展示,可联系喵喵反馈
|
* 若遇到图像资源无法正常展示,可联系喵喵反馈
|
||||||
|
|
||||||
# 1.10.0
|
# 1.10.0
|
||||||
|
|
||||||
* 新增 `#面板练度统计`功能
|
* 新增 `#面板练度统计`功能
|
||||||
* 可展示当前角色天赋及圣遗物练度信息
|
* 可展示当前角色天赋及圣遗物练度信息
|
||||||
* 需要用户绑定Cookie,圣遗物评分需要本地获取并查看过对应角色面板
|
* 需要用户绑定Cookie,圣遗物评分需要本地获取并查看过对应角色面板
|
||||||
* `#上传深渊`使用图片渲染深渊结果,同时可被 `#喵喵深渊`触发
|
* `#上传深渊`使用图片渲染深渊结果,同时可被 `#喵喵深渊`触发
|
||||||
* 可展示本期深渊的全部角色信息,包括组队、天赋及圣遗物
|
* 可展示本期深渊的全部角色信息,包括组队、天赋及圣遗物
|
||||||
* 数据会上传至胡桃Api进行伤害排名,并展示在页面内
|
* 数据会上传至胡桃Api进行伤害排名,并展示在页面内
|
||||||
* 可在 `#喵喵设置`中启用 `#喵喵深渊`作为默认 `#深渊`,默认关闭
|
* 可在 `#喵喵设置`中启用 `#喵喵深渊`作为默认 `#深渊`,默认关闭
|
||||||
* 启用后不会覆盖 `#上期深渊`以及 `#深渊12层`具体楼层的命令
|
* 启用后不会覆盖 `#上期深渊`以及 `#深渊12层`具体楼层的命令
|
||||||
* `#面板`、`#更新面板`命令使用图片渲染结果
|
* `#面板`、`#更新面板`命令使用图片渲染结果
|
||||||
* `#雷神面板`展示数据API及更新时间
|
* `#雷神面板`展示数据API及更新时间
|
||||||
* Enka面板服务支持配置代理 **@永恒的小黑屋**
|
* Enka面板服务支持配置代理 **@永恒的小黑屋**
|
||||||
* 如需配置可在**miao-plugin/config/profile.js**文件中配置
|
* 如需配置可在**miao-plugin/config/profile.js**文件中配置
|
||||||
* `#更新面板`支持配置更新API,适配Enka新校验逻辑
|
* `#更新面板`支持配置更新API,适配Enka新校验逻辑
|
||||||
* B服角色使用Enka服务进行面板信息获取
|
* B服角色使用Enka服务进行面板信息获取
|
||||||
* 感谢Enka官方 **@Algoinde**的官方授权及UA**校**验
|
* 感谢Enka官方 **@Algoinde**的官方授权及UA**校**验
|
||||||
* 感谢 **@MiniGrayGay**提供的Enka服务中转,若面板更新失败可尝试在**miao-plugin/config/profile.js**文件中配置切换更新API
|
* 感谢 **@MiniGrayGay**提供的Enka服务中转,若面板更新失败可尝试在**miao-plugin/config/profile.js**文件中配置切换更新API
|
||||||
* 更新面板增加单用户更新间隔控制,默认5分钟
|
* 更新面板增加单用户更新间隔控制,默认5分钟
|
||||||
* `#深渊出场率`、`#角色持有率` 增加样本数量展示,增加数据使用授权提示
|
* `#深渊出场率`、`#角色持有率` 增加样本数量展示,增加数据使用授权提示
|
||||||
* 部分角色的圣遗物评分增加充能的词条评分权重
|
* 部分角色的圣遗物评分增加充能的词条评分权重
|
||||||
* 重构部分components、models逻辑,重构部分伤害计算逻辑
|
* 重构部分components、models逻辑,重构部分伤害计算逻辑
|
||||||
@ -132,30 +131,30 @@
|
|||||||
# 1.9.0
|
# 1.9.0
|
||||||
|
|
||||||
* 初步适配Yunzai V3
|
* 初步适配Yunzai V3
|
||||||
* 部分功能可能无法正常使用,会逐步适配
|
* 部分功能可能无法正常使用,会逐步适配
|
||||||
* 部分依赖MysApi查询的功能在V3下暂时只支持查自己
|
* 部分依赖MysApi查询的功能在V3下暂时只支持查自己
|
||||||
* 增加提纳里、柯莱、多莉的资料及角色图像
|
* 增加提纳里、柯莱、多莉的资料及角色图像
|
||||||
* 可通过 `#柯莱天赋`、`#柯莱命座`查看资料
|
* 可通过 `#柯莱天赋`、`#柯莱命座`查看资料
|
||||||
* 增加 `#深渊使用率`命令,数据源自SG团队胡桃API
|
* 增加 `#深渊使用率`命令,数据源自SG团队胡桃API
|
||||||
* 新增 `#上传深渊数据`命令
|
* 新增 `#上传深渊数据`命令
|
||||||
* 上传自己角色的深渊挑战数据及角色列表,并展示在本期深渊中伤害与承伤排名
|
* 上传自己角色的深渊挑战数据及角色列表,并展示在本期深渊中伤害与承伤排名
|
||||||
* 上传数据用于 `#角色持有率 #深渊出场率`等统计,可使统计更加及时准确
|
* 上传数据用于 `#角色持有率 #深渊出场率`等统计,可使统计更加及时准确
|
||||||
* 数据统计及服务来自SG团队胡桃API
|
* 数据统计及服务来自SG团队胡桃API
|
||||||
* 增加 `#添加刻晴图像`命令,感谢 **@叶**
|
* 增加 `#添加刻晴图像`命令,感谢 **@叶**
|
||||||
* 可通过命令上传添加指定角色图片,上传至 **resources/character-img/刻晴/upload**
|
* 可通过命令上传添加指定角色图片,上传至 **resources/character-img/刻晴/upload**
|
||||||
* 请将图像与命令一同发送,后续会支持at图像及命令后发送图像
|
* 请将图像与命令一同发送,后续会支持at图像及命令后发送图像
|
||||||
* `#刻晴` 角色卡片功能升级
|
* `#刻晴` 角色卡片功能升级
|
||||||
* `#老婆设置刻晴,心海`不再检查是否具有角色或展示在米游社展柜
|
* `#老婆设置刻晴,心海`不再检查是否具有角色或展示在米游社展柜
|
||||||
* `#刻晴` 角色卡片优先使用面板数据进行展示,无面板数据时使用米游社数据
|
* `#刻晴` 角色卡片优先使用面板数据进行展示,无面板数据时使用米游社数据
|
||||||
* 在未能获取到角色数据时也会展示角色卡片
|
* 在未能获取到角色数据时也会展示角色卡片
|
||||||
* 支持戳一戳返回喵喵版角色卡片,暂不支持V3 Yunzai
|
* 支持戳一戳返回喵喵版角色卡片,暂不支持V3 Yunzai
|
||||||
* 需要使用喵喵分支Yunzai以支持此能力,如需切换可在Yunzai根目录输入下方命令后更新重启
|
* 需要使用喵喵分支Yunzai以支持此能力,如需切换可在Yunzai根目录输入下方命令后更新重启
|
||||||
* `git remote set-url origin https://gitee.com/yoimiya-kokomi/Yunzai-Bot`
|
* `git remote set-url origin https://gitee.com/yoimiya-kokomi/Yunzai-Bot`
|
||||||
* 可通过 `#喵喵设置` 关闭戳一戳
|
* 可通过 `#喵喵设置` 关闭戳一戳
|
||||||
* 支持定义新角色及别名
|
* 支持定义新角色及别名
|
||||||
* 新增角色 派蒙、瑶瑶、白术、伐难、应达、散兵、女士、萍姥姥、仆人、少女、富人、博士、木偶、丑角、队长、妮露、纳西妲 的角色配置及图片
|
* 新增角色 派蒙、瑶瑶、白术、伐难、应达、散兵、女士、萍姥姥、仆人、少女、富人、博士、木偶、丑角、队长、妮露、纳西妲 的角色配置及图片
|
||||||
* 自定义角色可使用 `#派蒙` `#派蒙图片`触发图片查看,`#女儿设置派蒙`进行设置。后续会支持更多场景
|
* 自定义角色可使用 `#派蒙` `#派蒙图片`触发图片查看,`#女儿设置派蒙`进行设置。后续会支持更多场景
|
||||||
* 如需扩展可在喵喵config/character.js中定义
|
* 如需扩展可在喵喵config/character.js中定义
|
||||||
* `#喵喵帮助`增加对自定义配置文件的支持
|
* `#喵喵帮助`增加对自定义配置文件的支持
|
||||||
* 角色伤害计算增加 鹿野院平藏、烟绯
|
* 角色伤害计算增加 鹿野院平藏、烟绯
|
||||||
* `#喵喵日历`现在可通过 `#日历 #日历列表`触发
|
* `#喵喵日历`现在可通过 `#日历 #日历列表`触发
|
||||||
@ -163,111 +162,111 @@
|
|||||||
# 1.8.0
|
# 1.8.0
|
||||||
|
|
||||||
* `#角色面板`、`#圣遗物列表` 使用新的圣遗物评分逻辑计算评分
|
* `#角色面板`、`#圣遗物列表` 使用新的圣遗物评分逻辑计算评分
|
||||||
* 新的圣遗物评分规针对不同角色进行了细化,对不同角色的评分进行了拉齐
|
* 新的圣遗物评分规针对不同角色进行了细化,对不同角色的评分进行了拉齐
|
||||||
* 不同角色基于不同词条权重进行计算。感谢 **@糖炒栗子 @秋声 @49631073**等的权重梳理
|
* 不同角色基于不同词条权重进行计算。感谢 **@糖炒栗子 @秋声 @49631073**等的权重梳理
|
||||||
* 增加 `#雷神圣遗物`命令
|
* 增加 `#雷神圣遗物`命令
|
||||||
* 展示指定角色圣遗物及评分计算详情
|
* 展示指定角色圣遗物及评分计算详情
|
||||||
* 展示新版圣遗物评分逻辑与计算规则
|
* 展示新版圣遗物评分逻辑与计算规则
|
||||||
* 增加 `#原图`命令,可获取喵喵角色卡片原图,感谢 **@牧星长** 提供功能
|
* 增加 `#原图`命令,可获取喵喵角色卡片原图,感谢 **@牧星长** 提供功能
|
||||||
* 对由 `#老婆 #刻晴`发出的角色卡片图回复 `#原图`可获取对应图像
|
* 对由 `#老婆 #刻晴`发出的角色卡片图回复 `#原图`可获取对应图像
|
||||||
* `#角色面板`现在支持B服角色数据获取
|
* `#角色面板`现在支持B服角色数据获取
|
||||||
* 数据来自喵喵API,目前开放调用无需Token,仅限喵喵插件用户使用
|
* 数据来自喵喵API,目前开放调用无需Token,仅限喵喵插件用户使用
|
||||||
* 已知问题:角色天赋的皇冠及命座加成效果显示可能有问题,后期fix
|
* 已知问题:角色天赋的皇冠及命座加成效果显示可能有问题,后期fix
|
||||||
* `#录入角色面板` 功能恢复
|
* `#录入角色面板` 功能恢复
|
||||||
* 可对已有面板数据的角色手工输入更改面板属性,用于伤害测算
|
* 可对已有面板数据的角色手工输入更改面板属性,用于伤害测算
|
||||||
* 例如 `#录入雷神面板 暴击80,暴伤250`
|
* 例如 `#录入雷神面板 暴击80,暴伤250`
|
||||||
* 暂不支持设置武器、圣遗物、命座、天赋。后续会增加支持
|
* 暂不支持设置武器、圣遗物、命座、天赋。后续会增加支持
|
||||||
* 部分页面样式调整及功能优化
|
* 部分页面样式调整及功能优化
|
||||||
* `#角色持有率` 等增加提示说明
|
* `#角色持有率` 等增加提示说明
|
||||||
* `#圣遗物列表` 展示个数提升至28,且根据新版圣遗物评分规则进行词条高亮
|
* `#圣遗物列表` 展示个数提升至28,且根据新版圣遗物评分规则进行词条高亮
|
||||||
* `#喵喵更新` 的自动重启功能适配node app方式启动的Yunzai-Bot,感谢 **@SirlyDreamer**
|
* `#喵喵更新` 的自动重启功能适配node app方式启动的Yunzai-Bot,感谢 **@SirlyDreamer**
|
||||||
* 角色图像增加小清新开关,默认关闭
|
* 角色图像增加小清新开关,默认关闭
|
||||||
* 对增量包内的角色图像进行分级,较为清凉的图像独立管理
|
* 对增量包内的角色图像进行分级,较为清凉的图像独立管理
|
||||||
* 勇士们可使用 `#喵喵设置小清新开启` 启用
|
* 勇士们可使用 `#喵喵设置小清新开启` 启用
|
||||||
* 伤害计算增加扩散、感电的计算逻辑,感谢 **@49631073**的逻辑梳理
|
* 伤害计算增加扩散、感电的计算逻辑,感谢 **@49631073**的逻辑梳理
|
||||||
* `#角色面板` 伤害计算增加部分角色,目前支持
|
* `#角色面板` 伤害计算增加部分角色,目前支持
|
||||||
* 长柄武器:雷神、胡桃、魈、钟离、香菱
|
* 长柄武器:雷神、胡桃、魈、钟离、香菱
|
||||||
* 法器:神子、心海、可莉、凝光、芭芭拉、莫娜
|
* 法器:神子、心海、可莉、凝光、芭芭拉、莫娜
|
||||||
* 弓:甘雨、宵宫、公子,九条,迪奥娜、安柏、皇女、温迪、夜兰
|
* 弓:甘雨、宵宫、公子,九条,迪奥娜、安柏、皇女、温迪、夜兰
|
||||||
* 单手剑:绫人、绫华、刻晴、阿贝多、行秋、班尼特、七七、凯亚、琴、万叶ⁿᵉʷ、久岐忍ⁿᵉʷ
|
* 单手剑:绫人、绫华、刻晴、阿贝多、行秋、班尼特、七七、凯亚、琴、万叶ⁿᵉʷ、久岐忍ⁿᵉʷ
|
||||||
* 双手剑:一斗、优菈、迪卢克、诺艾尔、重云
|
* 双手剑:一斗、优菈、迪卢克、诺艾尔、重云
|
||||||
|
|
||||||
# 1.7.0
|
# 1.7.0
|
||||||
|
|
||||||
* `#更新面板` 功能升级
|
* `#更新面板` 功能升级
|
||||||
* 该功能可直接使用,不再需要token
|
* 该功能可直接使用,不再需要token
|
||||||
* 在查询新用户时会自动使用,自动使用的CD 12小时
|
* 在查询新用户时会自动使用,自动使用的CD 12小时
|
||||||
* 支持国际服UID,目前暂不支持2及5开头的UID
|
* 支持国际服UID,目前暂不支持2及5开头的UID
|
||||||
* 服务来自enka api,部分网络可能无法请求,请科学处理,后续会增加转发服务。
|
* 服务来自enka api,部分网络可能无法请求,请科学处理,后续会增加转发服务。
|
||||||
* 由于服务逻辑与之前数据不一致,部分角色的属性及伤害计算可能会不准确,如有发现请反馈给喵喵
|
* 由于服务逻辑与之前数据不一致,部分角色的属性及伤害计算可能会不准确,如有发现请反馈给喵喵
|
||||||
* `#面板`、`#更新面板`、`#角色面板`、`#角色伤害`、`#圣遗物列表`不再需要绑定cookie,支持查他人
|
* `#面板`、`#更新面板`、`#角色面板`、`#角色伤害`、`#圣遗物列表`不再需要绑定cookie,支持查他人
|
||||||
* 使用 `#面板`命令可查看已获取面板数据的角色列表
|
* 使用 `#面板`命令可查看已获取面板数据的角色列表
|
||||||
* 默认查询自己UID,同时也可通过命令+uid方式指定查询对象
|
* 默认查询自己UID,同时也可通过命令+uid方式指定查询对象
|
||||||
* 由于整体逻辑变化,喵喵1.6.0之前更新的面板数据无法查看,需要重新更新数据
|
* 由于整体逻辑变化,喵喵1.6.0之前更新的面板数据无法查看,需要重新更新数据
|
||||||
* 增加 `#喵喵面板设置`命令,可更精细的设置是否允许好友/临时对话/群使用面板功能
|
* 增加 `#喵喵面板设置`命令,可更精细的设置是否允许好友/临时对话/群使用面板功能
|
||||||
* 由 `#录入xx面板` 录入的数据暂时屏蔽
|
* 由 `#录入xx面板` 录入的数据暂时屏蔽
|
||||||
* `#角色面板`、`#喵喵日历` 部分细节样式调整
|
* `#角色面板`、`#喵喵日历` 部分细节样式调整
|
||||||
* `#角色面板` 伤害计算增加部分角色,目前支持
|
* `#角色面板` 伤害计算增加部分角色,目前支持
|
||||||
* 长柄武器:雷神、胡桃、魈、钟离、香菱
|
* 长柄武器:雷神、胡桃、魈、钟离、香菱
|
||||||
* 法器:神子、心海、可莉、凝光、芭芭拉、莫娜ⁿᵉʷ
|
* 法器:神子、心海、可莉、凝光、芭芭拉、莫娜ⁿᵉʷ
|
||||||
* 弓:甘雨、宵宫、公子,九条,迪奥娜、安柏、皇女ⁿᵉʷ、温迪ⁿᵉʷ、夜兰ⁿᵉʷ
|
* 弓:甘雨、宵宫、公子,九条,迪奥娜、安柏、皇女ⁿᵉʷ、温迪ⁿᵉʷ、夜兰ⁿᵉʷ
|
||||||
* 单手剑:绫人、绫华、刻晴、阿贝多、行秋、班尼特、七七、凯亚、琴ⁿᵉʷ
|
* 单手剑:绫人、绫华、刻晴、阿贝多、行秋、班尼特、七七、凯亚、琴ⁿᵉʷ
|
||||||
* 双手剑:一斗、优菈、迪卢克、诺艾尔、重云
|
* 双手剑:一斗、优菈、迪卢克、诺艾尔、重云
|
||||||
|
|
||||||
# 1.6.0
|
# 1.6.0
|
||||||
|
|
||||||
* `#喵喵设置` 支持设置 面板查询 的功能开关
|
* `#喵喵设置` 支持设置 面板查询 的功能开关
|
||||||
* `#喵喵版本` 使用图片展示更新信息
|
* `#喵喵版本` 使用图片展示更新信息
|
||||||
* `#喵喵日历` 升级
|
* `#喵喵日历` 升级
|
||||||
* 增加 `#喵喵日历列表`命令,以列表形式展示活动信息
|
* 增加 `#喵喵日历列表`命令,以列表形式展示活动信息
|
||||||
* 增加从活动详情信息中解析活动日期的逻辑,使一些活动日期更加准确
|
* 增加从活动详情信息中解析活动日期的逻辑,使一些活动日期更加准确
|
||||||
* 增加鹿野院平藏的角色信息,可通过 `#平藏天赋`、`#平藏命座`查看信息
|
* 增加鹿野院平藏的角色信息,可通过 `#平藏天赋`、`#平藏命座`查看信息
|
||||||
* 其他升级调整
|
* 其他升级调整
|
||||||
* `#深渊出场率`、`#角色持有率` 等页面功能及样式微调
|
* `#深渊出场率`、`#角色持有率` 等页面功能及样式微调
|
||||||
* `#角色面板` 伤害计算增加双手剑计算逻辑,增加物伤计算逻辑
|
* `#角色面板` 伤害计算增加双手剑计算逻辑,增加物伤计算逻辑
|
||||||
* 页面版权信息展示Yunzai及喵喵版本号
|
* 页面版权信息展示Yunzai及喵喵版本号
|
||||||
* `#角色面板` 伤害计算增加部分角色,目前支持
|
* `#角色面板` 伤害计算增加部分角色,目前支持
|
||||||
* 长柄武器:雷神、胡桃、魈、钟离、香菱
|
* 长柄武器:雷神、胡桃、魈、钟离、香菱
|
||||||
* 法器:神子、心海、可莉ⁿᵉʷ、凝光ⁿᵉʷ、芭芭拉ⁿᵉʷ
|
* 法器:神子、心海、可莉ⁿᵉʷ、凝光ⁿᵉʷ、芭芭拉ⁿᵉʷ
|
||||||
* 弓:甘雨、宵宫、公子,九条ⁿᵉʷ,迪奥娜ⁿᵉʷ、安柏ⁿᵉʷ
|
* 弓:甘雨、宵宫、公子,九条ⁿᵉʷ,迪奥娜ⁿᵉʷ、安柏ⁿᵉʷ
|
||||||
* 单手剑:绫人、绫华、刻晴、阿贝多、行秋、班尼特、七七ⁿᵉʷ、凯亚ⁿᵉʷ
|
* 单手剑:绫人、绫华、刻晴、阿贝多、行秋、班尼特、七七ⁿᵉʷ、凯亚ⁿᵉʷ
|
||||||
* 双手剑:一斗ⁿᵉʷ、优菈ⁿᵉʷ、迪卢克ⁿᵉʷ、诺艾尔ⁿᵉʷ、重云ⁿᵉʷ
|
* 双手剑:一斗ⁿᵉʷ、优菈ⁿᵉʷ、迪卢克ⁿᵉʷ、诺艾尔ⁿᵉʷ、重云ⁿᵉʷ
|
||||||
|
|
||||||
# 1.5.0
|
# 1.5.0
|
||||||
|
|
||||||
* 增加 `#喵喵日历` 功能
|
* 增加 `#喵喵日历` 功能
|
||||||
* 【!请注意!】此功能需要安装moment库,请在Yunzai安装目录下运行 `npm install moment`后再进行升级
|
* 【!请注意!】此功能需要安装moment库,请在Yunzai安装目录下运行 `npm install moment`后再进行升级
|
||||||
* 展示当前进行中及即将开始的活动,包括深境螺旋
|
* 展示当前进行中及即将开始的活动,包括深境螺旋
|
||||||
* `#角色面板` 伤害计算目前支持
|
* `#角色面板` 伤害计算目前支持
|
||||||
* 长柄武器:雷神、胡桃、魈、钟离、香菱ⁿᵉʷ
|
* 长柄武器:雷神、胡桃、魈、钟离、香菱ⁿᵉʷ
|
||||||
* 法器:神子、心海
|
* 法器:神子、心海
|
||||||
* 弓:甘雨、宵宫、公子
|
* 弓:甘雨、宵宫、公子
|
||||||
* 单手剑:绫人、绫华、刻晴、阿贝多ⁿᵉʷ、行秋ⁿᵉʷ、班尼特ⁿᵉʷ
|
* 单手剑:绫人、绫华、刻晴、阿贝多ⁿᵉʷ、行秋ⁿᵉʷ、班尼特ⁿᵉʷ
|
||||||
* 底层升级:抽象了部分公共组件为tpl模板以提高复用度,css改为less处理
|
* 底层升级:抽象了部分公共组件为tpl模板以提高复用度,css改为less处理
|
||||||
|
|
||||||
# 1.4.0
|
# 1.4.0
|
||||||
|
|
||||||
* 增加 `#深渊配队` 功能
|
* 增加 `#深渊配队` 功能
|
||||||
* 根据当前账号的角色练度及本期深渊出场数据,推荐较匹配的配队方案
|
* 根据当前账号的角色练度及本期深渊出场数据,推荐较匹配的配队方案
|
||||||
* 深渊出场数据来自胡桃API,为Snap Genshin用户自主上传的深渊挑战记录,感谢SG团队
|
* 深渊出场数据来自胡桃API,为Snap Genshin用户自主上传的深渊挑战记录,感谢SG团队
|
||||||
* 配队方案仅供参考
|
* 配队方案仅供参考
|
||||||
* `#角色面板` 伤害计算新增部分角色
|
* `#角色面板` 伤害计算新增部分角色
|
||||||
* 目前支持:雷神、胡桃、魈、神子、甘雨、宵宫、公子、绫人、绫华、心海、钟离
|
* 目前支持:雷神、胡桃、魈、神子、甘雨、宵宫、公子、绫人、绫华、心海、钟离
|
||||||
* `#角色面板` 一些功能升级与调整
|
* `#角色面板` 一些功能升级与调整
|
||||||
* 支持对治疗量、护盾量的计算与展示
|
* 支持对治疗量、护盾量的计算与展示
|
||||||
* 修复冰融化、少女4等buff等buff遗漏或错误导致的伤害计算偏差
|
* 修复冰融化、少女4等buff等buff遗漏或错误导致的伤害计算偏差
|
||||||
* `#老婆` 功能支持对jpeg格式的图片格式识别
|
* `#老婆` 功能支持对jpeg格式的图片格式识别
|
||||||
|
|
||||||
# 1.3.0
|
# 1.3.0
|
||||||
|
|
||||||
* 增加 `#雷神伤害` 功能
|
* 增加 `#雷神伤害` 功能
|
||||||
* 可计算圣遗物副词条置换带来的伤害变化,可用于圣遗物副词条侧重方向的参考
|
* 可计算圣遗物副词条置换带来的伤害变化,可用于圣遗物副词条侧重方向的参考
|
||||||
* 可以查看指定角色伤害计算的Buff列表
|
* 可以查看指定角色伤害计算的Buff列表
|
||||||
* `#角色面板` 伤害计算新增部分角色
|
* `#角色面板` 伤害计算新增部分角色
|
||||||
* 目前支持:雷神、胡桃、魈、神子、甘雨、宵宫、公子、绫人、绫华
|
* 目前支持:雷神、胡桃、魈、神子、甘雨、宵宫、公子、绫人、绫华
|
||||||
* `#角色面板` 功能升级
|
* `#角色面板` 功能升级
|
||||||
* 优化无角色面板数据时的引导
|
* 优化无角色面板数据时的引导
|
||||||
* 优化返回的图像格式及分辨率,平衡响应速度及显示效果
|
* 优化返回的图像格式及分辨率,平衡响应速度及显示效果
|
||||||
* 增加 `#圣遗物列表` 功能,对已经获取面板的所有角色圣遗物进行评分,并展示高评分的圣遗物列表
|
* 增加 `#圣遗物列表` 功能,对已经获取面板的所有角色圣遗物进行评分,并展示高评分的圣遗物列表
|
||||||
* 增加 `#角色面板列表` / `#角色面板帮助` 命令
|
* 增加 `#角色面板列表` / `#角色面板帮助` 命令
|
||||||
* 增加 `#更新胡桃面板` 命令,获取单个角色面板数据,每天可更新5次
|
* 增加 `#更新胡桃面板` 命令,获取单个角色面板数据,每天可更新5次
|
||||||
@ -276,15 +275,15 @@
|
|||||||
# 1.2.0
|
# 1.2.0
|
||||||
|
|
||||||
* `#角色面板` 增加伤害计算功能
|
* `#角色面板` 增加伤害计算功能
|
||||||
* 目前支持角色:雷神、胡桃、魈、神子、甘雨
|
* 目前支持角色:雷神、胡桃、魈、神子、甘雨
|
||||||
* 可通过 `#怪物等级85` 命令设定怪物等级,以获得更准确的计算结果
|
* 可通过 `#怪物等级85` 命令设定怪物等级,以获得更准确的计算结果
|
||||||
* 计算伤害为满Buff情况,后续会出更详细的Buff及计算展示
|
* 计算伤害为满Buff情况,后续会出更详细的Buff及计算展示
|
||||||
* `#获取游戏角色详情`命令在服务侧增加基于UID的天频度限制
|
* `#获取游戏角色详情`命令在服务侧增加基于UID的天频度限制
|
||||||
* 增加 `#喵喵更新` 功能
|
* 增加 `#喵喵更新` 功能
|
||||||
* 感谢 @碎月 @清秋 的代码支持
|
* 感谢 @碎月 @清秋 的代码支持
|
||||||
* 若更新成功会重启Yunzai,需要Yunzai以 npm run start 模式启动
|
* 若更新成功会重启Yunzai,需要Yunzai以 npm run start 模式启动
|
||||||
* 尚未经充分测试,请有一定容错能力的勇士尝试
|
* 尚未经充分测试,请有一定容错能力的勇士尝试
|
||||||
* 增加 `#喵喵版本`命令查询版本信息
|
* 增加 `#喵喵版本`命令查询版本信息
|
||||||
|
|
||||||
# 1.1.0
|
# 1.1.0
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@ export async function profileArtis (e) {
|
|||||||
return await Common.render('character/artis-mark', {
|
return await Common.render('character/artis-mark', {
|
||||||
uid,
|
uid,
|
||||||
elem: char.elem,
|
elem: char.elem,
|
||||||
splash: char.getImgs(profile.costume).splash,
|
splash: char.getImgs(profile.costume).splash0,
|
||||||
data: profile,
|
data: profile,
|
||||||
costume: profile.costume ? '2' : '',
|
costume: profile.costume ? '2' : '',
|
||||||
artisDetail,
|
artisDetail,
|
||||||
|
@ -96,7 +96,6 @@ export async function renderProfile (e, char, mode = 'profile', params = {}) {
|
|||||||
let artisDetail = profile.getArtisMark()
|
let artisDetail = profile.getArtisMark()
|
||||||
let artisKeyTitle = ProfileArtis.getArtisKeyTitle()
|
let artisKeyTitle = ProfileArtis.getArtisKeyTitle()
|
||||||
let imgs = char.getImgs(profile.costume)
|
let imgs = char.getImgs(profile.costume)
|
||||||
imgs.img = imgs.isRandom ? imgs.randomImg.path + imgs.randomImg.urls[lodash.random(0, imgs.randomImg.urls.length - 1)] : imgs.splash
|
|
||||||
// 渲染图像
|
// 渲染图像
|
||||||
return await Common.render('character/profile-detail', {
|
return await Common.render('character/profile-detail', {
|
||||||
save_id: uid,
|
save_id: uid,
|
||||||
|
@ -38,7 +38,7 @@ const ProfileChange = {
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
msg = msg.toLowerCase().replace(/uid ?:? ?/, '')
|
msg = msg.toLowerCase().replace(/uid ?:? ?/, '')
|
||||||
let regRet = /^#*(\d{9})?(.+?)(详细|详情|面板|面版|圣遗物|伤害[1-7]?|换)\s*(\d{9})?(.+)/.exec(msg)
|
let regRet = /^#*(\d{9})?(.+?)(详细|详情|面板|面版|圣遗物|伤害[1-7]?)?\s*(\d{9})?[变换改](.+)/.exec(msg)
|
||||||
if (!regRet || !regRet[2]) {
|
if (!regRet || !regRet[2]) {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
@ -197,15 +197,28 @@ class Character extends Base {
|
|||||||
}
|
}
|
||||||
let costumeCfg = [this.checkCostume(costume[0]) ? '2' : '', costume[1] || 'normal']
|
let costumeCfg = [this.checkCostume(costume[0]) ? '2' : '', costume[1] || 'normal']
|
||||||
|
|
||||||
let cacheId = `costume${costumeCfg.join('')}`
|
let cacheId = `costume${costume[0]}`
|
||||||
if (!this._imgs) {
|
if (!this._imgs) {
|
||||||
this._imgs = {}
|
this._imgs = {}
|
||||||
}
|
}
|
||||||
if (this._imgs[cacheId]) {
|
if (!this._imgs[cacheId]) {
|
||||||
return this._imgs[cacheId]
|
this._imgs[cacheId] = CharImg.getImgs(this.name, costumeCfg, this.isTraveler ? this.elem : '', this.source === 'amber' ? 'png' : 'webp')
|
||||||
|
|
||||||
}
|
}
|
||||||
this._imgs[cacheId] = CharImg.getImgs(this.name, costumeCfg, this.isTraveler ? this.elem : '', this.source === 'amber' ? 'png' : 'webp')
|
let ret = this._imgs[cacheId]
|
||||||
return this._imgs[cacheId]
|
let nPath = `meta/character/${this.name}`
|
||||||
|
if (costumeCfg[1] === 'super') {
|
||||||
|
ret.splash0 = CharImg.getRandomImg(
|
||||||
|
[`profile/super-character/${this.name}`, `profile/normal-character/${this.name}`],
|
||||||
|
[`${nPath}/imgs/splash0.webp`, `${nPath}/imgs/splash${costumeCfg[0]}.webp`, `/${nPath}/imgs/splash.webp`]
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
ret.splash0 = CharImg.getRandomImg(
|
||||||
|
[`profile/normal-character/${this.name}`],
|
||||||
|
[`${nPath}/imgs/splash${costumeCfg[0]}.webp`, `/${nPath}/imgs/splash.webp`]
|
||||||
|
)
|
||||||
|
}
|
||||||
|
return ret
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取详情数据
|
// 获取详情数据
|
||||||
|
@ -5,6 +5,7 @@ import fs from 'fs'
|
|||||||
import lodash from 'lodash'
|
import lodash from 'lodash'
|
||||||
import sizeOf from 'image-size'
|
import sizeOf from 'image-size'
|
||||||
|
|
||||||
|
const rPath = `${process.cwd()}/plugins/miao-plugin/resources`
|
||||||
const CharImg = {
|
const CharImg = {
|
||||||
|
|
||||||
// 获取角色的插画
|
// 获取角色的插画
|
||||||
@ -53,6 +54,33 @@ const CharImg = {
|
|||||||
return ret
|
return ret
|
||||||
},
|
},
|
||||||
|
|
||||||
|
getRandomImg (imgPaths, defImgs = []) {
|
||||||
|
for (let imgPath of imgPaths) {
|
||||||
|
let ret = []
|
||||||
|
for (let type of ['webp', 'png']) {
|
||||||
|
if (fs.existsSync(`${rPath}/${imgPath}.${type}`)) {
|
||||||
|
ret.push(imgPath + '.webp')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (fs.existsSync(`${rPath}/${imgPath}`)) {
|
||||||
|
let imgs = fs.readdirSync(`${rPath}/${imgPath}`).filter((file) => {
|
||||||
|
return /\.(png|webp)$/.test(file)
|
||||||
|
})
|
||||||
|
for (let img of imgs) {
|
||||||
|
ret.push(`${imgPath}/${img}`)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (ret.length > 0) {
|
||||||
|
return lodash.sample(ret)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (let defImg of defImgs) {
|
||||||
|
if (fs.existsSync(`${rPath}/${defImg}`)) {
|
||||||
|
return defImg
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
// 获取角色的图像资源数据
|
// 获取角色的图像资源数据
|
||||||
getImgs (name, costumeCfg = '', travelerElem = '', fileType = 'webp') {
|
getImgs (name, costumeCfg = '', travelerElem = '', fileType = 'webp') {
|
||||||
if (!lodash.isArray(costumeCfg)) {
|
if (!lodash.isArray(costumeCfg)) {
|
||||||
@ -62,7 +90,6 @@ const CharImg = {
|
|||||||
if (!['空', '荧', '旅行者'].includes(name)) {
|
if (!['空', '荧', '旅行者'].includes(name)) {
|
||||||
travelerElem = ''
|
travelerElem = ''
|
||||||
}
|
}
|
||||||
const rPath = `${process.cwd()}/plugins/miao-plugin/resources`
|
|
||||||
const nPath = `/meta/character/${name}/`
|
const nPath = `/meta/character/${name}/`
|
||||||
const tPath = `/meta/character/旅行者/${travelerElem}/`
|
const tPath = `/meta/character/旅行者/${travelerElem}/`
|
||||||
let add = (key, path, path2) => {
|
let add = (key, path, path2) => {
|
||||||
@ -78,31 +105,8 @@ const CharImg = {
|
|||||||
add('face', 'imgs/face', `imgs/face${costumeCfg[0]}`)
|
add('face', 'imgs/face', `imgs/face${costumeCfg[0]}`)
|
||||||
add('side', 'imgs/side', `imgs/side${costumeCfg[0]}`)
|
add('side', 'imgs/side', `imgs/side${costumeCfg[0]}`)
|
||||||
add('gacha', 'imgs/gacha')
|
add('gacha', 'imgs/gacha')
|
||||||
// 随机角色面板图
|
add('splash', 'imgs/splash', `imgs/splash${costumeCfg[0]}`)
|
||||||
imgs.isRandom = false
|
|
||||||
let randomMode = true // 随机模式开关
|
|
||||||
let randomImgPath = `${rPath}/profile/randomMode-character/${name}/`
|
|
||||||
if (randomMode && fs.existsSync(randomImgPath)) {
|
|
||||||
let imgUrls = fs.readdirSync(randomImgPath).filter((fileUrl) => {
|
|
||||||
return fileUrl.includes('.webp')
|
|
||||||
})
|
|
||||||
if (imgUrls.length != 0) {
|
|
||||||
imgs.randomImg = {}
|
|
||||||
imgs.randomImg.path = `profile/randomMode-character/${name}/`
|
|
||||||
imgs.randomImg.urls = imgUrls
|
|
||||||
imgs.isRandom = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 检查彩蛋自定义
|
// 检查彩蛋自定义
|
||||||
if (costumeCfg[1] === 'super' && fs.existsSync(`${rPath}/profile/super-character/${name}.webp`)) {
|
|
||||||
imgs.splash = `profile/super-character/${name}.webp`
|
|
||||||
} else if (costumeCfg[1] === 'super' && fs.existsSync(`${rPath}/${nPath}/imgs/splash0.webp`)) {
|
|
||||||
imgs.splash = `${nPath}imgs/splash0.webp`
|
|
||||||
} else if (fs.existsSync(`${rPath}/profile/normal-character/${name}.webp`)) {
|
|
||||||
imgs.splash = `profile/normal-character/${name}.webp`
|
|
||||||
} else {
|
|
||||||
add('splash', 'imgs/splash', `imgs/splash${costumeCfg[0]}`)
|
|
||||||
}
|
|
||||||
tAdd('card', 'imgs/card')
|
tAdd('card', 'imgs/card')
|
||||||
tAdd('banner', 'imgs/banner')
|
tAdd('banner', 'imgs/banner')
|
||||||
for (let i = 1; i <= 6; i++) {
|
for (let i = 1; i <= 6; i++) {
|
||||||
|
@ -14,7 +14,7 @@ const CharArtis = {
|
|||||||
|
|
||||||
let def = function (attrWeight) {
|
let def = function (attrWeight) {
|
||||||
let title = []
|
let title = []
|
||||||
let weight = lodash.extend({}, attrWeight || usefulAttr[char.name] || { atk: 75, cpct: 100, cdmg: 100 })
|
let weight = lodash.extend({}, attrWeight || usefulAttr[char.name] || { atk: 75, cpct: 100, cdmg: 100, dmg: 100 })
|
||||||
let check = (key, max = 75, maxPlus = 75, isWeapon = true) => {
|
let check = (key, max = 75, maxPlus = 75, isWeapon = true) => {
|
||||||
let original = weight[key] || 0
|
let original = weight[key] || 0
|
||||||
if (original < max) {
|
if (original < max) {
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
{{block 'main'}}
|
{{block 'main'}}
|
||||||
<div class="basic">
|
<div class="basic">
|
||||||
<div class="main-pic"
|
<div class="main-pic"
|
||||||
style="background-image:url({{_res_path}}{{imgs.img}})"></div>
|
style="background-image:url({{_res_path}}{{imgs.splash0}})"></div>
|
||||||
<div class="detail">
|
<div class="detail">
|
||||||
<div class="char-name">{{data.name}}</div>
|
<div class="char-name">{{data.name}}</div>
|
||||||
<div class="char-lv">UID {{uid}} - Lv.{{data.level}}
|
<div class="char-lv">UID {{uid}} - Lv.{{data.level}}
|
||||||
|
@ -9,10 +9,10 @@ body {
|
|||||||
color: #1e1f20;
|
color: #1e1f20;
|
||||||
transform: scale(1.3);
|
transform: scale(1.3);
|
||||||
transform-origin: 0 0;
|
transform-origin: 0 0;
|
||||||
width: 520px;
|
width: 600px;
|
||||||
}
|
}
|
||||||
.container {
|
.container {
|
||||||
width: 520px;
|
width: 600px;
|
||||||
padding: 10px 0 10px 0;
|
padding: 10px 0 10px 0;
|
||||||
background-size: 100% 100%;
|
background-size: 100% 100%;
|
||||||
}
|
}
|
||||||
|
@ -14,11 +14,11 @@ body {
|
|||||||
color: #1e1f20;
|
color: #1e1f20;
|
||||||
transform: scale(1.3);
|
transform: scale(1.3);
|
||||||
transform-origin: 0 0;
|
transform-origin: 0 0;
|
||||||
width: 520px;
|
width: 600px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.container {
|
.container {
|
||||||
width: 520px;
|
width: 600px;
|
||||||
padding: 10px 0 10px 0;
|
padding: 10px 0 10px 0;
|
||||||
background-size: 100% 100%;
|
background-size: 100% 100%;
|
||||||
|
|
||||||
|
BIN
resources/profile/normal-character/荧/普通.webp
Normal file
BIN
resources/profile/normal-character/荧/普通.webp
Normal file
Binary file not shown.
After Width: | Height: | Size: 163 KiB |
BIN
resources/profile/normal-character/荧/深渊公主.png
Normal file
BIN
resources/profile/normal-character/荧/深渊公主.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 814 KiB |
Binary file not shown.
Before Width: | Height: | Size: 731 KiB |
Binary file not shown.
Before Width: | Height: | Size: 201 KiB |
Binary file not shown.
Before Width: | Height: | Size: 476 KiB |
Loading…
Reference in New Issue
Block a user