努力添加了一大堆附加显示
This commit is contained in:
parent
1760325e98
commit
a571b0bc7a
|
@ -221,7 +221,11 @@ function parseSkillDescription(skill)
|
|||
|
||||
rowData.forEach((orbType,ci,cArr)=>{
|
||||
const cell = row.insertCell();
|
||||
if (orbType != null) cell.className = `has-orb orb-${orbType}`;
|
||||
cell.className = "orb-icon";
|
||||
if (orbType != null)
|
||||
{
|
||||
cell.setAttribute("data-orb-icon", orbType);
|
||||
}
|
||||
if (ci == 3 && cArr.length > 6) cell.classList.add("board-cell5");
|
||||
});
|
||||
});
|
||||
|
@ -1430,6 +1434,28 @@ function parseSkillDescription(skill)
|
|||
//增加特殊搜索模式
|
||||
(function() {
|
||||
'use strict';
|
||||
//返回卡片的技能
|
||||
function getCardSkill(card, skillTypes, isLeaderSkill = false)
|
||||
{
|
||||
return isLeaderSkill ?
|
||||
getActuallySkill(Skills[card.leaderSkillId], skillTypes) :
|
||||
getActuallySkill(Skills[card.activeSkillId], skillTypes);
|
||||
}
|
||||
//查找到真正起作用的那一个技能
|
||||
function getActuallySkill(skill,skillTypes)
|
||||
{
|
||||
if (skillTypes.includes(skill.type))
|
||||
{
|
||||
return skill;
|
||||
}else if (skill.type == 116 || skill.type == 118 || skill.type == 138)
|
||||
{
|
||||
const subSkills = skill.params.map(id=>Skills[id]);
|
||||
return subSkills.find(subskill => skillTypes.includes(subskill.type));
|
||||
}else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
//获取血倍率
|
||||
function getHPScale(ls)
|
||||
{
|
||||
|
@ -1553,10 +1579,42 @@ function parseSkillDescription(skill)
|
|||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
//创建1个觉醒图标
|
||||
function createAwokenIcon(awokenId)
|
||||
{
|
||||
const icon = document.createElement("icon");
|
||||
icon.className ="awoken-icon";
|
||||
icon.setAttribute("data-awoken-icon", awokenId);
|
||||
return icon;
|
||||
}
|
||||
//产生一个觉醒列表
|
||||
function creatAwokenList(awokens) {
|
||||
const ul = document.createElement("ul");
|
||||
ul.className = "awoken-ul";
|
||||
awokens.forEach(ak=>{
|
||||
const li = ul.appendChild(document.createElement("li"));
|
||||
const icon = li.appendChild(createAwokenIcon(ak));
|
||||
});
|
||||
return ul;
|
||||
}
|
||||
//产生宝珠列表
|
||||
function createOrbsList(orbs)
|
||||
{
|
||||
const ul = document.createElement("ul");
|
||||
ul.className = "board";
|
||||
orbs.forEach(orbType => {
|
||||
const li = ul.appendChild(document.createElement("li"));
|
||||
li.className = `orb-icon`;
|
||||
li.setAttribute("data-orb-icon", orbType);
|
||||
});
|
||||
return ul;
|
||||
}
|
||||
|
||||
const specialSearchFunctions = [
|
||||
{name:"不做筛选",function:cards=>cards},
|
||||
{name:"======队长技======",function:cards=>cards},
|
||||
{name:"队长技固伤追击(按伤害排序,内测附加显示)",function:cards=>{
|
||||
{name:"队长技固伤追击(按伤害排序)",function:cards=>{
|
||||
const searchTypeArray = [199,200,201];
|
||||
function getSkillFixedDamage(skill)
|
||||
{
|
||||
|
@ -1609,7 +1667,7 @@ function parseSkillDescription(skill)
|
|||
getSkillFixedDamage(skill.params.map(id=>Skills[id]).find(subskill => searchTypeArray.includes(subskill.type)));
|
||||
return document.createTextNode(value.bigNumberToString() + "固伤");
|
||||
}},
|
||||
{name:"队长技+C(按+C数排序,内测附加显示)",function:cards=>{
|
||||
{name:"队长技+C(按+C数排序)",function:cards=>{
|
||||
const searchTypeArray = [192,194,206,209,210];
|
||||
function getSkillAddCombo(skill)
|
||||
{
|
||||
|
@ -1664,11 +1722,10 @@ function parseSkillDescription(skill)
|
|||
return 0;
|
||||
}
|
||||
}
|
||||
const skill = Skills[card.leaderSkillId];
|
||||
const value = searchTypeArray.includes(skill.type) ?
|
||||
getSkillAddCombo(skill) :
|
||||
getSkillAddCombo(skill.params.map(id=>Skills[id]).find(subskill => searchTypeArray.includes(subskill.type)));
|
||||
return document.createTextNode(value.bigNumberToString() + "C");
|
||||
const skill = getCardSkill(card, searchTypeArray, true);
|
||||
const sk = skill.params;
|
||||
const value = getSkillAddCombo(skill);
|
||||
return document.createTextNode(`+${value.bigNumberToString()}C${skill.type==210?`/十字`:""}`);
|
||||
}},
|
||||
{name:"7×6 版面",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [162,186];
|
||||
|
@ -1690,7 +1747,7 @@ function parseSkillDescription(skill)
|
|||
return subskills.some(subskill=>searchTypeArray.some(t=>subskill.type == t));
|
||||
}
|
||||
})},
|
||||
{name:"队长技加/减秒(按秒数排序,内测附加显示)",function:cards=>cards.filter(card=>{
|
||||
{name:"队长技加/减秒(按秒数排序)",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [15,185];
|
||||
const skill = Skills[card.leaderSkillId];
|
||||
if (searchTypeArray.some(t=>skill.type == t))
|
||||
|
@ -1718,7 +1775,7 @@ function parseSkillDescription(skill)
|
|||
skill.params.map(id=>Skills[id]).find(subskill => searchTypeArray.includes(subskill.type)).params[0];
|
||||
return document.createTextNode((value > 0 ? "+" : "") + (value/100) + "秒");
|
||||
}},
|
||||
{name:"固定操作时间(按时间排序,内测附加显示)",function:cards=>cards.filter(card=>{
|
||||
{name:"固定操作时间(按时间排序)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 178;
|
||||
const skill = Skills[card.leaderSkillId];
|
||||
if (skill.type == searchType)
|
||||
|
@ -2170,7 +2227,12 @@ function parseSkillDescription(skill)
|
|||
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 = [173];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
return document.createTextNode(`属吸×${sk[0]}T`);
|
||||
}},
|
||||
{name:"破伤吸 buff(按破吸回合排序)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 173;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -2191,7 +2253,12 @@ function parseSkillDescription(skill)
|
|||
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 = [173];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
return document.createTextNode(`伤吸×${sk[0]}T`);
|
||||
}},
|
||||
{name:"双破吸 buff(按破吸回合排序)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 173;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -2212,7 +2279,12 @@ function parseSkillDescription(skill)
|
|||
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 = [173];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
return document.createTextNode(`双破×${sk[0]}T`);
|
||||
}},
|
||||
{name:"贯穿无效盾 buff(按破吸回合排序)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 191;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -2233,7 +2305,12 @@ function parseSkillDescription(skill)
|
|||
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 = [191];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
return document.createTextNode(`破贯×${sk[0]}T`);
|
||||
}},
|
||||
{name:"-----解封类-----",function:cards=>cards},
|
||||
{name:"解封(按解封回合排序)",function:cards=>{
|
||||
const JieFeng_ParamsIndex = type=>type == 179 ? 3 : 0;
|
||||
|
@ -2258,6 +2335,14 @@ function parseSkillDescription(skill)
|
|||
b_s.params.map(id=>Skills[id]).find(subskill => searchTypeArray.includes(subskill.type));
|
||||
return a_pC.params[JieFeng_ParamsIndex(a_pC.type)] - b_pC.params[JieFeng_ParamsIndex(b_pC.type)];
|
||||
});
|
||||
},addition:card=>{
|
||||
const searchTypeArray = [117,179];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const JieFengTurn = skill=>skill.type == 179 ? skill.params[3] : skill.params[0];
|
||||
const value = JieFengTurn(skill);
|
||||
return document.createTextNode(`${value == 9999 ? "全" : value + "T"}解封`);
|
||||
}},
|
||||
{name:"解觉醒(按解觉回合排序)",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [117,179];
|
||||
|
@ -2279,7 +2364,14 @@ function parseSkillDescription(skill)
|
|||
b_s.params[4] :
|
||||
b_s.params.map(id=>Skills[id]).find(subskill => searchTypeArray.includes(subskill.type)).params[4];
|
||||
return a_pC - b_pC;
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [117,179];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const value = sk[4];
|
||||
return document.createTextNode(`${value == 9999 ? "全" : value + "T"}解觉`);
|
||||
}},
|
||||
{name:"解封+觉醒(按解觉醒回合排序)",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [117,179];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -2300,7 +2392,19 @@ function parseSkillDescription(skill)
|
|||
b_s.params[4] :
|
||||
b_s.params.map(id=>Skills[id]).find(subskill => searchTypeArray.includes(subskill.type)).params[4];
|
||||
return a_pC - b_pC;
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [117,179];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const JieFengTurn = skill=>skill.type == 179 ? skill.params[3] : skill.params[0];
|
||||
const value1 = JieFengTurn(skill);
|
||||
const value2 = sk[4];
|
||||
|
||||
return document.createTextNode(value1 == value2 ?
|
||||
`${value1 == 9999 ? "全" : value1 + "T"}解封+觉` :
|
||||
`${value1 == 9999 ? "全" : value1 + "T"}解封,${value2 == 9999 ? "全" : value2 + "T"}解觉`);
|
||||
}},
|
||||
{name:"解禁消珠(按消除回合排序)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 196;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -2321,7 +2425,14 @@ function parseSkillDescription(skill)
|
|||
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 = [196];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const value = sk[0];
|
||||
return document.createTextNode(`${value == 9999 ? "全" : value + "T"}解禁消`);
|
||||
}},
|
||||
{name:"-----锁珠类-----",function:cards=>cards},
|
||||
{name:"解锁",function:cards=>cards.filter(card=>{
|
||||
const searchType = 172;
|
||||
|
@ -2455,7 +2566,15 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>subskill.type == searchType && isOnlyColor(subskill.params, 1));
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [71];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = sk.slice(0,sk.includes(-1)?sk.indexOf(-1):undefined);
|
||||
|
||||
return createOrbsList(colors);
|
||||
}},
|
||||
{name:"普通洗版2色",function:cards=>cards.filter(card=>{
|
||||
function isOnlyColor(sk, colorTypeCount)
|
||||
{
|
||||
|
@ -2470,7 +2589,15 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>subskill.type == searchType && isOnlyColor(subskill.params, 2));
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [71];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = sk.slice(0,sk.includes(-1)?sk.indexOf(-1):undefined);
|
||||
|
||||
return createOrbsList(colors);
|
||||
}},
|
||||
{name:"普通洗版3色",function:cards=>cards.filter(card=>{
|
||||
function isOnlyColor(sk, colorTypeCount)
|
||||
{
|
||||
|
@ -2485,7 +2612,15 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>subskill.type == searchType && isOnlyColor(subskill.params, 3));
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [71];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = sk.slice(0,sk.includes(-1)?sk.indexOf(-1):undefined);
|
||||
|
||||
return createOrbsList(colors);
|
||||
}},
|
||||
{name:"普通洗版4色",function:cards=>cards.filter(card=>{
|
||||
function isOnlyColor(sk, colorTypeCount)
|
||||
{
|
||||
|
@ -2500,7 +2635,15 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>subskill.type == searchType && isOnlyColor(subskill.params, 4));
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [71];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = sk.slice(0,sk.includes(-1)?sk.indexOf(-1):undefined);
|
||||
|
||||
return createOrbsList(colors);
|
||||
}},
|
||||
{name:"普通洗版5色",function:cards=>cards.filter(card=>{
|
||||
function isOnlyColor(sk, colorTypeCount)
|
||||
{
|
||||
|
@ -2515,7 +2658,15 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>subskill.type == searchType && isOnlyColor(subskill.params, 5));
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [71];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = sk.slice(0,sk.includes(-1)?sk.indexOf(-1):undefined);
|
||||
|
||||
return createOrbsList(colors);
|
||||
}},
|
||||
{name:"普通洗版6色以上",function:cards=>cards.filter(card=>{
|
||||
function isOnlyColor(sk, colorTypeCount)
|
||||
{
|
||||
|
@ -2530,7 +2681,15 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>subskill.type == searchType && isOnlyColor(subskill.params, 6));
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [71];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = sk.slice(0,sk.includes(-1)?sk.indexOf(-1):undefined);
|
||||
|
||||
return createOrbsList(colors);
|
||||
}},
|
||||
{name:"固定30个产珠",function:cards=>cards.filter(card=>{
|
||||
function is30(sk)
|
||||
{
|
||||
|
@ -2613,7 +2772,21 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>subskill.type == searchType);
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [127];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = [];
|
||||
for (let ai=0;ai<sk.length;ai+=2)
|
||||
{
|
||||
colors.push(flags(sk[ai+1])[0]);
|
||||
}
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(document.createTextNode(`竖`));
|
||||
fragment.appendChild(createOrbsList(colors));
|
||||
return fragment;
|
||||
}},
|
||||
{name:"产竖(含心)",function:cards=>cards.filter(card=>{
|
||||
function isHeart(sk)
|
||||
{
|
||||
|
@ -2643,7 +2816,22 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>subskill.type == searchType);
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [128];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = [];
|
||||
for (let ai=0;ai<sk.length;ai+=2)
|
||||
{
|
||||
colors.push(flags(sk[ai+1])[0]);
|
||||
}
|
||||
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(document.createTextNode(`横`));
|
||||
fragment.appendChild(createOrbsList(colors));
|
||||
return fragment;
|
||||
}},
|
||||
{name:"2横或以上",function:cards=>cards.filter(card=>{
|
||||
const searchType = 128;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -2702,66 +2890,22 @@ function parseSkillDescription(skill)
|
|||
}
|
||||
})},
|
||||
{name:"----- buff 类-----",function:cards=>cards},
|
||||
{name:"掉落率提升-属性-火",function:cards=>cards.filter(card=>{
|
||||
const searchType = 126;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && (skill.params[0] & 1))
|
||||
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 && (subskill.params[0] & 1));
|
||||
}
|
||||
})},
|
||||
{name:"掉落率提升-属性-水",function:cards=>cards.filter(card=>{
|
||||
const searchType = 126;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && (skill.params[0] & 2))
|
||||
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 && (subskill.params[0] & 2));
|
||||
}
|
||||
})},
|
||||
{name:"掉落率提升-属性-木",function:cards=>cards.filter(card=>{
|
||||
const searchType = 126;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && (skill.params[0] & 4))
|
||||
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 && (subskill.params[0] & 4));
|
||||
}
|
||||
})},
|
||||
{name:"掉落率提升-属性-光",function:cards=>cards.filter(card=>{
|
||||
const searchType = 126;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && (skill.params[0] & 8))
|
||||
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 && (subskill.params[0] & 8));
|
||||
}
|
||||
})},
|
||||
{name:"掉落率提升-属性-暗",function:cards=>cards.filter(card=>{
|
||||
const searchType = 126;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && (skill.params[0] & 16))
|
||||
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 && (subskill.params[0] & 16));
|
||||
}
|
||||
})},
|
||||
{name:"掉落率提升-属性-心",function:cards=>cards.filter(card=>{
|
||||
const searchType = 126;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && (skill.params[0] & 32))
|
||||
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 && (subskill.params[0] & 32));
|
||||
}
|
||||
})},
|
||||
{name:"掉落率提升",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [126];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
return skill;
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [126];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = flags(sk[0]);
|
||||
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(createOrbsList(colors));
|
||||
fragment.appendChild(document.createTextNode(`↓${sk[3]}%×${sk[1]}${sk[1] != sk[2]?`~${sk[2]}`:""}T`));
|
||||
return fragment;
|
||||
}},
|
||||
{name:"掉落率提升-属性-毒、废(顶毒)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 126;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -2927,7 +3071,24 @@ function parseSkillDescription(skill)
|
|||
sortNum = a_pC - b_pC;
|
||||
}
|
||||
return sortNum;
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [3,156];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const fragment = document.createDocumentFragment();
|
||||
if (skill.type == 156)
|
||||
{
|
||||
fragment.appendChild(document.createTextNode(`${sk[5]}%/`));
|
||||
const awokenArr = sk.slice(1,4).filter(s=>s>0);
|
||||
fragment.appendChild(creatAwokenList(awokenArr));
|
||||
fragment.appendChild(document.createTextNode(`×${sk[0]}T`));
|
||||
}else
|
||||
{
|
||||
fragment.appendChild(document.createTextNode(`${sk[1]}%×${sk[0]}T`));
|
||||
}
|
||||
return fragment;
|
||||
}},
|
||||
{name:"全属减伤 100%(无敌)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 3;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -2970,6 +3131,18 @@ function parseSkillDescription(skill)
|
|||
b_s.params.map(id=>Skills[id]).find(subskill => subskill.type == searchType).params[0];
|
||||
return a_pC - b_pC;
|
||||
});
|
||||
},addition:card=>{
|
||||
const searchTypeArray = [21];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = [sk[1]];
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(document.createTextNode(`-`));
|
||||
fragment.appendChild(createOrbsList(colors));
|
||||
fragment.appendChild(document.createTextNode(`×${sk[0]}T`));
|
||||
|
||||
return fragment;
|
||||
}},
|
||||
{name:"变为全体攻击(按回合数排序)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 51;
|
||||
|
@ -3033,7 +3206,12 @@ function parseSkillDescription(skill)
|
|||
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 = [146];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
return document.createTextNode(`${sk[0]}${sk[0]!=sk[1]?`~${sk[1]}`:""}溜`);
|
||||
}},
|
||||
{name:"将自身换为队长",function:cards=>cards.filter(card=>{
|
||||
const searchType = 93;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -3133,7 +3311,12 @@ function parseSkillDescription(skill)
|
|||
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 = [18];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
return document.createTextNode(`威吓×${sk[0]}T`);
|
||||
}},
|
||||
{name:"破防(按防御减少比例排序)",function:cards=>cards.filter(card=>{
|
||||
const searchType = 19;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -3217,7 +3400,17 @@ function parseSkillDescription(skill)
|
|||
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];
|
||||
|
@ -3376,57 +3569,18 @@ function parseSkillDescription(skill)
|
|||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>searchTypeArray.includes(subskill.type));
|
||||
}
|
||||
})},
|
||||
{name:"大炮-属性-火",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [0,1,37,42,58,59,84,85,86,87,110,115,143,144];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (searchTypeArray.includes(skill.type) && skill.id!=0 && getCannonAttr(skill) == 0)
|
||||
return true;
|
||||
else if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>searchTypeArray.includes(subskill.type) && getCannonAttr(subskill) == 0);
|
||||
}
|
||||
})},
|
||||
{name:"大炮-属性-水",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [0,1,37,42,58,59,84,85,86,87,110,115,143,144];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (searchTypeArray.includes(skill.type) && skill.id!=0 && getCannonAttr(skill) == 1)
|
||||
return true;
|
||||
else if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>searchTypeArray.includes(subskill.type) && getCannonAttr(subskill) == 1);
|
||||
}
|
||||
})},
|
||||
{name:"大炮-属性-木",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [0,1,37,42,58,59,84,85,86,87,110,115,143,144];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (searchTypeArray.includes(skill.type) && skill.id!=0 && getCannonAttr(skill) == 2)
|
||||
return true;
|
||||
else if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>searchTypeArray.includes(subskill.type) && getCannonAttr(subskill) == 2);
|
||||
}
|
||||
})},
|
||||
{name:"大炮-属性-光",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [0,1,37,42,58,59,84,85,86,87,110,115,143,144];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (searchTypeArray.includes(skill.type) && skill.id!=0 && getCannonAttr(skill) == 3)
|
||||
return true;
|
||||
else if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>searchTypeArray.includes(subskill.type) && getCannonAttr(subskill) == 3);
|
||||
}
|
||||
})},
|
||||
{name:"大炮-属性-暗",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [0,1,37,42,58,59,84,85,86,87,110,115,143,144];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (searchTypeArray.includes(skill.type) && skill.id!=0 && getCannonAttr(skill) == 4)
|
||||
return true;
|
||||
else if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>Skills[id]);
|
||||
return subskills.some(subskill=>searchTypeArray.includes(subskill.type) && getCannonAttr(subskill) == 4);
|
||||
}
|
||||
})},
|
||||
}),addition:card=>{
|
||||
const searchTypeArray = [0,1,2,35,37,42,58,59,84,85,86,87,110,115,143,144];
|
||||
const skill = getCardSkill(card, searchTypeArray);
|
||||
const sk = skill.params;
|
||||
|
||||
const colors = [getCannonAttr(skill)];
|
||||
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(document.createTextNode(`射`));
|
||||
fragment.appendChild(createOrbsList(colors));
|
||||
return fragment;
|
||||
}},
|
||||
{name:"大炮-属性-释放者自身",function:cards=>cards.filter(card=>{
|
||||
const searchTypeArray = [2,35];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -3729,7 +3883,7 @@ function parseSkillDescription(skill)
|
|||
//searchLabel.appendChild(document.createTextNode(`筛选${index}:`));
|
||||
const specialSearch = searchLi.appendChild(document.createElement("select"));
|
||||
specialSearchFunctions.forEach((sfunc,idx)=>{
|
||||
specialSearch.options.add(new Option(sfunc.name,idx));
|
||||
specialSearch.options.add(new Option(sfunc.name + (sfunc.addition ? "+附加显示" : ""),idx));
|
||||
});
|
||||
return {dom:searchLi,list:specialSearch};
|
||||
}
|
||||
|
|
73
style.css
73
style.css
|
@ -945,10 +945,18 @@ body:not(.solo) .awoken-icon[data-awoken-icon="64"]::after
|
|||
}
|
||||
|
||||
/*搜索结果显示觉醒列表的相关css*/
|
||||
.awoken-preview .awoken-ul{
|
||||
.awoken-preview .awoken-ul,
|
||||
.custom-addition .awoken-ul
|
||||
{
|
||||
width: 75px;
|
||||
}
|
||||
.awoken-preview .awoken-ul>li{
|
||||
.custom-addition ul
|
||||
{
|
||||
display: inline;
|
||||
}
|
||||
.awoken-preview .awoken-ul>li,
|
||||
.custom-addition .awoken-ul>li
|
||||
{
|
||||
display: inline-block;
|
||||
}
|
||||
.awoken-preview .awoken-preview-superAwakenings{
|
||||
|
@ -958,10 +966,14 @@ body:not(.solo) .awoken-icon[data-awoken-icon="64"]::after
|
|||
.awoken-preview .awoken-preview-superAwakenings .awoken-icon{
|
||||
opacity: 0.6;
|
||||
}
|
||||
.awoken-preview .awoken-ul li{
|
||||
.awoken-preview .awoken-ul>li,
|
||||
.custom-addition .awoken-ul>li
|
||||
{
|
||||
margin: 0.5px !important;
|
||||
}
|
||||
.awoken-preview .awoken-icon{
|
||||
.awoken-preview .awoken-icon,
|
||||
.custom-addition .awoken-icon
|
||||
{
|
||||
filter: unset;
|
||||
transform: scale(0.75);
|
||||
margin: calc(-32px * (1 - 0.75) / 2);
|
||||
|
@ -2156,7 +2168,7 @@ body:not(.solo) .awoken-icon[data-awoken-icon="64"]::after
|
|||
{
|
||||
cursor: pointer;
|
||||
}
|
||||
.board td
|
||||
.orb-icon
|
||||
{
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
|
@ -2164,8 +2176,13 @@ body:not(.solo) .awoken-icon[data-awoken-icon="64"]::after
|
|||
border-radius: 50%;
|
||||
padding: 0;
|
||||
text-align: center;
|
||||
display: inline-block;
|
||||
}
|
||||
.board td::before
|
||||
table .orb-icon
|
||||
{
|
||||
display: table-cell;
|
||||
}
|
||||
.orb-icon::before
|
||||
{
|
||||
font-size: 13px;
|
||||
line-height: 13px;
|
||||
|
@ -2173,87 +2190,87 @@ body:not(.solo) .awoken-icon[data-awoken-icon="64"]::after
|
|||
max-height: 100%;
|
||||
max-width: 100%;
|
||||
}
|
||||
.board .orb-0
|
||||
.orb-icon[data-orb-icon="0"]
|
||||
{ /*火*/
|
||||
background-color: #ef3535;
|
||||
}
|
||||
.board .orb-0::before
|
||||
.orb-icon[data-orb-icon="0"]::before
|
||||
{
|
||||
content: "🔥";
|
||||
}
|
||||
.board .orb-1
|
||||
.orb-icon[data-orb-icon="1"]
|
||||
{ /*水*/
|
||||
background-color: #258bed;
|
||||
}
|
||||
.board .orb-1::before
|
||||
.orb-icon[data-orb-icon="1"]::before
|
||||
{
|
||||
content: "🌊";
|
||||
}
|
||||
.board .orb-2
|
||||
.orb-icon[data-orb-icon="2"]
|
||||
{ /*木*/
|
||||
background-color: #28c031;
|
||||
}
|
||||
.board .orb-2::before
|
||||
.orb-icon[data-orb-icon="2"]::before
|
||||
{
|
||||
content: "🍃";
|
||||
}
|
||||
.board .orb-3
|
||||
.orb-icon[data-orb-icon="3"]
|
||||
{ /*光*/
|
||||
background-color: #eded29;
|
||||
}
|
||||
.board .orb-3::before
|
||||
.orb-icon[data-orb-icon="3"]::before
|
||||
{
|
||||
content: "🌞";
|
||||
}
|
||||
.board .orb-4
|
||||
.orb-icon[data-orb-icon="4"]
|
||||
{ /*暗*/
|
||||
background-color: #972ecb;
|
||||
}
|
||||
.board .orb-4::before
|
||||
.orb-icon[data-orb-icon="4"]::before
|
||||
{
|
||||
content: "🦇";
|
||||
}
|
||||
.board .orb-5
|
||||
.orb-icon[data-orb-icon="5"]
|
||||
{ /*心*/
|
||||
background-color: #f8baba;
|
||||
border-radius: 3px;
|
||||
}
|
||||
.board .orb-5::before
|
||||
.orb-icon[data-orb-icon="5"]::before
|
||||
{
|
||||
content: "💗";
|
||||
}
|
||||
.board .orb-6
|
||||
.orb-icon[data-orb-icon="6"]
|
||||
{ /*废*/
|
||||
background-color: #d3d3d3;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.board .orb-6::before
|
||||
.orb-icon[data-orb-icon="6"]::before
|
||||
{
|
||||
content: "🕷️";
|
||||
}
|
||||
.board .orb-7
|
||||
.orb-icon[data-orb-icon="7"]
|
||||
{ /*毒*/
|
||||
background-color: #e831f3;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.board .orb-7::before
|
||||
.orb-icon[data-orb-icon="7"]::before
|
||||
{
|
||||
content: "💀";
|
||||
}
|
||||
.board .orb-8
|
||||
.orb-icon[data-orb-icon="8"]
|
||||
{ /*剧毒*/
|
||||
background-color: #670181;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.board .orb-8::before
|
||||
.orb-icon[data-orb-icon="8"]::before
|
||||
{
|
||||
content: "☠️";
|
||||
}
|
||||
.board .orb-9
|
||||
.orb-icon[data-orb-icon="9"]
|
||||
{ /*炸弹*/
|
||||
background-color: #7c7c7c;
|
||||
}
|
||||
.board .orb-9::before
|
||||
.orb-icon[data-orb-icon="9"]::before
|
||||
{
|
||||
content: "💣";
|
||||
}
|
||||
|
@ -2299,10 +2316,10 @@ body:not(.solo) .awoken-icon[data-awoken-icon="64"]::after
|
|||
border-top: 2px solid white;
|
||||
margin-top: 5px;
|
||||
}
|
||||
.dialog .dialog-content .additional-string::before
|
||||
/*.dialog .dialog-content .additional-string::before
|
||||
{
|
||||
content: "其他語言";
|
||||
}
|
||||
}*/
|
||||
.dialog .dialog-control
|
||||
{
|
||||
text-align: center;
|
||||
|
|
Loading…
Reference in New Issue