From a571b0bc7a87fb0ca438452f094cd8ebec8f1946 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=AB=E8=B0=B7=E5=89=91=E4=BB=99?= Date: Sun, 27 Dec 2020 04:28:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=AA=E5=8A=9B=E6=B7=BB=E5=8A=A0=E4=BA=86?= =?UTF-8?q?=E4=B8=80=E5=A4=A7=E5=A0=86=E9=99=84=E5=8A=A0=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- languages/zh-CN.js | 436 ++++++++++++++++++++++++++++++--------------- style.css | 73 +++++--- 2 files changed, 340 insertions(+), 169 deletions(-) diff --git a/languages/zh-CN.js b/languages/zh-CN.js index 983695d5..55bfa301 100644 --- a/languages/zh-CN.js +++ b/languages/zh-CN.js @@ -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;aicards.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;aicards.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}; } diff --git a/style.css b/style.css index 86966c82..8421d7b8 100644 --- a/style.css +++ b/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; +} +table .orb-icon +{ + display: table-cell; } -.board td::before +.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;