增加全体提高伤害上限的新技能
This commit is contained in:
parent
ca38f01733
commit
eb2cc9751e
|
@ -1290,19 +1290,56 @@ const specialSearchFunctions = (function() {
|
||||||
if (!skill) return;
|
if (!skill) return;
|
||||||
const sk = skill.params;
|
const sk = skill.params;
|
||||||
const fragment = document.createDocumentFragment();
|
const fragment = document.createDocumentFragment();
|
||||||
const ul = fragment.appendChild(document.createElement("ul"));
|
fragment.appendChild(createTeamFlags(sk[1]));
|
||||||
ul.className = "team-flags";
|
|
||||||
for (let i = 0; i<6; i++) {
|
|
||||||
const li = ul.appendChild(document.createElement("li"));
|
|
||||||
li.className = "team-member-icon";
|
|
||||||
}
|
|
||||||
const targetTypes = ["self","leader-self","leader-helper","sub-members"];
|
|
||||||
flags(sk[1]).forEach(n=>ul.classList.add(targetTypes[n]));
|
|
||||||
let str = '';
|
let str = '';
|
||||||
str +=`${sk[2] / 100}倍×${sk[0]}T`;
|
str +=`${sk[2] / 100}倍×${sk[0]}T`;
|
||||||
fragment.appendChild(document.createTextNode(str));
|
fragment.appendChild(document.createTextNode(str));
|
||||||
return fragment;
|
return fragment;
|
||||||
}
|
}
|
||||||
|
function getIncreaseDamageCap(skill)
|
||||||
|
{
|
||||||
|
let cap = 0;
|
||||||
|
switch (skill.type) {
|
||||||
|
case 241:case 258:
|
||||||
|
cap = skill.params[1];
|
||||||
|
break;
|
||||||
|
case 246:
|
||||||
|
cap = skill.params[2];
|
||||||
|
break;
|
||||||
|
case 247:
|
||||||
|
cap = skill.params[3];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return cap;
|
||||||
|
}
|
||||||
|
function memberCap_Addition(card)
|
||||||
|
{
|
||||||
|
const searchTypeArray = [241, 246, 247, 258];
|
||||||
|
const skill = getCardActiveSkill(card, searchTypeArray);
|
||||||
|
if (!skill) return;
|
||||||
|
const sk = skill.params;
|
||||||
|
let cap = getIncreaseDamageCap(skill);
|
||||||
|
|
||||||
|
const fragment = document.createDocumentFragment();
|
||||||
|
switch (skill.type) {
|
||||||
|
case 258: {
|
||||||
|
fragment.appendChild(createTeamFlags(sk[2]));
|
||||||
|
}
|
||||||
|
case 241: {
|
||||||
|
fragment.append(`${(cap*1e8).bigNumberToString()}×${sk[0]}T`);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 246: {
|
||||||
|
fragment.append(`${(cap*1e8).bigNumberToString()}←${sk[1]}C in ${sk[0]}S`);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
case 247: {
|
||||||
|
fragment.append(`${(cap*1e8).bigNumberToString()}←${sk[2]} of `, createOrbsList(flags(sk[1])), ` in ${sk[0]}S`);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return fragment;
|
||||||
|
}
|
||||||
function dixedDamage_Addition(card)
|
function dixedDamage_Addition(card)
|
||||||
{
|
{
|
||||||
const searchTypeArray = [55, 188, 56];
|
const searchTypeArray = [55, 188, 56];
|
||||||
|
@ -1808,23 +1845,7 @@ const specialSearchFunctions = (function() {
|
||||||
},
|
},
|
||||||
{name:"Increase Damage Cap",otLangName:{chs:"增加伤害上限 buff",cht:"增加傷害上限 buff"},
|
{name:"Increase Damage Cap",otLangName:{chs:"增加伤害上限 buff",cht:"增加傷害上限 buff"},
|
||||||
function:cards=>{
|
function:cards=>{
|
||||||
function getIncreaseDamageCap(skill)
|
const searchTypeArray = [241, 246, 247, 258];
|
||||||
{
|
|
||||||
let cap = 0;
|
|
||||||
switch (skill.type) {
|
|
||||||
case 241:
|
|
||||||
cap = skill.params[1];
|
|
||||||
break;
|
|
||||||
case 246:
|
|
||||||
cap = skill.params[2];
|
|
||||||
break;
|
|
||||||
case 247:
|
|
||||||
cap = skill.params[3];
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return cap;
|
|
||||||
}
|
|
||||||
const searchTypeArray = [241, 246, 247];
|
|
||||||
return cards.filter(card=>{
|
return cards.filter(card=>{
|
||||||
const skill = getCardActiveSkill(card, searchTypeArray);
|
const skill = getCardActiveSkill(card, searchTypeArray);
|
||||||
return skill;
|
return skill;
|
||||||
|
@ -1834,29 +1855,21 @@ const specialSearchFunctions = (function() {
|
||||||
return a_pC - b_pC;
|
return a_pC - b_pC;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
addition:card=>{
|
addition:memberCap_Addition
|
||||||
const searchTypeArray = [241, 246, 247];
|
},
|
||||||
const skill = getCardActiveSkill(card, searchTypeArray);
|
{name:"Increase Damage Cap (Not Self)",otLangName:{chs:"增加伤害上限 buff(非自身)",cht:"增加傷害上限 buff(非自身)"},
|
||||||
if (!skill) return;
|
function:cards=>{
|
||||||
const sk = skill.params;
|
const searchTypeArray = [258];
|
||||||
let cap;
|
return cards.filter(card=>{
|
||||||
switch (skill.type) {
|
const skill = getCardActiveSkill(card, searchTypeArray);
|
||||||
case 241:
|
return skill;
|
||||||
cap = sk[1];
|
}).sort((a,b)=>{
|
||||||
break;
|
const a_ss = getCardActiveSkill(a, searchTypeArray), b_ss = getCardActiveSkill(b, searchTypeArray);
|
||||||
case 246:
|
let a_pC = getIncreaseDamageCap(a_ss), b_pC = getIncreaseDamageCap(b_ss);
|
||||||
cap = sk[2];
|
return a_pC - b_pC;
|
||||||
break;
|
});
|
||||||
case 247:
|
},
|
||||||
cap = sk[3];
|
addition:memberCap_Addition
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (skill.type == 241) {
|
|
||||||
return `${(cap*1e8).bigNumberToString()}×${sk[0]}T`;
|
|
||||||
} else {
|
|
||||||
return `${(cap*1e8).bigNumberToString()} in ${sk[0]}S`;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
{name:"Member ATK rate change",otLangName:{chs:"队员攻击力 buff",cht:"隊員攻擊力 buff"},
|
{name:"Member ATK rate change",otLangName:{chs:"队员攻击力 buff",cht:"隊員攻擊力 buff"},
|
||||||
function:cards=>{
|
function:cards=>{
|
||||||
|
|
|
@ -1723,7 +1723,15 @@ const skillObjectParsers = {
|
||||||
boardChange([0,1,2,3,4,5]),
|
boardChange([0,1,2,3,4,5]),
|
||||||
autoPath(5),
|
autoPath(5),
|
||||||
];
|
];
|
||||||
},
|
},
|
||||||
|
|
||||||
|
[258](turns, cap, target) { //改变伤害上限主动技
|
||||||
|
const targetTypes = ["self","leader-self","leader-helper","sub-members"];
|
||||||
|
const typeArr = flags(target).map(n => targetTypes[n]);
|
||||||
|
return activeTurns(turns,
|
||||||
|
increaseDamageCap(cap * 1e8, typeArr)
|
||||||
|
);
|
||||||
|
},
|
||||||
[1000](type, pos, ...ids) {
|
[1000](type, pos, ...ids) {
|
||||||
const posType = (type=>{
|
const posType = (type=>{
|
||||||
switch (type) {
|
switch (type) {
|
||||||
|
@ -2525,15 +2533,10 @@ function renderSkill(skill, option = {})
|
||||||
targetDict.target = document.createDocumentFragment();
|
targetDict.target = document.createDocumentFragment();
|
||||||
|
|
||||||
//增加队员伤害的技能的目标,删选出来,其他的目标则不显示
|
//增加队员伤害的技能的目标,删选出来,其他的目标则不显示
|
||||||
let atkUpTarget = targets.filter(n=>["self","leader-self","leader-helper","sub-members"].includes(n));
|
const targetTypes = ["self","leader-self","leader-helper","sub-members"];
|
||||||
|
let atkUpTarget = targets.filter(n=>targetTypes.includes(n));
|
||||||
if (atkUpTarget.length) {
|
if (atkUpTarget.length) {
|
||||||
const ul = targetDict.target.appendChild(document.createElement("ul"));
|
targetDict.target.appendChild(createTeamFlags(atkUpTarget));
|
||||||
ul.className = "team-flags";
|
|
||||||
for (let i = 0; i<6; i++) {
|
|
||||||
const li = ul.appendChild(document.createElement("li"));
|
|
||||||
li.className = "team-member-icon";
|
|
||||||
}
|
|
||||||
atkUpTarget.forEach(n=>ul.classList.add(n));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
targetDict.target.appendChild(targets.map(target=>
|
targetDict.target.appendChild(targets.map(target=>
|
||||||
|
@ -2670,11 +2673,16 @@ function renderSkill(skill, option = {})
|
||||||
const {cap, targets} = skill;
|
const {cap, targets} = skill;
|
||||||
let dict = {
|
let dict = {
|
||||||
icon: createIcon(skill.kind),
|
icon: createIcon(skill.kind),
|
||||||
targets: targets.map(target=>
|
targets: document.createDocumentFragment(),
|
||||||
tsp?.target[target.replaceAll("-","_")]?.())
|
|
||||||
.nodeJoin(tsp.word.slight_pause()),
|
|
||||||
cap: cap.bigNumberToString(),
|
cap: cap.bigNumberToString(),
|
||||||
};
|
};
|
||||||
|
if (targets[0] !== 'self' || targets.length > 1) {
|
||||||
|
dict.targets.append(createTeamFlags(targets));
|
||||||
|
}
|
||||||
|
dict.targets.append(targets.map(target=>
|
||||||
|
tsp?.target[target.replaceAll("-","_")]?.())
|
||||||
|
.nodeJoin(tsp.word.slight_pause()));
|
||||||
|
|
||||||
frg.ap(tsp.skill.increase_damage_cap(dict));
|
frg.ap(tsp.skill.increase_damage_cap(dict));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1051,6 +1051,32 @@ function changeToIdInSkillDetail(event) {
|
||||||
monstersID.onchange();
|
monstersID.onchange();
|
||||||
return false; //取消链接的默认操作
|
return false; //取消链接的默认操作
|
||||||
}
|
}
|
||||||
|
//产生队伍目标类型
|
||||||
|
function createTeamFlags(target)
|
||||||
|
{
|
||||||
|
const ul = document.createElement("ul");
|
||||||
|
ul.className = "team-flags";
|
||||||
|
for (let i = 0; i<6; i++) {
|
||||||
|
const li = ul.appendChild(document.createElement("li"));
|
||||||
|
li.className = "team-member-icon";
|
||||||
|
}
|
||||||
|
const targetTypes = ["self","leader-self","leader-helper","sub-members"];
|
||||||
|
|
||||||
|
let _target = [];
|
||||||
|
if (Number.isInteger(target)) {
|
||||||
|
_target = flags(target).map(n=>targetTypes[n]);
|
||||||
|
}
|
||||||
|
else if (Array.isArray(target)) {
|
||||||
|
if (target.every(item=>Number.isInteger(item))) {
|
||||||
|
_target = target.map(n=>targetTypes[n]);
|
||||||
|
}
|
||||||
|
else if (target.every(item=>typeof(item) === 'string')) {
|
||||||
|
_target = target;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_target.forEach(tar=>ul.classList.add(tar));
|
||||||
|
return ul;
|
||||||
|
}
|
||||||
|
|
||||||
function showSearchBySeriesId(sId, sType) {
|
function showSearchBySeriesId(sId, sType) {
|
||||||
showSearch(searchBySeriesId(sId, sType));
|
showSearch(searchBySeriesId(sId, sType));
|
||||||
|
|
|
@ -275,7 +275,7 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/cards_ja/CARDS_069.PNG",
|
"images/cards_ja/CARDS_069.PNG",
|
||||||
"5b62dcf7e09dac4f51718bd9cc1468a2"
|
"abad1663e4f8a421cae2e6ea168f5a56"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/cards_ja/CARDS_070.PNG",
|
"images/cards_ja/CARDS_070.PNG",
|
||||||
|
@ -411,11 +411,11 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/cards_ja/CARDS_103.PNG",
|
"images/cards_ja/CARDS_103.PNG",
|
||||||
"4befb7e52ce63a502514543d5173168a"
|
"78ec444fe57c443147ce9904a558a78d"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/cards_ja/CARDS_104.PNG",
|
"images/cards_ja/CARDS_104.PNG",
|
||||||
"38082e827e3d98eac328da15c9be5b10"
|
"4992a52d35fa227dd70c158281b63dc3"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/cards_ja/CARDS_105.PNG",
|
"images/cards_ja/CARDS_105.PNG",
|
||||||
|
@ -427,11 +427,11 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/cards_ja/CARDS_107.PNG",
|
"images/cards_ja/CARDS_107.PNG",
|
||||||
"79ede041dbe2abeb27bd0f0147307d9f"
|
"c0d37dfd64d4dd3c081a117d6600ad60"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/cards_ja/CARDS_108.PNG",
|
"images/cards_ja/CARDS_108.PNG",
|
||||||
"1d4d9f67d9095627545d03002fd17514"
|
"e1a00e4409dc4823141fdd360c0e4135"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/cards_ja/CARDS_109.PNG",
|
"images/cards_ja/CARDS_109.PNG",
|
||||||
|
@ -441,6 +441,10 @@ const cachesMap = new Map([
|
||||||
"images/cards_ja/CARDS_110.PNG",
|
"images/cards_ja/CARDS_110.PNG",
|
||||||
"366aa8a0db62deb07bf70b1b1c12711a"
|
"366aa8a0db62deb07bf70b1b1c12711a"
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
"images/cards_ja/CARDS_111.PNG",
|
||||||
|
"73f3ef2f1942e11148326bf2f6208b79"
|
||||||
|
],
|
||||||
[
|
[
|
||||||
"sound/voice/ja/padv001.wav",
|
"sound/voice/ja/padv001.wav",
|
||||||
"5d5cfc2aea6aa9e69299e2fd8f5657d2"
|
"5d5cfc2aea6aa9e69299e2fd8f5657d2"
|
||||||
|
@ -1785,6 +1789,10 @@ const cachesMap = new Map([
|
||||||
"sound/voice/ja/padv122.wav",
|
"sound/voice/ja/padv122.wav",
|
||||||
"bd76867897b4217698a823279dbc6c5a"
|
"bd76867897b4217698a823279dbc6c5a"
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
"sound/voice/ja/padv1224.wav",
|
||||||
|
"63342cdbcc799462cf5bf5769e9a7988"
|
||||||
|
],
|
||||||
[
|
[
|
||||||
"sound/voice/ja/padv1225.wav",
|
"sound/voice/ja/padv1225.wav",
|
||||||
"9446a7108742a7fee5e1d9bfbbd805ba"
|
"9446a7108742a7fee5e1d9bfbbd805ba"
|
||||||
|
@ -5365,10 +5373,22 @@ const cachesMap = new Map([
|
||||||
"sound/voice/ja/padv2038.wav",
|
"sound/voice/ja/padv2038.wav",
|
||||||
"89ff1728c49c61892239dc486e824a61"
|
"89ff1728c49c61892239dc486e824a61"
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
"sound/voice/ja/padv2039.wav",
|
||||||
|
"5ef91c5e493a9e6d285af739db5fcb80"
|
||||||
|
],
|
||||||
[
|
[
|
||||||
"sound/voice/ja/padv204.wav",
|
"sound/voice/ja/padv204.wav",
|
||||||
"78791e12c2bccde3eb384c34c8ab3d9d"
|
"78791e12c2bccde3eb384c34c8ab3d9d"
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
"sound/voice/ja/padv2040.wav",
|
||||||
|
"de665a231d8ea4db7e03fb1fb2e614c1"
|
||||||
|
],
|
||||||
|
[
|
||||||
|
"sound/voice/ja/padv2042.wav",
|
||||||
|
"375534373b256e43e6a400271a71820f"
|
||||||
|
],
|
||||||
[
|
[
|
||||||
"sound/voice/ja/padv205.wav",
|
"sound/voice/ja/padv205.wav",
|
||||||
"5cf988087d9bfb12b5af10e7377f51ef"
|
"5cf988087d9bfb12b5af10e7377f51ef"
|
||||||
|
@ -22803,7 +22823,7 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"multi.html",
|
"multi.html",
|
||||||
"452c9192136656b9f875d371d904bbb4"
|
"95385a8e7e272fbb5dacb850667e1eb3"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"script-custom_elements.js",
|
"script-custom_elements.js",
|
||||||
|
@ -22811,31 +22831,31 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"script-json_data.js",
|
"script-json_data.js",
|
||||||
"50731e4d514b657297dc20fb9863bb15"
|
"13a004bccb210a80f3b59d41e405245d"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"script-skill-parser.js",
|
"script-skill-parser.js",
|
||||||
"c2731a12b9f65f174126f19538a8b5f1"
|
"4519231c3aa362a66e38fa583bc80c48"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"script-universal_function.js",
|
"script-universal_function.js",
|
||||||
"e28b45d852a45f5f3daafe1cf071775a"
|
"53b5e9b772192173f139fd58be42eaa8"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"script.js",
|
"script.js",
|
||||||
"8253d01a692fda416e6fb97e7c75641b"
|
"51a45dedffded8db84da957b47a28c28"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"solo.html",
|
"solo.html",
|
||||||
"85c58af3eae9f600df3e36ff0680e65e"
|
"5dfa10024924d95cb1a32abd94a48418"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"style-monsterimages.css",
|
"style-monsterimages.css",
|
||||||
"5d4d91a014c65d6a30dfc1fd71a0d305"
|
"c2a4832ca38958cd6ee64211c05e00cd"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"style.css",
|
"style.css",
|
||||||
"060af75969aef562fc587f09231a01a3"
|
"10c3535a7ad7a4f3c01fa70c7c67d3b5"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"temp.js",
|
"temp.js",
|
||||||
|
@ -22843,11 +22863,11 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"triple.html",
|
"triple.html",
|
||||||
"12d05bc4fd4f83d21c143e82112327ec"
|
"867cc5b572159ba36bc71b5d0449c9ec"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/en.css",
|
"languages/en.css",
|
||||||
"769d4563a8db708bd1be2b8a7b2c5542"
|
"5c55ac4c8f478076425dc23c8e4b75c7"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/en.js",
|
"languages/en.js",
|
||||||
|
@ -22855,7 +22875,7 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/ja.css",
|
"languages/ja.css",
|
||||||
"d3145270883efac4462cdfd00bfc081a"
|
"6ac36a23d002754462c2d225c1b7cfab"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/ja.js",
|
"languages/ja.js",
|
||||||
|
@ -22863,7 +22883,7 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/ko.css",
|
"languages/ko.css",
|
||||||
"259ec3d87e43f750cc4ea1d3e2bae3cd"
|
"0a845b5579580b336ed4e6b008026f2e"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/ko.js",
|
"languages/ko.js",
|
||||||
|
@ -22875,19 +22895,19 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/zh-TW.css",
|
"languages/zh-TW.css",
|
||||||
"e7d2bc02b6b648428dc74c11446af03b"
|
"717ab281b26486b192defaa3bc068b15"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/zh-TW.js",
|
"languages/zh-TW.js",
|
||||||
"96b5fc34b0a23d46900bcc80dc71499b"
|
"a7eb3cd1b50dc07647e028fcae122180"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/zh.css",
|
"languages/zh.css",
|
||||||
"61d71ec1c0f20f29f44fd625329d49a5"
|
"7320d52c192a768bd1d221073aa4573b"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"languages/zh.js",
|
"languages/zh.js",
|
||||||
"6e6c866f3c573360f51df51e987ab740"
|
"007c91430840864f852949f9030f9db4"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/attrs.png",
|
"images/attrs.png",
|
||||||
|
@ -22903,7 +22923,7 @@ const cachesMap = new Map([
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/awoken.png",
|
"images/awoken.png",
|
||||||
"c53b59b21984e6bd23ea310751f65101"
|
"33b3147b0144df5c483da3f976789057"
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"images/badge-bg.png",
|
"images/badge-bg.png",
|
||||||
|
|
Loading…
Reference in New Issue