Miao-Yunzai/plugins/genshin/model/deck.js

58 lines
1.6 KiB
JavaScript

import base from './base.js'
import MysInfo from './mys/mysInfo.js'
import lodash from 'lodash'
export default class Deck extends base {
constructor(e) {
super(e)
this.model = 'deck'
this.headIndexStyle = `<style> .head_box { background: url(${this.screenData.pluResPath}img/roleIndex/namecard/${lodash.random(1, 8)}.png) #f5f5f5; background-position-x: 30px; background-repeat: no-repeat; border-radius: 15px; font-family: tttgbnumber; padding: 10px 20px; position: relative; background-size: auto 101%; }</style>`
}
static async get(e, id, list = false) {
let deck = new Deck(e)
return await deck.getIndex(id, list)
}
async getIndex(id, list) {
let seed_id = lodash.sample('abcdefghijklmnopqrstuvwxyz0123456789', 16).replace(/,/g, '')
let device_fp = await MysInfo.get(this.e, 'getFp', {
seed_id
})
let res = await MysInfo.get(this.e, 'deckList', {
headers: {
'x-rpc-device_fp': device_fp?.data?.device_fp
}
})
if (res?.retcode !== 0) return false
let Data
if (!list) {
for (let i of res.data.deck_list) {
if (i.id == id) Data = i
}
if (!Data) {
this.e.reply(`无牌组${id},请查看#七圣卡组列表`)
return false
}
} else {
this.model = 'deckList'
Data = res.data.deck_list
}
/** 截图数据 */
let data = {
quality: 80,
...this.screenData,
uid: this.e.uid,
saveId: this.e.uid,
nickname: res.data.nickname,
level: res.data.level,
Data,
headIndexStyle: this.headIndexStyle
}
return data
}
}