解决回复力的筛选问题

This commit is contained in:
枫谷剑仙 2021-08-14 06:08:52 +08:00
parent 93dd993e05
commit 1280c4598f
2 changed files with 10 additions and 9 deletions

View File

@ -2246,21 +2246,22 @@ const specialSearchFunctions = (function() {
const sk = as.params; const sk = as.params;
if (as.type == 228) if (as.type == 228)
{ {
return sk[4] || 0; return sk[4];
}else }else
{ {
return sk.slice(1,sk.length>2?-1:undefined).includes(5) && sk.length > 2 ? sk[sk.length-1] : 0; return sk.slice(1,sk.length>2?-1:undefined).includes(5) ? (sk.length > 2 ? sk[sk.length-1] : 0) : null;
} }
} }
return cards.filter(card=>{ return cards.filter(card=>{
const skills = getCardActiveSkills(card, searchTypeArray); const skills = getCardActiveSkills(card, searchTypeArray);
if (skills.length) if (skills.length)
{ {
return skills.some(as=>getRecScale(as) > 0); return skills.some(as=>getRecScale(as) != null);
}else return false; }else return false;
}).sort((a,b)=>{ }).sort((a,b)=>{
const a_s = getCardActiveSkills(a, searchTypeArray), b_s = getCardActiveSkills(b, searchTypeArray); const a_s = getCardActiveSkills(a, searchTypeArray), b_s = getCardActiveSkills(b, searchTypeArray);
const a_sv = a_s.map(a_s=>getRecScale(a_s)).sort().reverse()[0], b_sv = b_s.map(b_s=>getRecScale(b_s)).sort().reverse()[0]; const a_sv = a_s.map(a_s=>getRecScale(a_s)).filter(n=>n!==null).sort().reverse()[0],
b_sv = b_s.map(b_s=>getRecScale(b_s)).filter(n=>n!==null).sort().reverse()[0];
return a_sv - b_sv; return a_sv - b_sv;
}); });
}, },
@ -2271,14 +2272,14 @@ const specialSearchFunctions = (function() {
const sk = as.params; const sk = as.params;
if (as.type == 228) if (as.type == 228)
{ {
return sk[4] || 0; return sk[4];
}else }else
{ {
return sk.slice(1,sk.length>2?-1:undefined).includes(5) && sk.length > 2 ? sk[sk.length-1] : 0; return sk.slice(1,sk.length>2?-1:undefined).includes(5) ? (sk.length > 2 ? sk[sk.length-1] : 0) : null;
} }
} }
const skills = getCardActiveSkills(card, searchTypeArray); const skills = getCardActiveSkills(card, searchTypeArray);
const skill = skills.find(as=>getRecScale(as) > 0); const skill = skills.find(as=>getRecScale(as) != null);
if (skill.type == 228) if (skill.type == 228)
return `回+${getRecScale(skill) / 100}×N`; return `回+${getRecScale(skill) / 100}×N`;
else else

View File

@ -728,7 +728,7 @@ const parsers = {
[48](attr, mul) { return powerUp([attr], null, p.mul({ hp: mul })); }, [48](attr, mul) { return powerUp([attr], null, p.mul({ hp: mul })); },
[49](attr, mul) { return powerUp([attr], null, p.mul({ rcv: mul })); }, [49](attr, mul) { return powerUp([attr], null, p.mul({ rcv: mul })); },
[50](turns, attr, mul) { return activeTurns(turns, powerUp([attr], null, p.mul({ atk: mul }))); }, [50](turns, attr, mul) { return activeTurns(turns, powerUp([attr], null, p.mul({ atk: mul ?? 0 }))); },
[51](turns) { return activeTurns(turns, massAttack()); }, [51](turns) { return activeTurns(turns, massAttack()); },
[52](attr, mul) { return setOrbState([attr], 'enhanced', {enhance: v.percent(mul)}); }, [52](attr, mul) { return setOrbState([attr], 'enhanced', {enhance: v.percent(mul)}); },
[53](mul) { return rateMultiply(v.percent(mul), 'drop'); }, [53](mul) { return rateMultiply(v.percent(mul), 'drop'); },
@ -2035,7 +2035,7 @@ function renderPowerUp(powerUp) {
const operator = mul ? '' : '+'; const operator = mul ? '' : '+';
let list = [['hp', hp], ['atk', atk], ['rcv', rcv]]; let list = [['hp', hp], ['atk', atk], ['rcv', rcv]];
//去除不改变的值 //去除不改变的值
list = list.filter(([, value]) => value !== (mul ? 1 : 0) && value !== 0); list = list.filter(([, value]) => value !== (mul ? 1 : 0));
//&&!(name === 'hp' && value === 0)); //&&!(name === 'hp' && value === 0));
if (list.length === 0) return frg; if (list.length === 0) return frg;