添加一些搜索
This commit is contained in:
parent
6f0b30d2ac
commit
47724155c4
Binary file not shown.
Before Width: | Height: | Size: 884 KiB After Width: | Height: | Size: 885 KiB |
|
@ -11,6 +11,11 @@ function findFullSkill(subSkill){
|
|||
//document.querySelector(".edit-box .row-mon-id .m-id").type = "number";
|
||||
//Skills.filter(s=>{const sk = s.params; return s.type == 156;}).map(findFullSkill)
|
||||
|
||||
//返回flag里值为true的数组,如[1,4,7]
|
||||
function flags(num){
|
||||
return Array.from(new Array(32)).map((a,i)=>{return i;}).filter(i => num & (1 << i));
|
||||
}
|
||||
|
||||
//高级技能解释
|
||||
function parseSkillDescription(skill)
|
||||
{
|
||||
|
@ -41,10 +46,6 @@ function parseSkillDescription(skill)
|
|||
if (reverse) arr.reverse();
|
||||
return arr;
|
||||
}
|
||||
//返回flag里值为true的数组,如[1,4,7]
|
||||
function flags(num){
|
||||
return Array.from(new Array(32)).map((a,i)=>{return i;}).filter(i => num & (1 << i));
|
||||
}
|
||||
//从二进制的数字中获得有哪些内容
|
||||
function getNamesFromBinary(num,dataArr)
|
||||
{ /*num是输入的数字,2的N次方在2进制下表示1后面跟着N个0。
|
||||
|
@ -1389,6 +1390,72 @@ function parseBigNumber(number)
|
|||
}).sort((a,b)=>{//优先按技能排列,其次按进化树排列
|
||||
return (a.activeSkillId - b.activeSkillId) || (a.evoRootId - b.evoRootId);
|
||||
})},
|
||||
{name:"所有产竖",function:()=>Cards.filter(card=>{
|
||||
const searchType = 127;
|
||||
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=>{return Skills[id];});
|
||||
return subskills.some(subskill=>{return subskill.type == searchType});
|
||||
}
|
||||
})},
|
||||
{name:"所有产横",function:()=>Cards.filter(card=>{
|
||||
const searchType = 128;
|
||||
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=>{return Skills[id];});
|
||||
return subskills.some(subskill=>{return subskill.type == searchType});
|
||||
}
|
||||
})},
|
||||
{name:"所有解锁+产横",function:()=>Cards.filter(card=>{
|
||||
const searchTypeArray = [172,128];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>{return Skills[id];});
|
||||
return searchTypeArray.every(stype=>subskills.find(subskill=>subskill.type == stype));
|
||||
}else return false;
|
||||
})},
|
||||
{name:"所有加C+产横",function:()=>Cards.filter(card=>{
|
||||
const searchTypeArray = [160,128];
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>{return Skills[id];});
|
||||
return searchTypeArray.every(stype=>subskills.find(subskill=>subskill.type == stype));
|
||||
}else return false;
|
||||
})},
|
||||
{name:"所有2横或以上",function:()=>Cards.filter(card=>{
|
||||
const searchType = 128;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && (skill.params.length>=3 || flags(skill.params[0]).length>=2))
|
||||
return true;
|
||||
else if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>{return Skills[id];});
|
||||
return subskills.some(subskill=>{return subskill.type == searchType && (subskill.params.length>=3 || flags(subskill.params[0]).length>=2);});
|
||||
}
|
||||
})},
|
||||
{name:"所有2色横",function:()=>Cards.filter(card=>{
|
||||
const searchType = 128;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && skill.params[3]>=0 && (skill.params[1] & skill.params[3]) != skill.params[1])
|
||||
return true;
|
||||
else if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>{return Skills[id];});
|
||||
return subskills.some(subskill=>{return subskill.type == searchType && subskill.params[3]>=0 && (subskill.params[1] & subskill.params[3]) != subskill.params[1]});
|
||||
}
|
||||
})},
|
||||
{name:"所有非顶底横",function:()=>Cards.filter(card=>{
|
||||
const searchType = 128;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
if (skill.type == searchType && ((skill.params[0] | skill.params[2]) & 14))
|
||||
return true;
|
||||
else if (skill.type == 116 || skill.type == 118){
|
||||
const subskills = skill.params.map(id=>{return Skills[id];});
|
||||
return subskills.some(subskill=>{return subskill.type == searchType && ((subskill.params[0] | subskill.params[2]) & 14);});
|
||||
}
|
||||
})},
|
||||
{name:"所有99回合掉落",function:()=>Cards.filter(card=>{
|
||||
const searchType = 126;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
@ -1449,6 +1516,16 @@ function parseBigNumber(number)
|
|||
return subskills.some(subskill=>{return subskill.type == searchType});
|
||||
}
|
||||
})},
|
||||
{name:"所有加C",function:()=>Cards.filter(card=>{
|
||||
const searchType = 160;
|
||||
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=>{return Skills[id];});
|
||||
return subskills.some(subskill=>{return subskill.type == searchType});
|
||||
}
|
||||
})},
|
||||
{name:"所有威吓",function:()=>Cards.filter(card=>{
|
||||
const searchType = 18;
|
||||
const skill = Skills[card.activeSkillId];
|
||||
|
|
Loading…
Reference in New Issue