import plugin from '../../../lib/plugins/plugin.js' import puppeteer from '../../../lib/puppeteer/puppeteer.js' import Deck from '../model/deck.js' export class sevenSaints extends plugin { constructor() { super({ name: '七圣召唤卡组查询', dsc: '原神角色信息查询', event: 'message', priority: 0, rule: [ { reg: '^#*七圣(召唤)?查询(牌|卡)组(列表)?[0-9]{0,2}$', fnc: 'deckIndex' }, { reg: '^#*七圣(召唤)?查询(角色|行动)?(卡)?牌(列表)?$', fnc: 'deck_cards' } ] }) this.button = segment.button([ { text: "牌组", callback: `#七圣召唤查询牌组` }, { text: "角色牌", callback: `#七圣召唤查询角色牌` }, { text: "行动牌", callback: `#七圣召唤查询行动牌` }, ]) } async deckIndex() { let index = this.e.msg.match(/[0-9]{1,2}/g) if (index && index[0]) { await this.deck(index[0]) } else { await this.deck_list() } } async deck(id) { let data = await new Deck(this.e).getIndex(id) if (!data) return let img = await puppeteer.screenshot('deck', data) if (img) await this.reply([img, this.button]) } async deck_list(id = 0) { let data = await new Deck(this.e).getIndex(id, true) if (!data) return let img = await puppeteer.screenshot('deckList', data) if (img) await this.reply([img, this.button]) } async deck_cards(id = 0) { if (this.e.msg.includes('角色')) id = 1 if (this.e.msg.includes('行动')) id = 2 await this.reply('卡牌数据获取中...') let data = await new Deck(this.e).getcard(id) if (!data) return let img = await puppeteer.screenshot('deckCard', data) if (img) await this.reply([img, this.button]) } }