2022-06-17 15:10:02 +08:00
|
|
|
|
import {
|
|
|
|
|
segment
|
|
|
|
|
} from "oicq";
|
|
|
|
|
import fs from "fs";
|
2022-06-20 21:43:24 +08:00
|
|
|
|
import Data from "../components/Data.js"
|
2022-06-17 15:10:02 +08:00
|
|
|
|
import path from 'path';
|
2022-06-20 21:43:24 +08:00
|
|
|
|
import fetch from "node-fetch";
|
2022-06-17 15:10:02 +08:00
|
|
|
|
const _path = process.cwd();
|
|
|
|
|
const __dirname = path.resolve();
|
|
|
|
|
|
2022-06-20 21:43:24 +08:00
|
|
|
|
const list = ["shiwu_tujian", "yuanmo_tujian"]
|
|
|
|
|
export async function AtlasAlias(e) {
|
|
|
|
|
if (await roleInfo(e)) return true;
|
|
|
|
|
if (await weaponInfo(e)) return true;
|
|
|
|
|
// if (await foodInfo(e)) return true;
|
|
|
|
|
if (await RelicsInfo(e)) return true;
|
|
|
|
|
// if (await monsterInfo(e)) return true;
|
2022-06-24 22:01:48 +08:00
|
|
|
|
var name = e.msg.replace(/#|#|信息|图鉴|命座|天赋|突破|圣遗物|食物|食材|的|特殊|材|料|特色|料理|理|色/g, "");
|
2022-06-20 21:43:24 +08:00
|
|
|
|
send_Msg(e, "all", name)
|
2022-06-20 22:52:41 +08:00
|
|
|
|
return true;
|
2022-06-20 21:43:24 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2022-06-17 15:10:02 +08:00
|
|
|
|
export async function roleInfo(e) {
|
|
|
|
|
// let msg=e.msg.replace(/#|图鉴/g,"");
|
|
|
|
|
let msg = e.msg.replace(/#|#|信息|图鉴|命座|天赋|突破/g, "");
|
|
|
|
|
let id = YunzaiApps.mysInfo.roleIdToName(msg);
|
|
|
|
|
let name;
|
|
|
|
|
if (["10000005", "10000007", "20000000"].includes(id)) {
|
|
|
|
|
if (!["风主", "岩主", "雷主"].includes(msg)) {
|
|
|
|
|
e.reply("请选择:风主图鉴、岩主图鉴、雷主图鉴");
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
name = msg;
|
|
|
|
|
} else {
|
|
|
|
|
name = YunzaiApps.mysInfo.roleIdToName(id, true);
|
|
|
|
|
if (!name) return false;
|
|
|
|
|
}
|
2022-06-18 21:30:24 +08:00
|
|
|
|
send_Msg(e, "juese_tujian", name)
|
2022-06-17 15:10:02 +08:00
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
2022-06-18 21:30:24 +08:00
|
|
|
|
const send_Msg = function(e, type, name) {
|
2022-06-24 22:01:48 +08:00
|
|
|
|
let path = `${_path}/plugins/xiaoyao-cvs-plugin/resources/xiaoyao-plus/${type}/${name}.png`
|
|
|
|
|
if (fs.existsSync(path)) {
|
|
|
|
|
e.reply(segment.image(`file:///${path}`));
|
|
|
|
|
return true;
|
|
|
|
|
}
|
2022-06-20 21:43:24 +08:00
|
|
|
|
if (type == "all") {
|
|
|
|
|
for (let val of list) {
|
|
|
|
|
let new_name = info_img(e, Data.readJSON(`${_path}/plugins/xiaoyao-cvs-plugin/resources/Atlas_alias/`,
|
|
|
|
|
val), name)
|
|
|
|
|
if (new_name) {
|
|
|
|
|
name = new_name
|
|
|
|
|
type = val;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-06-24 22:01:48 +08:00
|
|
|
|
path = `${_path}/plugins/xiaoyao-cvs-plugin/resources/xiaoyao-plus/${type}/${name}.png`
|
2022-06-17 15:10:02 +08:00
|
|
|
|
if (!fs.existsSync(path)) {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
e.reply(segment.image(`file:///${path}`));
|
2022-06-19 18:33:42 +08:00
|
|
|
|
return true;
|
2022-06-17 15:10:02 +08:00
|
|
|
|
}
|
|
|
|
|
let weapon = new Map();
|
|
|
|
|
let weaponFile = [];
|
|
|
|
|
await init();
|
|
|
|
|
export async function init(isUpdate = false) {
|
2022-06-18 21:30:24 +08:00
|
|
|
|
let weaponJson = JSON.parse(fs.readFileSync("./config/genshin/weapon.json", "utf8"));
|
|
|
|
|
for (let i in weaponJson) {
|
|
|
|
|
for (let val of weaponJson[i]) {
|
|
|
|
|
weapon.set(val, i);
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-06-21 22:03:01 +08:00
|
|
|
|
let paths="./plugins/xiaoyao-cvs-plugin/resources/xiaoyao-plus/wuqi_tujian";
|
|
|
|
|
if (!fs.existsSync(paths)) {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
weaponFile = fs.readdirSync(paths);
|
2022-06-18 21:30:24 +08:00
|
|
|
|
for (let val of weaponFile) {
|
|
|
|
|
let name = val.replace(".png", "");
|
|
|
|
|
weapon.set(name, name);
|
|
|
|
|
}
|
2022-06-17 15:10:02 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export async function weaponInfo(e) {
|
|
|
|
|
|
2022-06-18 21:30:24 +08:00
|
|
|
|
let msg = e.msg || '';
|
|
|
|
|
if (e.atBot) {
|
|
|
|
|
msg = "#" + msg.replace("#", "");
|
|
|
|
|
}
|
2022-06-19 18:50:51 +08:00
|
|
|
|
if (!/(#*(.*)(信息|图鉴|突破|武器|材料)|#(.*))$/.test(msg)) return;
|
2022-06-17 15:10:02 +08:00
|
|
|
|
|
2022-06-19 18:50:51 +08:00
|
|
|
|
let name = weapon.get(msg.replace(/#|#|信息|图鉴|突破|武器|材料/g, ""));
|
2022-06-17 15:10:02 +08:00
|
|
|
|
|
2022-06-18 21:30:24 +08:00
|
|
|
|
if (name) {
|
|
|
|
|
send_Msg(e, "wuqi_tujian", name)
|
|
|
|
|
return true;
|
|
|
|
|
}
|
2022-06-17 15:10:02 +08:00
|
|
|
|
|
2022-06-18 21:30:24 +08:00
|
|
|
|
return false;
|
2022-06-17 15:10:02 +08:00
|
|
|
|
}
|
2022-06-18 12:01:41 +08:00
|
|
|
|
|
2022-06-18 21:30:24 +08:00
|
|
|
|
export async function RelicsInfo(e) {
|
|
|
|
|
let msg = e.msg || '';
|
|
|
|
|
if (e.atBot) {
|
|
|
|
|
msg = "#" + msg.replace("#", "");
|
|
|
|
|
}
|
2022-06-20 21:43:24 +08:00
|
|
|
|
// if (!/(#*圣遗物(.*)|#(.*))$/.test(msg)) return;
|
|
|
|
|
let name = msg.replace(/#|#|信息|副本|本|圣遗物|图鉴/g, "");
|
|
|
|
|
let response = await fetch(`https://info.minigg.cn/artifacts?query=${encodeURIComponent(name)}`);
|
|
|
|
|
let res = await response.json();
|
|
|
|
|
if (res?.errcode == "10006") return false;
|
|
|
|
|
name = res["name"];
|
2022-06-18 21:30:24 +08:00
|
|
|
|
if (name) {
|
|
|
|
|
send_Msg(e, "shengyiwu_tujian", name)
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
}
|
2022-06-20 21:43:24 +08:00
|
|
|
|
const info_img = function(e, list, name) {
|
|
|
|
|
for (let i in list) {
|
|
|
|
|
for (let val of list[i]) {
|
2022-06-21 10:13:29 +08:00
|
|
|
|
if (val == name||i==name) {
|
2022-06-20 21:43:24 +08:00
|
|
|
|
return i;
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-06-19 18:33:42 +08:00
|
|
|
|
}
|
|
|
|
|
}
|