From ab50879a601b21b97081b7570465381cc4415bf3 Mon Sep 17 00:00:00 2001 From: mengxinzxz <2223529500@qq.com> Date: Wed, 13 Mar 2024 17:35:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=9A=90=E5=8C=BF=E8=A1=80?= =?UTF-8?q?=E9=87=8F=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- layout/default/layout.css | 6 ++++ noname/library/element/player.js | 46 +++++++++++++++++------------ theme/style/hp/image/hidden_hp.png | Bin 0 -> 4082 bytes 3 files changed, 33 insertions(+), 19 deletions(-) create mode 100644 theme/style/hp/image/hidden_hp.png diff --git a/layout/default/layout.css b/layout/default/layout.css index 919c23090..6149f1b2e 100644 --- a/layout/default/layout.css +++ b/layout/default/layout.css @@ -2688,6 +2688,12 @@ div:not(.handcards)>.card>.info>span, background: rgba(63, 119, 173,1); border: 1px solid rgba(63, 119, 173, 1); } +.hp[data-condition="hidden"]>div:not(.lost):not(.shield) { + background-image:url('../../theme/style/hp/image/hidden_hp.png') !important; + width: 12px; + height: 12px; + background-size: 100% 100%; +} .hp[data-condition="high"]>div:not(.lost):not(.shield) { background: rgba(57, 123, 4,1); border: 1px solid rgba(39, 79, 7, 1); diff --git a/noname/library/element/player.js b/noname/library/element/player.js index b72b3f7fe..bca4e52a7 100644 --- a/noname/library/element/player.js +++ b/noname/library/element/player.js @@ -2099,6 +2099,7 @@ export class Player extends HTMLDivElement { } //原有函数 init(character, character2, skill, update) { + let hidden = false; if (typeof character == 'string' && !lib.character[character]) { lib.character[character] = get.character(character); } @@ -2154,7 +2155,7 @@ export class Player extends HTMLDivElement { skills = []; this.name = 'unknown'; this.sex = 'male'; - this.storage.nohp = true; + hidden = true; skills.add('g_hidden_ai'); } if (character2 && lib.character[character2]) { @@ -2208,17 +2209,19 @@ export class Player extends HTMLDivElement { if (info2[4].includes('hiddenSkill') && !this.noclick) { if (!this.hiddenSkills) this.hiddenSkills = []; this.hiddenSkills.addArray(info2[3]); - this.storage.nohp = true; + hidden = true; skills.add('g_hidden_ai'); } else skills = skills.concat(info2[3]); } - if (this.storage.nohp) { + if (this.storage.nohp || hidden) { this.storage.rawHp = this.hp; this.storage.rawMaxHp = this.maxHp; this.hp = 1; this.maxHp = 1; - this.node.hp.hide(); + if (this.storage.nohp) { + this.node.hp.hide(); + } } if (skill != false) { skills = skills.filter(skill => { @@ -3050,20 +3053,22 @@ export class Player extends HTMLDivElement { } } if (!this.storage.nohp) { - if (this.maxHp == Infinity) { + const hidden = (this.classList.contains('unseen_show') || this.classList.contains('unseen2_show')); + const maxHp = (hidden ? 1 : this.maxHp); + if (maxHp == Infinity) { hp.innerHTML = '∞'; } - else if (game.layout == 'default' && this.maxHp > 14) { - hp.innerHTML = this.hp + '/' + this.maxHp; + else if (game.layout == 'default' && maxHp > 14) { + hp.innerHTML = this.hp + '/' + maxHp; hp.classList.add('text'); } else if (get.is.newLayout() && ( - this.maxHp > 9 || - (this.maxHp > 5 && this.classList.contains('minskin')) || - ((game.layout == 'mobile' || game.layout == 'long') && this.dataset.position == 0 && this.maxHp > 7) + maxHp > 9 || + (maxHp > 5 && this.classList.contains('minskin')) || + ((game.layout == 'mobile' || game.layout == 'long') && this.dataset.position == 0 && maxHp > 7) )) { - hp.innerHTML = this.hp + '
/
' + this.maxHp + '
'; + hp.innerHTML = this.hp + '
/
' + maxHp + '
'; if (this.hp == 0) { hp.lastChild.classList.add('lost'); } @@ -3074,16 +3079,16 @@ export class Player extends HTMLDivElement { hp.innerHTML = ''; hp.classList.remove('text'); hp.classList.remove('textstyle'); - while (this.maxHp > hp.childNodes.length) { + while (maxHp > hp.childNodes.length) { ui.create.div(hp); } - while (Math.max(0, this.maxHp) < hp.childNodes.length) { + while (Math.max(0, maxHp) < hp.childNodes.length) { hp.removeChild(hp.lastChild); } - for (var i = 0; i < this.maxHp; i++) { + for (var i = 0; i < maxHp; i++) { var index = i; if (get.is.newLayout()) { - index = this.maxHp - i - 1; + index = maxHp - i - 1; } if (i < this.hp) { hp.childNodes[index].classList.remove('lost'); @@ -3092,23 +3097,26 @@ export class Player extends HTMLDivElement { hp.childNodes[index].classList.add('lost'); } } - // if(this.maxHp==9){ + // if(maxHp==9){ // hp.classList.add('long'); // } // else{ // hp.classList.remove('long'); // } } - if (hp.classList.contains('room')) { + if (hidden) { + hp.dataset.condition = 'hidden'; + } + else if (hp.classList.contains('room')) { hp.dataset.condition = 'high'; } else if (this.hp == 0) { hp.dataset.condition = ''; } - else if (this.hp > Math.round(this.maxHp / 2) || this.hp === this.maxHp) { + else if (this.hp > Math.round(maxHp / 2) || this.hp === maxHp) { hp.dataset.condition = 'high'; } - else if (this.hp > Math.floor(this.maxHp / 3)) { + else if (this.hp > Math.floor(maxHp / 3)) { hp.dataset.condition = 'mid'; } else { diff --git a/theme/style/hp/image/hidden_hp.png b/theme/style/hp/image/hidden_hp.png new file mode 100644 index 0000000000000000000000000000000000000000..098a611a1d90323eeb354818ca50e0d63bd1a493 GIT binary patch literal 4082 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 literal 0 HcmV?d00001