From db1b6281a763424a944dc5d867800fe4724aebc5 Mon Sep 17 00:00:00 2001 From: 157 <3619242020@qq.com> Date: Fri, 29 Dec 2023 22:36:58 +0800 Subject: [PATCH] bugfix MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ui.selected.cards范围太大,不宜默认筛选 --- noname/library/element/player.js | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/noname/library/element/player.js b/noname/library/element/player.js index dd1e8c677..6faa9fe95 100644 --- a/noname/library/element/player.js +++ b/noname/library/element/player.js @@ -7904,12 +7904,12 @@ export class Player extends HTMLDivElement { else return true; } if (get.itemtype(viewer) !== 'player') viewer = _status.event.player; - let cards, selected = get.copy(ui.selected.cards); + let cards, selected = []; if (get.itemtype(ignore) === 'cards') selected.addArray(ignore); else if (get.itemtype(ignore) === 'card') selected.add(ignore); if (this === viewer || get.itemtype(viewer) == 'player') cards = this.getKnownCards(viewer); else cards = this.getShownCards(); - count += cards.filter(card => { + cards = cards.filter(card => { if (selected.includes(card)) return false; let name = get.name(card, this); if (name == 'sha' || name == 'hufu' || name == 'yuchanqian') { @@ -7918,9 +7918,10 @@ export class Player extends HTMLDivElement { return true; } return false; - }).length; + }); + count += cards.length; if (count && rvt !== 'count') return true; - let hs = this.getCards('hs').filter(i => !cards.includes(i) && !selected.includes(i)).length; + let hs = this.getCards('hs').filter(i => !cards.includes(i)).length; if (!hs) { if (rvt === 'count') return count; return false; @@ -7946,12 +7947,12 @@ export class Player extends HTMLDivElement { else return true; } if (get.itemtype(viewer) !== 'player') viewer = _status.event.player; - let cards, selected = get.copy(ui.selected.cards); + let cards, selected = []; if (get.itemtype(ignore) === 'cards') selected.addArray(ignore); else if (get.itemtype(ignore) === 'card') selected.add(ignore); if (this === viewer || get.itemtype(viewer) == 'player') cards = this.getKnownCards(viewer); else cards = this.getShownCards(); - count += cards.filter(card => { + cards = cards.filter(card => { if (selected.includes(card)) return false; let name = get.name(card, this); if (name === 'shan' || name === 'hufu') { @@ -7960,9 +7961,10 @@ export class Player extends HTMLDivElement { return true; } return false; - }).length; + }); + count += cards.length; if (count && rvt !== 'count') return true; - let hs = this.getCards('hs').filter(i => !cards.includes(i) && !selected.includes(i)).length; + let hs = this.getCards('hs').filter(i => !cards.includes(i)).length; if (!hs) { if (rvt === 'count') return count; return false;