diff --git a/languages/en.css b/languages/en.css
index a8f792e8..ca73b22f 100644
--- a/languages/en.css
+++ b/languages/en.css
@@ -344,6 +344,9 @@ label[for="fix-main-color"]::after{
.search-box label[for="sort-reverse"]::after{
content: "Reverse";
}
+.search-box label[for="only-show-dungeon-enhance"]::after{
+ content: "Only enhanced by dungeons";
+}
.search-box .additional-div::before{
content: "Additional display:";
}
diff --git a/languages/ja.css b/languages/ja.css
index f0022ca2..a9436e69 100644
--- a/languages/ja.css
+++ b/languages/ja.css
@@ -343,6 +343,9 @@ label[for="fix-main-color"]::after{
.search-box label[for="sort-reverse"]::after{
content: "逆序";
}
+.search-box label[for="only-show-dungeon-enhance"]::after{
+ content: "ダンジョンによってのみ強化される";
+}
.search-box .additional-div::before{
content: "追加の表示:";
}
diff --git a/languages/ko.css b/languages/ko.css
index fa3edb18..01674971 100644
--- a/languages/ko.css
+++ b/languages/ko.css
@@ -339,6 +339,9 @@ label[for="fix-main-color"]::after{
.search-box label[for="sort-reverse"]::after{
content: "역순";
}
+.search-box label[for="only-show-dungeon-enhance"]::after{
+ content: "던전에 의해서만 강화됩니다";
+}
.search-box .additional-div::before{
content: "추가 표시:";
}
diff --git a/languages/zh-hans.css b/languages/zh-hans.css
index 923bc8a1..0b908d7c 100644
--- a/languages/zh-hans.css
+++ b/languages/zh-hans.css
@@ -344,6 +344,9 @@ label[for="fix-main-color"]::after{
.search-box label[for="sort-reverse"]::after{
content: "逆序";
}
+.search-box label[for="only-show-dungeon-enhance"]::after{
+ content: "仅显示被地下城增强的";
+}
.search-box .additional-div::before{
content: "附加显示:";
}
diff --git a/languages/zh-hant.css b/languages/zh-hant.css
index 747ecbb8..65f88708 100644
--- a/languages/zh-hant.css
+++ b/languages/zh-hant.css
@@ -344,6 +344,9 @@ label[for="fix-main-color"]::after{
.search-box label[for="sort-reverse"]::after{
content: "逆序";
}
+.search-box label[for="only-show-dungeon-enhance"]::after{
+ content: "僅顯示被地下城增強的";
+}
.search-box .additional-div::before{
content: "附加顯示:";
}
diff --git a/multi.html b/multi.html
index 7025c579..54b854bf 100644
--- a/multi.html
+++ b/multi.html
@@ -1292,6 +1292,7 @@ const teamsCount = 2;
diff --git a/script-universal_function.js b/script-universal_function.js
index 93a42af6..10c7903e 100644
--- a/script-universal_function.js
+++ b/script-universal_function.js
@@ -845,6 +845,26 @@ function calculateExp(member) {
expArray.push(Math.max(0, Math.min(member.level, 120) - 110) * 20000000);
return expArray;
}
+function isDungeonEnhance(dge, member, assist) {
+ const memberCard = Cards[member.id];
+ const memberAttrsTypesWithWeapon = (typeof member.getAttrsTypesWithWeapon === "function" && assist instanceof MemberAssist)
+ ? member.getAttrsTypesWithWeapon(assist)
+ : memberCard;
+
+ const baseBool = dge.rarities.includes(memberCard?.rarity) //符合星级
+ || dge?.collabs?.includes(memberCard?.collabId) //符合合作
+ || dge?.gachas?.some(n=>memberCard?.gachaIds.includes(n)); //符合抽蛋桶
+ return {
+ awoken: baseBool //计算武器觉醒
+ || memberAttrsTypesWithWeapon.attrs.some(attr=>dge.attrs.includes(attr)) //符合属性
+ || memberAttrsTypesWithWeapon.types.some(type=>dge.types.includes(type)) //符合类型
+ ,
+ noAwoken: baseBool //不计算武器觉醒
+ || memberCard.attrs.some(attr=>dge.attrs.includes(attr)) //符合属性
+ || memberCard.types.some(type=>dge.types.includes(type)) //符合类型
+ ,
+ };
+}
//计算怪物的能力
function calculateAbility(member, assist = null, solo = true, teamsCount = 1) {
if (!member) return null;
@@ -909,22 +929,7 @@ function calculateAbility(member, assist = null, solo = true, teamsCount = 1) {
//地下城强化
const dge = formation.dungeonEnchance;
const dgeRate = [dge.rate.hp, dge.rate.atk, dge.rate.rcv];
- const isDge = (()=>{
- const memberAttrsTypesWithWeapon = typeof member.getAttrsTypesWithWeapon === "function" ? member.getAttrsTypesWithWeapon(assist) : memberCard;
- const baseBool = dge.rarities.includes(memberCard.rarity) //符合星级
- || dge?.collabs?.includes(memberCard.collabId) //符合合作
- || dge?.gachas?.some(n=>memberCard.gachaIds.includes(n)); //符合抽蛋桶
- return {
- awoken: baseBool //计算武器觉醒
- || memberAttrsTypesWithWeapon.attrs.some(attr=>dge.attrs.includes(attr)) //符合属性
- || memberAttrsTypesWithWeapon.types.some(type=>dge.types.includes(type)) //符合类型
- ,
- noAwoken: baseBool //不计算武器觉醒
- || memberCard.attrs.some(attr=>dge.attrs.includes(attr)) //符合属性
- || memberCard.types.some(type=>dge.types.includes(type)) //符合类型
- ,
- };
- })();
+ const isDge = isDungeonEnhance(dge, member, assist);
//地下城阴阳加护强化
if (dge.benefit) { //当存在加护
diff --git a/script.js b/script.js
index 75e4514e..5a8e70ff 100644
--- a/script.js
+++ b/script.js
@@ -5122,8 +5122,7 @@ function initialize() {
const s_add_show_abilities_with_awoken = searchBox.querySelector("#add-show-abilities-with-awoken"); //是否显示计算觉醒的三维
const searchResultCount = searchBox.querySelector(".search-list-length");
- showSearch = function(searchArr, customAdditionalFunction)
- {
+ showSearch = function(searchArr, customAdditionalFunction) {
if (typeof(searchArr) === "number") {
searchArr = [searchArr];
}
@@ -5141,7 +5140,6 @@ function initialize() {
}
searchBox.open = true;
- searchMonList.classList.remove(className_displayNone);
editBox.show();
const createCardHead = editBox.createCardHead;
@@ -5165,11 +5163,10 @@ function initialize() {
customAddition: Array.isArray(customAdditionalFunction) ? customAdditionalFunction : (typeof customAdditionalFunction == "function" ? [customAdditionalFunction] : [])
};
searchMonList.originalHeads = searchArr.map(card => {
- if (card instanceof Member) {
- return createCardHead(card, additionalOption);
- } else {
- return createCardHead(card.id, additionalOption);
- }
+ const avatarNode = createCardHead(card instanceof Member ? card : card.id, additionalOption);
+ const isDge = isDungeonEnhance(formation.dungeonEnchance, card);
+ avatarNode.classList.toggle("is-dge", isDge.awoken);
+ return avatarNode;
});
searchMonList.customAddition = additionalOption.customAddition;
//对头像列表进行排序
@@ -5394,6 +5391,11 @@ function initialize() {
newOpt.setAttribute("data-tag", sfunc.tag);
s_sortList.options.add(newOpt);
});
+ const s_isDge = document.getElementById("only-show-dungeon-enhance");
+ s_isDge.onchange = function(){
+ searchMonList.classList.toggle(this.id, this.checked);
+ }
+ s_isDge.onchange();
//id搜索
editBox.changeMonId = editBoxChangeMonId;
diff --git a/service-worker.js b/service-worker.js
index 7412de35..cba1b161 100644
--- a/service-worker.js
+++ b/service-worker.js
@@ -54395,7 +54395,7 @@ const cachesMap = new Map([
],
[
"multi.html",
- "7767c73c5f80725d6e4ef6c6f7356223"
+ "87bcda44a4def639b642ab3fadc32cb7"
],
[
"script-custom_elements.js",
@@ -54411,15 +54411,15 @@ const cachesMap = new Map([
],
[
"script-universal_function.js",
- "1d2c8fb8a30b8958ea6da3a7682498cd"
+ "7de0374d14414c5894138630e2139578"
],
[
"script.js",
- "542d09d17802246336d198a547d95703"
+ "fe31655ca750f6e030ae6f25b7c5b5a8"
],
[
"solo.html",
- "95a7afd45c572ab804917e29d1783e60"
+ "633cdb0ed0786321ae54451b6bd8e08b"
],
[
"style-fix-html2canvas.css",
@@ -54431,7 +54431,7 @@ const cachesMap = new Map([
],
[
"style.css",
- "77791a5864f41d7577c130ad090776bf"
+ "4922f21188a7c946fb4ecdc8bccdac1c"
],
[
"temp.js",
@@ -54439,11 +54439,11 @@ const cachesMap = new Map([
],
[
"triple.html",
- "56f9ee4a50b32f0d896b5154c801d45b"
+ "04878ddb76de4998e8ee62bf91be60e2"
],
[
"languages/en.css",
- "c1d5aca45b5b4379a2a553070b8852e9"
+ "36c2996f2028568f455a0d4f0191ab77"
],
[
"languages/en.js",
@@ -54451,7 +54451,7 @@ const cachesMap = new Map([
],
[
"languages/ja.css",
- "9435ea1636e9a8389502a7ce07d23caa"
+ "2952bc658c8bc4232bba3586ac7e90b1"
],
[
"languages/ja.js",
@@ -54459,7 +54459,7 @@ const cachesMap = new Map([
],
[
"languages/ko.css",
- "9f2052af52e181a383c3ea25477649fd"
+ "e15a2c776605ba0e87d368010a77fc40"
],
[
"languages/ko.js",
@@ -54471,7 +54471,7 @@ const cachesMap = new Map([
],
[
"languages/zh-hans.css",
- "e236d607e29f36710817a2a3b27a5c8a"
+ "5b79a32e58143a0adf0be2c7c46d0dd9"
],
[
"languages/zh-hans.js",
@@ -54479,7 +54479,7 @@ const cachesMap = new Map([
],
[
"languages/zh-hant.css",
- "6be62563e13e5263c704432960e2c41e"
+ "aa3feff58a2ce832220fbf0eed921302"
],
[
"languages/zh-hant.js",
diff --git a/solo.html b/solo.html
index 87a5c067..4bd2efef 100644
--- a/solo.html
+++ b/solo.html
@@ -982,6 +982,7 @@ const teamsCount = 1;
@@ -1475,7 +1476,7 @@ const teamsCount = 1;
diff --git a/style.css b/style.css
index 5fb44887..530133f4 100644
--- a/style.css
+++ b/style.css
@@ -2668,6 +2668,9 @@ body.use-sticky .sticky-box{
height: 30vh;
resize: vertical;
}
+.search-mon-list.only-show-dungeon-enhance>li:not(.is-dge) {
+ display: none;
+}
.setting-box .row-mon-id .real-time-change-card-label
{
diff --git a/triple.html b/triple.html
index 22842675..7b3c6787 100644
--- a/triple.html
+++ b/triple.html
@@ -1827,6 +1827,7 @@ const teamsCount = 3;
@@ -2320,7 +2321,7 @@ const teamsCount = 3;