From 5d41f092d7a9bae592c930d3e446e49627c367fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9E=AB=E8=B0=B7=E5=89=91=E4=BB=99?= Date: Fri, 16 May 2025 17:34:09 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=9D=E8=AF=95=E8=A7=A3=E5=86=B3=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E6=9B=B4=E6=96=B0=E6=80=AA=E7=89=A9=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=97=B6=E5=8F=AF=E8=83=BD=E5=87=BA=E7=8E=B0=E7=9A=84=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- script-universal_function.js | 28 +++++++++++++++------------- script.js | 15 +-------------- 2 files changed, 16 insertions(+), 27 deletions(-) diff --git a/script-universal_function.js b/script-universal_function.js index 5d3989c1..76aea7d0 100644 --- a/script-universal_function.js +++ b/script-universal_function.js @@ -1837,22 +1837,24 @@ function countTeamSB(team, solo) { return sbn; } +//返回一个角色的根ID +function returnCardRootId(mid, henshin = true) +{ + const card = Cards[mid]; + if (!card) return null; + let rootid = card.evoRootId; + const m = Cards[rootid]; + if (henshin && Array.isArray(m.henshinFrom) && m.henshinFrom[0] < m.id) + { //只有变身来源小于目前id的,才继续找base,为了解决黑魔导女孩的问题,将来如果需要要可以改成检测是否能110级 + rootid = returnCardRootId(m.henshinFrom[0]); + } + return rootid; +} //判断两个角色是否是同一进化链 function isSameEvoTree(mon1, mon2) { if (mon1.id <= 0 || mon2.id <= 0) return false; - //返回一个角色的根ID - function returnRootId(mid, henshin = true) - { - let rootid = Cards[mid].evoRootId; - const m = Cards[rootid]; - if (henshin && Array.isArray(m.henshinFrom) && m.henshinFrom[0] < m.id) - { //只有变身来源小于目前id的,才继续找base,为了解决黑魔导女孩的问题,将来如果需要要可以改成检测是否能110级 - rootid = returnRootId(m.henshinFrom[0]); - } - return rootid; - } - const mon1RootId = returnRootId(mon1.id, mon1.level <= mon1.card.maxLevel); - const mon2RootId = returnRootId(mon2.id, mon2.level <= mon2.card.maxLevel); + const mon1RootId = returnCardRootId(mon1.id, mon1.level <= mon1.card.maxLevel); + const mon2RootId = returnCardRootId(mon2.id, mon2.level <= mon2.card.maxLevel); return mon1RootId == mon2RootId; } diff --git a/script.js b/script.js index 2eeed9d5..544c2ba6 100644 --- a/script.js +++ b/script.js @@ -1653,20 +1653,7 @@ class EvoTree const _this = this; this.parent = parent; if (parent == null) //如果没有提供父级,则寻找进化根 - { - //返回一个角色的根ID - function returnRootId(mid) - { - mid = Cards[mid].evoRootId; - const m = Cards[mid]; - if (Array.isArray(m.henshinFrom) && m.henshinFrom[0] < m.id) - { //只有变身来源小于目前id的,才继续找base,为了解决黑魔导女孩的问题,将来如果需要要可以改成检测是否能110级 - mid = returnRootId(m.henshinFrom[0]); - } - return mid; - } - mid = returnRootId(mid); - } + mid = returnCardRootId(mid); const card = Cards[mid]; this.id = mid;