新的回合变色技能

This commit is contained in:
枫谷剑仙 2021-06-11 19:55:23 +08:00
parent 98085075a0
commit 62d9928fef
1 changed files with 58 additions and 30 deletions

View File

@ -1449,6 +1449,9 @@ function parseSkillDescription(skill) {
case 223:
str = `${sk[0]}连击以上时,追加${sk[1].bigNumberToString()}点固定伤害`;
break;
case 224:
str = `${sk[0]}回合内,敌人全体变为${attrN(sk[1])}属性。(不受防护盾的影响)`;
break;
default:
str = `未知的技能类型${type}(No.${id})`;
//开发部分
@ -3508,37 +3511,62 @@ function parseSkillDescription(skill) {
b_s.params.map(id=>Skills[id]).find(subskill => subskill.type == searchType).params[0];
return a_pC - b_pC;
})},
{name:"改变敌人属性(按属性排序)",function:cards=>cards.filter(card=>{
const searchType = 153;
const skill = Skills[card.activeSkillId];
if (skill.type == searchType)
return true;
else if (skill.type == 116 || skill.type == 118){
const subskills = skill.params.map(id=>Skills[id]);
return subskills.some(subskill=>subskill.type == searchType);
{name:"改变敌人属性(按属性排序)",
function:cards=>{
//获取属性变化
function getAttrChange(ls)
{
if (!ls) return null;
const sk = ls.params;
switch (ls.type)
{
case 153: //永久变色
return sk[0];
case 224: //回合变色
return sk[1] || 0;
default:
return null;
}
}
const searchTypeArray = [153, 224];
return cards.filter(card=>{
const skill = getCardActiveSkill(card, searchTypeArray);
return getAttrChange(skill) != null;
}).sort((a,b)=>{
const a_s = getCardActiveSkill(a, searchTypeArray), b_s = getCardActiveSkill(b, searchTypeArray);
let a_pC = getAttrChange(a_s),b_pC = getAttrChange(b_s);
return a_pC - b_pC;
})
},
addition:card=>{
//获取属性变化
function getAttrChange(ls)
{
if (!ls) return null;
const sk = ls.params;
switch (ls.type)
{
case 153: //永久变色
return sk[0];
case 224: //回合变色
return sk[1] || 0;
default:
return null;
}
}
const searchTypeArray = [153, 224];
const skill = getCardActiveSkill(card, searchTypeArray);
const sk = skill.params;
const colors = [getAttrChange(skill)];
const fragment = document.createDocumentFragment();
if (skill.type == 224)
fragment.appendChild(document.createTextNode(`${sk[0]}T,`));
fragment.appendChild(document.createTextNode(`敌→`));
fragment.appendChild(createOrbsList(colors));
return fragment;
}
}).sort((a,b)=>{
const searchType = 153;
const a_s = Skills[a.activeSkillId], b_s = Skills[b.activeSkillId];
let a_pC = 0,b_pC = 0;
a_pC = (a_s.type == searchType) ?
a_s.params[0] :
a_s.params.map(id=>Skills[id]).find(subskill => subskill.type == searchType).params[0];
b_pC = (b_s.type == searchType) ?
b_s.params[0] :
b_s.params.map(id=>Skills[id]).find(subskill => subskill.type == searchType).params[0];
return a_pC - b_pC;
}),addition:card=>{
const searchTypeArray = [153];
const skill = getCardSkill(card, searchTypeArray);
const sk = skill.params;
const colors = [sk[0]];
const fragment = document.createDocumentFragment();
fragment.appendChild(document.createTextNode(`敌→`));
fragment.appendChild(createOrbsList(colors));
return fragment;
}},
},
{name:"受伤反击 buff",function:cards=>cards.filter(card=>{
const searchType = 60;
const skill = Skills[card.activeSkillId];