diff --git a/src/features/ServerPage/features/WarStatsPage/WarStatsPage.tsx b/src/features/ServerPage/features/WarStatsPage/WarStatsPage.tsx
index 4add88e..e4961ab 100644
--- a/src/features/ServerPage/features/WarStatsPage/WarStatsPage.tsx
+++ b/src/features/ServerPage/features/WarStatsPage/WarStatsPage.tsx
@@ -80,6 +80,15 @@ function WarStatsPage() {
players: Player[] = [],
tribes: Tribe[] = []
): SideResult => {
+ let totalVillages = 0;
+ tribes.forEach(t => {
+ totalVillages += t.totalVillages;
+ });
+ players
+ .filter(p => !p.tribe || !tribes.some(t => t.id === p.tribe?.id))
+ .forEach(p => {
+ totalVillages += p.totalVillages;
+ });
return {
gained: totalGained,
lost: totalLost,
@@ -87,6 +96,7 @@ function WarStatsPage() {
difference: totalGained - totalLost,
players,
tribes,
+ totalVillages,
};
};
diff --git a/src/features/ServerPage/features/WarStatsPage/components/Results/OneSideResult.tsx b/src/features/ServerPage/features/WarStatsPage/components/Results/OneSideResult.tsx
index bf21879..1872023 100644
--- a/src/features/ServerPage/features/WarStatsPage/components/Results/OneSideResult.tsx
+++ b/src/features/ServerPage/features/WarStatsPage/components/Results/OneSideResult.tsx
@@ -52,6 +52,10 @@ function OneSideResult({ data, t, server, title }: Props) {
))}
)}
+
+ {t('results.villages')}:{' '}
+ {formatNumber('commas', data.totalVillages)}
+
{t('results.gained')}:{' '}
{formatNumber('commas', data.gained)}
diff --git a/src/features/ServerPage/features/WarStatsPage/queries.ts b/src/features/ServerPage/features/WarStatsPage/queries.ts
index fe087b4..022da20 100644
--- a/src/features/ServerPage/features/WarStatsPage/queries.ts
+++ b/src/features/ServerPage/features/WarStatsPage/queries.ts
@@ -18,6 +18,10 @@ export const PLAYERS = gql`
items {
id
name
+ totalVillages
+ tribe {
+ id
+ }
}
}
}
@@ -41,6 +45,7 @@ export const TRIBES = gql`
items {
id
tag
+ totalVillages
}
}
}
diff --git a/src/features/ServerPage/features/WarStatsPage/types.ts b/src/features/ServerPage/features/WarStatsPage/types.ts
index 1c340cf..fcc1415 100644
--- a/src/features/ServerPage/features/WarStatsPage/types.ts
+++ b/src/features/ServerPage/features/WarStatsPage/types.ts
@@ -3,6 +3,7 @@ import { List, EnnoblementFilter } from '@libs/graphql/types';
export type Tribe = {
id: number;
tag: string;
+ totalVillages: number;
};
export type TribeList = {
@@ -12,6 +13,10 @@ export type TribeList = {
export type Player = {
id: number;
name: string;
+ totalVillages: number;
+ tribe?: {
+ id: number;
+ };
};
export type PlayerList = {
@@ -68,6 +73,7 @@ export type SideResult = {
againstOppositeSide: number;
players: Player[];
tribes: Tribe[];
+ totalVillages: number;
};
export type Results = {