精简角色插画,独立为单独仓库维护
57
apps/admin.js
Normal file
@ -0,0 +1,57 @@
|
||||
import { segment } from "oicq";
|
||||
import fs from "fs";
|
||||
import { Character } from "../components/models.js";
|
||||
import lodash from "lodash";
|
||||
|
||||
import { createRequire } from "module";
|
||||
import { exec } from "child_process";
|
||||
|
||||
const require = createRequire(import.meta.url);
|
||||
|
||||
|
||||
//import {wikiCharacter} from "../modules/wiki.js";
|
||||
|
||||
export const rule = {
|
||||
updateRes: {
|
||||
reg: "#喵喵更新素材",
|
||||
describe: "【#老婆,#老公,#女儿】角色详情",
|
||||
}
|
||||
};
|
||||
|
||||
const _path = process.cwd();
|
||||
const resPath = `${_path}/plugins/miao-plugin/resources/`;
|
||||
|
||||
export async function updateRes(e) {
|
||||
if (!e.checkAuth({ auth: "master" })) {
|
||||
return true;
|
||||
}
|
||||
|
||||
let command = "";
|
||||
if (fs.existsSync(`${resPath}/miao-res-plus/`)) {
|
||||
command = `git -C ${resPath}/miao-res-plus pull`;
|
||||
exec(command, function (error, stdout, stderr) {
|
||||
console.log(stdout);
|
||||
if (stdout === "Already up to date.") {
|
||||
e.reply("素材已经是最新了~");
|
||||
}
|
||||
if (error) {
|
||||
e.reply("素材初始化失败!\nError code: " + error.code + "\n" + error.stack + "\n出错了,可以重试一下。");
|
||||
} else {
|
||||
e.reply("额外素材初始化成功");
|
||||
}
|
||||
});
|
||||
} else {
|
||||
command = `git clone https://gitee.com/yoimiya-kokomi/miao-res-plus.git ${resPath}/miao-res-plus/`;
|
||||
exec(command, function (error, stdout, stderr) {
|
||||
if (error) {
|
||||
e.reply("素材初始化失败!\nError code: " + error.code + "\n" + error.stack + "\n出错了,可以重试一下。");
|
||||
} else {
|
||||
e.reply("额外素材初始化成功");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
|
||||
}
|
@ -423,21 +423,42 @@ function getCharacterData(avatars) {
|
||||
}
|
||||
|
||||
function getCharacterImg(name) {
|
||||
if (!fs.existsSync(`./plugins/miao-plugin/resources/characterImg/${name}/`)) {
|
||||
fs.mkdirSync(`./plugins/miao-plugin/resources/characterImg/${name}/`);
|
||||
|
||||
if (!fs.existsSync(`./plugins/miao-plugin/resources/character-img/${name}/`)) {
|
||||
fs.mkdirSync(`./plugins/miao-plugin/resources/character-img/${name}/`);
|
||||
}
|
||||
|
||||
let list = {};
|
||||
let imgs = fs.readdirSync(`./plugins/miao-plugin/resources/character-img/${name}/`);
|
||||
imgs = imgs.filter((img) => /\.(png|jpg|webp)/.test(img));
|
||||
|
||||
lodash.forEach(imgs, (img) => {
|
||||
list[img] = `character-img/${name}/${img}`
|
||||
});
|
||||
|
||||
const plusPath = `./plugins/miao-plugin/resources/miao-res-plus/`;
|
||||
if (fs.existsSync(plusPath)) {
|
||||
if (!fs.existsSync(`${plusPath}/character-img/${name}/`)) {
|
||||
fs.mkdirSync(`${plusPath}/character-img/${name}/`);
|
||||
}
|
||||
|
||||
let imgs = fs.readdirSync(`${plusPath}/character-img/${name}/`);
|
||||
imgs = imgs.filter((img) => /\.(png|jpg|webp)/.test(img));
|
||||
lodash.forEach(imgs, (img) => {
|
||||
list[img] = `miao-res-plus/character-img/${name}/${img}`
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
let imgs = fs.readdirSync(`./plugins/miao-plugin/resources/characterImg/${name}/`);
|
||||
imgs = imgs.filter((img) => /\.(png|jpg|webp)/.test(img));
|
||||
let img = lodash.sample(imgs);
|
||||
let img = lodash.sample(lodash.values(list));
|
||||
|
||||
if (!img) {
|
||||
name = "default";
|
||||
img = "01.jpg";
|
||||
|
||||
img = "/character-img/default/01.jpg";
|
||||
}
|
||||
let ret = sizeOf(`./plugins/miao-plugin/resources/characterImg/${name}/${img}`);
|
||||
ret.img = `/characterImg/${name}/${img}`;
|
||||
|
||||
let ret = sizeOf(`./plugins/miao-plugin/resources/${img}`);
|
||||
ret.img = img;
|
||||
ret.mode = ret.width > ret.height ? "left" : "bottom";
|
||||
return ret;
|
||||
}
|
||||
|
8
index.js
@ -3,7 +3,9 @@ import { consStat, abyssPct } from "./apps/stat.js";
|
||||
import { wiki } from "./apps/wiki.js";
|
||||
import lodash from "lodash";
|
||||
|
||||
export { character, wife, consStat, abyssPct, wiki };
|
||||
import { rule as adminRule, updateRes } from "./apps/admin.js";
|
||||
|
||||
export { character, wife, consStat, abyssPct, wiki, updateRes };
|
||||
|
||||
|
||||
let rule = {
|
||||
@ -23,12 +25,14 @@ let rule = {
|
||||
},
|
||||
wiki: {
|
||||
reg: "^#.*(天赋|技能|命座|命之座|资料)$",
|
||||
}
|
||||
},
|
||||
...adminRule
|
||||
};
|
||||
|
||||
lodash.forEach(rule, (r) => {
|
||||
r.priority = r.priority || 50;
|
||||
r.prehash = true;
|
||||
r.hashMark = true;
|
||||
});
|
||||
|
||||
export { rule };
|
Before Width: | Height: | Size: 372 KiB After Width: | Height: | Size: 372 KiB |
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 58 KiB |
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 68 KiB After Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 63 KiB |
Before Width: | Height: | Size: 572 KiB After Width: | Height: | Size: 572 KiB |
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 54 KiB |
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 58 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 470 KiB After Width: | Height: | Size: 470 KiB |
Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 53 KiB |
BIN
resources/character-img/八重神子/01.jpg
Normal file
After Width: | Height: | Size: 514 KiB |
BIN
resources/character-img/八重神子/02.jpg
Normal file
After Width: | Height: | Size: 506 KiB |
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 76 KiB |
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
BIN
resources/character-img/刻晴/01.jpg
Normal file
After Width: | Height: | Size: 564 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 330 KiB After Width: | Height: | Size: 330 KiB |
Before Width: | Height: | Size: 322 KiB After Width: | Height: | Size: 322 KiB |
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 271 KiB After Width: | Height: | Size: 271 KiB |
Before Width: | Height: | Size: 224 KiB After Width: | Height: | Size: 224 KiB |
Before Width: | Height: | Size: 225 KiB After Width: | Height: | Size: 225 KiB |
Before Width: | Height: | Size: 245 KiB After Width: | Height: | Size: 245 KiB |
Before Width: | Height: | Size: 255 KiB After Width: | Height: | Size: 255 KiB |
Before Width: | Height: | Size: 424 KiB After Width: | Height: | Size: 424 KiB |
BIN
resources/character-img/安柏/01.jpg
Normal file
After Width: | Height: | Size: 462 KiB |
BIN
resources/character-img/安柏/02.jpg
Normal file
After Width: | Height: | Size: 494 KiB |
Before Width: | Height: | Size: 244 KiB After Width: | Height: | Size: 244 KiB |
Before Width: | Height: | Size: 225 KiB After Width: | Height: | Size: 225 KiB |
Before Width: | Height: | Size: 156 KiB After Width: | Height: | Size: 156 KiB |
Before Width: | Height: | Size: 90 KiB After Width: | Height: | Size: 90 KiB |
Before Width: | Height: | Size: 281 KiB After Width: | Height: | Size: 281 KiB |
Before Width: | Height: | Size: 280 KiB After Width: | Height: | Size: 280 KiB |
Before Width: | Height: | Size: 92 KiB After Width: | Height: | Size: 92 KiB |
Before Width: | Height: | Size: 127 KiB After Width: | Height: | Size: 127 KiB |
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 67 KiB |
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
Before Width: | Height: | Size: 79 KiB After Width: | Height: | Size: 79 KiB |
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 54 KiB |
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 500 KiB After Width: | Height: | Size: 500 KiB |
Before Width: | Height: | Size: 356 KiB After Width: | Height: | Size: 356 KiB |
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
BIN
resources/character-img/珊瑚宫心海/04.jpg
Normal file
After Width: | Height: | Size: 407 KiB |
BIN
resources/character-img/珊瑚宫心海/05.jpg
Normal file
After Width: | Height: | Size: 485 KiB |
BIN
resources/character-img/甘雨/01.jpg
Normal file
After Width: | Height: | Size: 400 KiB |
BIN
resources/character-img/甘雨/02.jpg
Normal file
After Width: | Height: | Size: 393 KiB |
BIN
resources/character-img/甘雨/03.jpg
Normal file
After Width: | Height: | Size: 313 KiB |
BIN
resources/character-img/甘雨/04.jpg
Normal file
After Width: | Height: | Size: 317 KiB |
BIN
resources/character-img/甘雨/05.jpg
Normal file
After Width: | Height: | Size: 468 KiB |
Before Width: | Height: | Size: 98 KiB After Width: | Height: | Size: 98 KiB |
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 110 KiB |
Before Width: | Height: | Size: 85 KiB After Width: | Height: | Size: 85 KiB |
Before Width: | Height: | Size: 151 KiB After Width: | Height: | Size: 151 KiB |
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 61 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 103 KiB |
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
Before Width: | Height: | Size: 356 KiB After Width: | Height: | Size: 356 KiB |
Before Width: | Height: | Size: 330 KiB After Width: | Height: | Size: 330 KiB |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 87 KiB After Width: | Height: | Size: 87 KiB |
Before Width: | Height: | Size: 76 KiB After Width: | Height: | Size: 76 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 577 KiB After Width: | Height: | Size: 577 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 297 KiB After Width: | Height: | Size: 297 KiB |
Before Width: | Height: | Size: 319 KiB After Width: | Height: | Size: 319 KiB |
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB |
Before Width: | Height: | Size: 77 KiB After Width: | Height: | Size: 77 KiB |