增加新技能解析
This commit is contained in:
parent
0e0d163505
commit
be4895b082
Binary file not shown.
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 72 KiB |
Binary file not shown.
Before Width: | Height: | Size: 202 KiB After Width: | Height: | Size: 206 KiB |
|
@ -119,8 +119,10 @@ const _localTranslating = {
|
|||
set_orb_state_nail: tp`${'orbs'}增加${'value'}${'icon'}钉子状态`,
|
||||
rate_multiply: tp`作为队长进入地下城时,${'rate'}变为${'value'}`,
|
||||
rate_multiply_drop: tp`${'icon'}怪物蛋掉落率`,
|
||||
rate_multiply_coin: tp`${'icon'}金币掉落率`,
|
||||
rate_multiply_coin: tp`${'icon'}金币倍率`,
|
||||
rate_multiply_exp: tp`${'icon'}等级经验倍率`,
|
||||
rate_multiply_plus_point: tp`${'icon'}加蛋值倍率`,
|
||||
rate_multiply_part_break: tp`${'icon'}部位破坏素材掉率`,
|
||||
reduce_damage: tp`${'condition'}受到的${'attrs'}伤害${'chance'}${'icon'}减少${'value'}`,
|
||||
power_up: tp`${'condition'}${'targets'}${'target'}${'each_time'}${'value'}${'reduceDamage'}${'additional'}`,
|
||||
power_up_targets: tp`${'attrs_types'}的 `,
|
||||
|
|
|
@ -119,8 +119,10 @@ const _localTranslating = {
|
|||
set_orb_state_nail: tp`${'orbs'}增加${'value'}${'icon'}釘子狀態`,
|
||||
rate_multiply: tp`作為隊長進入地下城時,${'rate'}變為${'value'}`,
|
||||
rate_multiply_drop: tp`${'icon'}怪物蛋掉落率`,
|
||||
rate_multiply_coin: tp`${'icon'}金幣掉落率`,
|
||||
rate_multiply_coin: tp`${'icon'}金幣倍率`,
|
||||
rate_multiply_exp: tp`${'icon'}等級經驗倍率`,
|
||||
rate_multiply_plus_point: tp`${'icon'}加蛋值倍率`,
|
||||
rate_multiply_part_break: tp`${'icon'}部位破壞素材掉率`,
|
||||
reduce_damage: tp`${'condition'}受到的${'attrs'}傷害${'chance'}${'icon'}減少${'value'}`,
|
||||
power_up: tp`${'condition'}${'targets'}${'target'}${'each_time'}${'value'}${'reduceDamage'}${'additional'}`,
|
||||
power_up_targets: tp`${'attrs_types'}的 `,
|
||||
|
|
|
@ -136,6 +136,8 @@ let localTranslating = {
|
|||
rate_multiply_drop: tp`${'icon'}Drop rate`,
|
||||
rate_multiply_coin: tp`${'icon'}Coins`,
|
||||
rate_multiply_exp: tp`${'icon'}Rank EXP`,
|
||||
rate_multiply_plus_point: tp`${'icon'}Plus Point`,
|
||||
rate_multiply_part_break: tp`${'icon'}Part Break Drop rate`,
|
||||
reduce_damage: tp`${'condition'}${'chance'}${'icon'}Reduces ${'attrs'} damage taken by ${'value'}`,
|
||||
power_up: tp`${'condition'}${'targets'}${'each_time'}${'value'}${'reduceDamage'}${'additional'}`,
|
||||
power_up_targets: tp`[${'attrs_types'}]'s `, //attrs, types, attrs_types
|
||||
|
@ -3990,14 +3992,20 @@ const specialSearchFunctions = (function() {
|
|||
addition:card=>{
|
||||
const value = getSkillFixedDamage(card);
|
||||
if (value <= 0 ) return;
|
||||
let nodeArr = [`${value.bigNumberToString()}固伤`];
|
||||
let skill;
|
||||
if (skill = getCardLeaderSkill(card, [235])) {
|
||||
nodeArr.push("/");
|
||||
nodeArr.push(createOrbsList(Bin.unflags(skill.params[0])));
|
||||
nodeArr.push(`×${skill.params[2]}`);
|
||||
const fragment = document.createDocumentFragment();
|
||||
|
||||
const icon = document.createElement("icon");
|
||||
icon.className = "attr";
|
||||
icon.setAttribute("data-attr-icon", "fixed");
|
||||
|
||||
fragment.append(icon, value.bigNumberToString());
|
||||
let skill = getCardLeaderSkill(card, [235]);
|
||||
if (skill) {
|
||||
fragment.append("/",
|
||||
createOrbsList(Bin.unflags(skill.params[0])),
|
||||
`×${skill.params[2]}`);
|
||||
}
|
||||
return nodeArr.nodeJoin();
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
{name:"Adds combo",otLangName:{chs:"队长技+C",cht:"隊長技+C"},
|
||||
|
@ -4012,16 +4020,19 @@ const specialSearchFunctions = (function() {
|
|||
addition:card=>{
|
||||
const value = getSkillAddCombo(card);
|
||||
if (value <= 0 ) return;
|
||||
let nodeArr = [`+${value.bigNumberToString()}C`];
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.append(createSkillIcon('add-combo'), value.bigNumberToString());
|
||||
let skill;
|
||||
if (skill = getCardLeaderSkill(card, [210])) {
|
||||
nodeArr.push("/十字");
|
||||
fragment.append("/十字");
|
||||
} else if (skill = getCardLeaderSkill(card, [235])) {
|
||||
nodeArr.push("/");
|
||||
nodeArr.push(createOrbsList(Bin.unflags(skill.params[0])));
|
||||
nodeArr.push(`×${skill.params[2]}`);
|
||||
if (skill?.params?.[5]) {
|
||||
fragment.append("/",
|
||||
createOrbsList(Bin.unflags(skill.params[0])),
|
||||
`×${skill.params[2]}`);
|
||||
}
|
||||
}
|
||||
return nodeArr.nodeJoin();
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
{name:"Move time changes",otLangName:{chs:"队长技加/减秒",cht:"隊長技加/減秒"},
|
||||
|
@ -4037,7 +4048,12 @@ const specialSearchFunctions = (function() {
|
|||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const value = skill.params[0];
|
||||
return `${value > 0 ? "+" : ""}${value/100}s`;
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.append(createSkillIcon("status-time", value < 0 ? "time-decr" : "time-incr"),
|
||||
value > 0 ? "+" : "-",
|
||||
Math.abs(value/100),
|
||||
"s");
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
{name:"Fixed move time",otLangName:{chs:"固定操作时间",cht:"固定操作時間"},
|
||||
|
@ -4053,7 +4069,11 @@ const specialSearchFunctions = (function() {
|
|||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const value = skill.params[0];
|
||||
return `固定${value}s`;
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.append(createSkillIcon("fixed-time"),
|
||||
Math.abs(value),
|
||||
"s");
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
{name:"Impart Awakenings",otLangName:{chs:"赋予觉醒",cht:"賦予覺醒"},
|
||||
|
@ -4195,54 +4215,103 @@ const specialSearchFunctions = (function() {
|
|||
}).sort((a,b)=>sortByParams(a,b,searchTypeArray));
|
||||
}
|
||||
},
|
||||
{name:"Increase item drop rate",otLangName:{chs:"增加道具掉落率",cht:"增加道具掉落率"},
|
||||
function:cards=>{
|
||||
const searchTypeArray = [53];
|
||||
return cards.filter(card=>{
|
||||
{group:true,name:"Increased drop rewards",otLangName:{chs:"增加掉落奖励",cht:"增加掉落獎勵"}, functions: [
|
||||
{name:"Increase Item Drop rate",otLangName:{chs:"增加道具掉落率",cht:"增加道具掉落率"},
|
||||
function:cards=>{
|
||||
const searchTypeArray = [53];
|
||||
return cards.filter(card=>{
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
return skill;
|
||||
}).sort((a,b)=>sortByParams(a,b,searchTypeArray));
|
||||
},
|
||||
addition:card=>{
|
||||
const searchTypeArray = [53];
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
return skill;
|
||||
}).sort((a,b)=>sortByParams(a,b,searchTypeArray));
|
||||
if (!skill) return;
|
||||
const sk = skill.params;
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(createSkillIcon('rate-mul-drop'));
|
||||
fragment.append(`x${sk[0]/100}`);
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
addition:card=>{
|
||||
const searchTypeArray = [53];
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const sk = skill.params;
|
||||
return `掉率x${sk[0]/100}`;
|
||||
}
|
||||
},
|
||||
{name:"Increase coin rate",otLangName:{chs:"增加金币掉落倍数",cht:"增加金幣掉落倍數"},
|
||||
function:cards=>{
|
||||
const searchTypeArray = [54];
|
||||
return cards.filter(card=>{
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
return skill;
|
||||
}).sort((a,b)=>sortByParams(a,b,searchTypeArray));
|
||||
},
|
||||
addition:card=>{
|
||||
{name:"Increase Coin rate",otLangName:{chs:"增加金币掉落倍数",cht:"增加金幣掉落倍數"},
|
||||
function:cards=>{
|
||||
const searchTypeArray = [54];
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const sk = skill.params;
|
||||
return `金币x${sk[0]/100}`;
|
||||
}
|
||||
},
|
||||
{name:"Increase Exp rate",otLangName:{chs:"增加经验获取倍数",cht:"增加經驗獲取倍數"},
|
||||
function:cards=>{
|
||||
const searchTypeArray = [148];
|
||||
return cards.filter(card=>{
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
return skill;
|
||||
}).sort((a,b)=>sortByParams(a,b,searchTypeArray));
|
||||
},
|
||||
addition:card=>{
|
||||
const searchTypeArray = [54];
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const sk = skill.params;
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(createSkillIcon('rate-mul-coin'));
|
||||
fragment.append(`x${sk[0]/100}`);
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
addition:card=>{
|
||||
const searchTypeArray = [148];
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const sk = skill.params;
|
||||
return `经验x${sk[0]/100}`;
|
||||
}
|
||||
},
|
||||
{name:"Increase Exp rate",otLangName:{chs:"增加经验获取倍数",cht:"增加經驗獲取倍數"},
|
||||
function:cards=>{
|
||||
const searchTypeArray = [148];
|
||||
return cards.filter(card=>{
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
return skill;
|
||||
}).sort((a,b)=>sortByParams(a,b,searchTypeArray));
|
||||
},
|
||||
addition:card=>{
|
||||
const searchTypeArray = [148];
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const sk = skill.params;
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(createSkillIcon('rate-mul-exp'));
|
||||
fragment.append(`x${sk[0]/100}`);
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
{name:"Increase Plus Point rate",otLangName:{chs:"增加加蛋值掉落倍数",cht:"增加加蛋值掉落倍數"},
|
||||
function:cards=>{
|
||||
const searchTypeArray = [264];
|
||||
return cards.filter(card=>{
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
return skill;
|
||||
}).sort((a,b)=>sortByParams(a,b,searchTypeArray));
|
||||
},
|
||||
addition:card=>{
|
||||
const searchTypeArray = [264];
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const sk = skill.params;
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(createSkillIcon('rate-mul-plus_point'));
|
||||
fragment.append(`x${sk[0]/100}`);
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
{name:"Increase Part Break drop rate",otLangName:{chs:"增加部位破坏素材掉率",cht:"增加部位破壞素材掉率"},
|
||||
function:cards=>{
|
||||
const searchTypeArray = [265];
|
||||
return cards.filter(card=>{
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
return skill;
|
||||
}).sort((a,b)=>sortByParams(a,b,searchTypeArray));
|
||||
},
|
||||
addition:card=>{
|
||||
const searchTypeArray = [265];
|
||||
const skill = getCardLeaderSkill(card, searchTypeArray);
|
||||
if (!skill) return;
|
||||
const sk = skill.params;
|
||||
const fragment = document.createDocumentFragment();
|
||||
fragment.appendChild(createSkillIcon('rate-mul-part_break'));
|
||||
fragment.append(`x${sk[0]/100}`);
|
||||
return fragment;
|
||||
}
|
||||
},
|
||||
]},
|
||||
]},
|
||||
{group:true,name:"HP Scale",otLangName:{chs:"血倍率",cht:"血倍率"}, functions: [
|
||||
{name:"HP Scale [3, ∞)",otLangName:{chs:"队长血倍率[2, ∞)",cht:"隊長血倍率[2, ∞)"},
|
||||
|
|
|
@ -1736,6 +1736,8 @@ const skillObjectParsers = {
|
|||
increaseDamageCapacity(cap * 1e8, void 0, Bin.unflags(attr), Bin.unflags(type))
|
||||
);
|
||||
},
|
||||
[264](mul) { return rateMultiply(v.percent(mul), 'plus_point'); },
|
||||
[265](mul) { return rateMultiply(v.percent(mul), 'part_break'); },
|
||||
[1000](type, pos, ...ids) {
|
||||
const posType = (type=>{
|
||||
switch (type) {
|
||||
|
|
|
@ -41355,11 +41355,11 @@ const cachesMap = new Map([
|
|||
],
|
||||
[
|
||||
"script-json_data.js",
|
||||
"d9d76afeaa0a4ba4ac94e106cf2117e2"
|
||||
"93003bbb7ee2d688ed4e68b21d39a53f"
|
||||
],
|
||||
[
|
||||
"script-skill-parser.js",
|
||||
"1747fe828fc25e0394f82245eccca5c7"
|
||||
"7b4700be7e38bbfdddfe90e251103675"
|
||||
],
|
||||
[
|
||||
"script-universal_function.js",
|
||||
|
@ -41383,7 +41383,7 @@ const cachesMap = new Map([
|
|||
],
|
||||
[
|
||||
"style.css",
|
||||
"0548eea7ac972f4bac0ffebf384a51e5"
|
||||
"16b834eb40e460324cdf9c3f2fcfe0b8"
|
||||
],
|
||||
[
|
||||
"temp.js",
|
||||
|
@ -41427,7 +41427,7 @@ const cachesMap = new Map([
|
|||
],
|
||||
[
|
||||
"languages/zh-hans.js",
|
||||
"8552840a3934a8eee0d0e001419036d9"
|
||||
"68e8eca512a164fab743ed6b455d8ab6"
|
||||
],
|
||||
[
|
||||
"languages/zh-hant.css",
|
||||
|
@ -41435,7 +41435,7 @@ const cachesMap = new Map([
|
|||
],
|
||||
[
|
||||
"languages/zh-hant.js",
|
||||
"3f4938a03f1d14544bd9da895126ed6c"
|
||||
"b046584b6338fd1e0f7f93108e0dd16f"
|
||||
],
|
||||
[
|
||||
"images/attrs.png",
|
||||
|
@ -41587,7 +41587,7 @@ const cachesMap = new Map([
|
|||
],
|
||||
[
|
||||
"images/icon-skills.png",
|
||||
"9b5c57a64636cbfddffbb4549f5e6035"
|
||||
"66cc711b4a07f80bb869650ccdb23eec"
|
||||
],
|
||||
[
|
||||
"images/icon-switch-leader.png",
|
||||
|
|
15
style.css
15
style.css
|
@ -1889,13 +1889,15 @@ label[for="search-string"] {
|
|||
}
|
||||
.awoken-preview .awoken-icon,
|
||||
.custom-addition .awoken-icon,
|
||||
.custom-addition .type-icon
|
||||
.custom-addition .type-icon,
|
||||
.custom-addition .attr
|
||||
{
|
||||
filter: unset;
|
||||
transform: scale(0.75);
|
||||
margin: calc(-32px * (1 - 0.75) / 2);
|
||||
}
|
||||
.custom-addition .board .orb {
|
||||
.custom-addition .board .orb
|
||||
{
|
||||
filter: unset;
|
||||
transform: scale(0.5);
|
||||
margin: calc(-36px * (1 - 0.5) / 2);
|
||||
|
@ -5061,3 +5063,12 @@ body.external-link-support #external-support{
|
|||
:lang(ko) .icon-skill[data-icon-type="resolve"] {
|
||||
background-position-x: calc(-36px * 2);
|
||||
}
|
||||
|
||||
.icon-skill[data-icon-type="rate-mul-plus_point"]
|
||||
{
|
||||
background-position-y:calc(-36px * 45);
|
||||
}
|
||||
.icon-skill[data-icon-type="rate-mul-part_break"]
|
||||
{
|
||||
background-position-y:calc(-36px * 46);
|
||||
}
|
Loading…
Reference in New Issue