角色面板显示评分规则名、有益/有效词条数

This commit is contained in:
UCPr 2025-04-01 23:22:56 +08:00
parent b256890166
commit cf553ecaab
4 changed files with 190 additions and 115 deletions

View file

@ -262,7 +262,9 @@ export class ZZZAvatarInfo {
this.isNew = isNew;
/** @type {number} 等级级别(取十位数字)*/
this.level_rank = Math.floor(this.level / 10);
this.scoreWeight = formatScoreWeight(scoreFnc[this.id] && scoreFnc[this.id](this)?.[1]) || scoreWeight[this.id];
const weight = scoreFnc[this.id] && scoreFnc[this.id](this);
this.weightRule = weight?.[0] || '默认';
this.scoreWeight = formatScoreWeight(weight?.[1]) || scoreWeight[this.id];
for (const equip of this.equip) {
equip.get_score(this.scoreWeight);
}

View file

@ -492,19 +492,23 @@
.card .equip-stats {
display: flex;
padding: 0 1.8em;
height: 6em;
height: 7.5em;
}
.card .equip-stats .equip-score {
.card .equip-stats .box1 {
width: 30%;
border: #707070 solid;
border-width: 0.2em 0 0.2em 0.2em;
border-radius: 0.6em 0 0 0.6em;
}
.card .equip-stats .box1 .equip-score {
height: 80%;
border: #707070 solid;
border-width: 0 0 0.1em 0;
display: flex;
justify-content: center;
font-size: 1em;
align-items: center;
width: 30%;
}
.card .equip-stats .equip-score .comment-box {
.card .equip-stats .box1 .equip-score .comment-box {
font-size: 1.2em;
width: 2em;
display: flex;
@ -518,30 +522,43 @@
position: relative;
z-index: 1;
}
.card .equip-stats .equip-score .value {
.card .equip-stats .box1 .equip-score .value {
border: 0.1em solid rgb(155, 155, 155);
border-left: none;
padding: 0.1em 1em 0.1em 1em;
margin-left: -0.6em;
border-radius: 0 1em 1em 0;
}
.card .equip-stats .equip-score .value .subt {
.card .equip-stats .box1 .equip-score .value .subt {
font-size: 0.8em;
}
.card .equip-stats .property-stats {
.card .equip-stats .box1 .weight-rule {
height: 20%;
font-size: 0.8em;
color: #aaa;
display: flex;
justify-content: center;
align-items: center;
overflow: hidden;
}
.card .equip-stats .box2 {
width: 70%;
height: 100%;
border: #707070 solid;
border-width: 0.2em;
border-radius: 0 0.6em 0.6em 0;
}
.card .equip-stats .box2 .property-stats {
height: 80%;
border: #707070 solid;
border-width: 0 0 0.125em 0;
display: flex;
flex-direction: column;
flex-wrap: wrap;
font-size: 0.8em;
align-items: center;
border: #707070 solid;
border-width: 0.2em;
border-radius: 0 0.6em 0.6em 0;
overflow: hidden;
}
.card .equip-stats .property-stats .stat-item {
.card .equip-stats .box2 .property-stats .stat-item {
width: 33.33%;
height: 33.33%;
padding: 0 0.2em;
@ -552,27 +569,28 @@
color: #eee;
border: #707070 0.1em solid;
}
.card .equip-stats .property-stats .stat-item:nth-child(7) {
.card .equip-stats .box2 .property-stats .stat-item:nth-child(7) {
border-radius: 0 0.4em 0 0;
}
.card .equip-stats .property-stats .stat-item:nth-child(9) {
border-radius: 0 0 0.4em 0;
.card .equip-stats .box2 .property-stats .stat-item:nth-child(3n) {
border: #707070 solid;
border-width: 0.1em 0.1em 0 0.1em;
}
.card .equip-stats .property-stats .stat-item.great {
.card .equip-stats .box2 .property-stats .stat-item.great {
color: rgb(249, 189, 64);
}
.card .equip-stats .property-stats .stat-item.good {
.card .equip-stats .box2 .property-stats .stat-item.good {
color: rgb(238, 207, 139);
}
.card .equip-stats .property-stats .stat-item.useless {
.card .equip-stats .box2 .property-stats .stat-item.useless {
color: #999999;
}
.card .equip-stats .property-stats .stat-item span.title {
.card .equip-stats .box2 .property-stats .stat-item span.title {
padding-left: 0.1em;
text-align: left;
width: 48%;
}
.card .equip-stats .property-stats .stat-item span.title span.count {
.card .equip-stats .box2 .property-stats .stat-item span.title span.count {
display: inline-block;
text-align: center;
background-color: black;
@ -581,12 +599,23 @@
border: #696969 0.15em solid;
border-radius: 0.4em;
}
.card .equip-stats .property-stats .stat-item span.value {
.card .equip-stats .box2 .property-stats .stat-item span.value {
padding-right: 0.2em;
width: 52%;
overflow: hidden;
text-align: right;
}
.card .equip-stats .box2 .useful-stats {
height: 20%;
font-size: 0.8em;
color: #aaa;
display: flex;
justify-content: center;
align-items: center;
overflow: hidden;
border: #707070 solid;
border-width: 0 0.1em 0 0.1em;
}
.card .equip-list {
width: 100%;
display: grid;

View file

@ -141,6 +141,7 @@
</div>
{{if charData.equip_score !== false}}
<div class="equip-stats">
<div class="box1">
<div class="equip-score {{charData.equip_comment}}">
<div class="comment-box">
<div class="comment">{{charData.equip_comment}}</div>
@ -150,6 +151,9 @@
<span class="subt"></span>
</div>
</div>
<div class="weight-rule">规则:{{charData.weightRule || '默认'}}</div>
</div>
<div class="box2">
<div class="property-stats">
{{set stats = charData.propertyStats.slice(0, 9)}}
{{each stats item}}
@ -162,6 +166,13 @@
<div class="stat-item"></div>
<% } %>
</div>
<div class="useful-stats">有益词条数:{{
stats.reduce((acc, stat) => stat.weight ? acc + stat.count : acc, 0)
}} 有效词条数:{{
(stats.reduce((acc, stat) => acc + stat.count * stat.weight, 0)).toFixed(2)
}}
</div>
</div>
</div>
{{/if}}
<div class="equip-list">

View file

@ -481,17 +481,21 @@
.equip-stats {
display: flex;
padding: 0 1.8em;
height: 6em;
height: 7.5em;
.equip-score {
.box1 {
width: 30%;
border: #707070 solid;
border-width: 0.2em 0 0.2em 0.2em;
border-radius: 0.6em 0 0 0.6em;
.equip-score {
height: 80%;
border: #707070 solid;
border-width: 0 0 0.1em 0;
display: flex;
justify-content: center;
font-size: 1em;
align-items: center;
width: 30%;
.comment-box {
font-size: 1.2em;
width: 2em;
@ -518,17 +522,32 @@
}
}
.property-stats {
.weight-rule {
height: 20%;
font-size: 0.8em;
color: #aaa;
display: flex;
justify-content: center;
align-items: center;
overflow: hidden;
}
}
.box2 {
width: 70%;
height: 100%;
border: #707070 solid;
border-width: 0.2em;
border-radius: 0 0.6em 0.6em 0;
.property-stats {
height: 80%;
border: #707070 solid;
border-width: 0 0 0.125em 0;
display: flex;
flex-direction: column;
flex-wrap: wrap;
font-size: 0.8em;
align-items: center;
border: #707070 solid;
border-width: 0.2em;
border-radius: 0 0.6em 0.6em 0;
overflow: hidden;
.stat-item {
@ -546,8 +565,9 @@
border-radius: 0 0.4em 0 0;
}
&:nth-child(9) {
border-radius: 0 0 0.4em 0;
&:nth-child(3n){
border: #707070 solid;
border-width: 0.1em 0.1em 0 0.1em;
}
&.great {
@ -586,6 +606,19 @@
}
}
}
.useful-stats {
height: 20%;
font-size: 0.8em;
color: #aaa;
display: flex;
justify-content: center;
align-items: center;
overflow: hidden;
border: #707070 solid;
border-width: 0 0.1em 0 0.1em;
}
}
}
.equip-list {