diff --git a/src/components/quickView/index.tsx b/src/components/quickView/index.tsx
index ffceb03..ee2afb8 100644
--- a/src/components/quickView/index.tsx
+++ b/src/components/quickView/index.tsx
@@ -443,9 +443,9 @@ export default function QuickView() {
{relicStats?.map((relic, index) => {
- if (!relic) return null
+ if (!relic || !avatarInfo) return null
return (
-
+
)
})}
diff --git a/src/components/showcaseCard/index.tsx b/src/components/showcaseCard/index.tsx
index 80a1201..99839cb 100644
--- a/src/components/showcaseCard/index.tsx
+++ b/src/components/showcaseCard/index.tsx
@@ -173,6 +173,20 @@ export default function ShowCaseInfo() {
})
}, [avatarSelected, avatarProfile, mapMainAffix, mapSubAffix])
+ const totalSubStats = useMemo(() => {
+ if (!relicStats?.length) return 0
+ return (relicStats ?? []).reduce((acc, relic) => {
+ const subAffixList = relic?.subAffix ?? []
+ return acc + subAffixList.reduce((subAcc, subAffix) => {
+ if (avatarInfo?.Relics?.SubAffixPropertyList.findIndex(it => it === subAffix.property) !== -1) {
+ return subAcc + (subAffix?.count ?? 0)
+ }
+ return subAcc
+ }, 0)
+ }, 0)
+ }, [relicStats, avatarInfo])
+
+
const characterStats = useMemo(() => {
if (!avatarSelected || !avatarData) return
const charPromotion = calcPromotion(avatarData.level)
@@ -588,12 +602,17 @@ export default function ShowCaseInfo() {
-
+
Lv. {avatarData?.level}/80
+
+ {totalSubStats}
+
+
{avatarSelected && (
+
)}
@@ -886,9 +905,9 @@ export default function ShowCaseInfo() {
{relicStats?.map((relic, index) => {
- if (!relic) return null
+ if (!relic || !avatarInfo) return null
return (
-
+
)
})}
diff --git a/src/components/showcaseCard/relicShowcase.tsx b/src/components/showcaseCard/relicShowcase.tsx
index 6760e2a..96029ac 100644
--- a/src/components/showcaseCard/relicShowcase.tsx
+++ b/src/components/showcaseCard/relicShowcase.tsx
@@ -2,12 +2,14 @@
"use client"
import NextImage from "next/image"
-import { RelicShowcaseType } from "@/types";
+import { CharacterDetail, RelicShowcaseType } from "@/types";
export default function RelicShowcase({
relic,
+ avatarInfo,
}: {
relic: RelicShowcaseType;
+ avatarInfo: CharacterDetail;
}) {
return (
<>
@@ -83,9 +85,10 @@ export default function RelicShowcase({
+{subAffix?.valueAffix + subAffix?.detail?.unit}
- {subAffix.count > 1 && (
+ {
+ (avatarInfo?.Relics?.SubAffixPropertyList.findIndex((item) => item === subAffix?.property) !== -1) && (
- {subAffix?.count-1}
+ {subAffix?.count}
)}