aboutsummaryrefslogtreecommitdiff
path: root/src/cleaners
diff options
context:
space:
mode:
Diffstat (limited to 'src/cleaners')
-rw-r--r--src/cleaners/skyblock/minions.ts11
-rw-r--r--src/cleaners/skyblock/profile.ts4
2 files changed, 13 insertions, 2 deletions
diff --git a/src/cleaners/skyblock/minions.ts b/src/cleaners/skyblock/minions.ts
index da69634..b5ac85d 100644
--- a/src/cleaners/skyblock/minions.ts
+++ b/src/cleaners/skyblock/minions.ts
@@ -67,4 +67,13 @@ export function combineMinionArrays(minions: CleanMinion[][]): CleanMinion[] {
}
return resultMinions
-} \ No newline at end of file
+}
+
+export function countUniqueMinions(minions: CleanMinion[]): number {
+ let uniqueMinions: number = 0
+ for (const minion of minions) {
+ // find the number of times `true` is in the list and add it to uniqueMinions
+ uniqueMinions += minion.levels.filter(x => x).length
+ }
+ return uniqueMinions
+}
diff --git a/src/cleaners/skyblock/profile.ts b/src/cleaners/skyblock/profile.ts
index c61e6cf..5d2b7a3 100644
--- a/src/cleaners/skyblock/profile.ts
+++ b/src/cleaners/skyblock/profile.ts
@@ -1,5 +1,5 @@
import { CleanBasicMember, CleanMember, CleanMemberProfile, cleanSkyBlockProfileMemberResponse } from './member'
-import { CleanMinion, combineMinionArrays } from './minions'
+import { CleanMinion, combineMinionArrays, countUniqueMinions } from './minions'
import * as cached from '../../hypixelCached'
import { cleanBank } from './bank'
@@ -92,6 +92,7 @@ export async function fetchMemberProfile(user: string, profile: string): Promise
return {
member: {
+ // the profile name is in member rather than profile since they sometimes differ for each member
profileName: cleanProfile.name,
first_join: member.first_join,
last_save: member.last_save,
@@ -102,6 +103,7 @@ export async function fetchMemberProfile(user: string, profile: string): Promise
uuid: cleanProfile.uuid,
bank: cleanProfile.bank,
minions: cleanProfile.minions,
+ minion_count: countUniqueMinions(cleanProfile.minions)
}
}
}