58 lines
1.6 KiB
JavaScript
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
|
||
|
}
|
||
|
|
||
|
}
|