feat: added deltas to totals

This commit is contained in:
TrèsAbhi committed 2023-10-01 11:05:01 -05:00
1 parent e7f517e157
commit b39f545669
1 file changed
+36 -38
+36 -38
View File
@@ -39,6 +39,36 @@ export default function SessionPage() {
const tankStatsArray = session.isTracking const tankStatsArray = session.isTracking
? (Object.values(session.tankStats) as IndividualTankStats[]) ? (Object.values(session.tankStats) as IndividualTankStats[])
: []; : [];
const sessionWinrate = diff
? diff.list.reduce(
(accumulator, { stats }) => accumulator + stats.all.wins,
0,
) / battles!
: 0;
const careerWinrate =
tankStatsArray.reduce(
(accumulator, stats) => accumulator + stats.all.wins,
0,
) /
tankStatsArray.reduce(
(accumulator, stats) => accumulator + stats.all.battles,
0,
);
const currentDamage = diff
? diff.list.reduce(
(accumulator, { stats }) => accumulator + stats.all.damage_dealt,
0,
) / battles!
: 0;
const careerDamage =
tankStatsArray.reduce(
(accumulator, stats) => accumulator + stats.all.damage_dealt,
0,
) /
tankStatsArray.reduce(
(accumulator, stats) => accumulator + stats.all.battles,
0,
);
useEffect(() => { useEffect(() => {
async function recalculateDiff() { async function recalculateDiff() {
@@ -138,27 +168,9 @@ export default function SessionPage() {
}, },
{ {
title: 'Winrate', title: 'Winrate',
current: battles current: battles ? `${(100 * sessionWinrate).toFixed(2)}%` : '--',
? `${( career: `${(100 * careerWinrate).toFixed(2)}%`,
100 * delta: sessionWinrate - careerWinrate,
(diff.list.reduce(
(accumulator, { stats }) => accumulator + stats.all.wins,
0,
) /
battles)
).toFixed(2)}%`
: '--',
career: `${(
100 *
(tankStatsArray.reduce(
(accumulator, stats) => accumulator + stats.all.wins,
0,
) /
tankStatsArray.reduce(
(accumulator, stats) => accumulator + stats.all.battles,
0,
))
).toFixed(2)}%`,
}, },
(() => { (() => {
const battlesWithWN8 = diff.list.reduce( const battlesWithWN8 = diff.list.reduce(
@@ -187,25 +199,11 @@ export default function SessionPage() {
})(), })(),
{ {
title: 'Damage', title: 'Damage',
delta: currentDamage - careerDamage,
current: battles current: battles
? Math.round( ? Math.round(currentDamage).toLocaleString()
diff.list.reduce(
(accumulator, { stats }) =>
accumulator + stats.all.damage_dealt,
0,
) / battles,
).toLocaleString()
: '--', : '--',
career: Math.round( career: Math.round(careerDamage).toLocaleString(),
tankStatsArray.reduce(
(accumulator, stats) => accumulator + stats.all.damage_dealt,
0,
) /
tankStatsArray.reduce(
(accumulator, stats) => accumulator + stats.all.battles,
0,
),
).toLocaleString(),
}, },
]} ]}
/> />