aboutsummaryrefslogtreecommitdiff
path: root/src/cleaners/skyblock/gameMode.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/cleaners/skyblock/gameMode.ts')
-rw-r--r--src/cleaners/skyblock/gameMode.ts16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/cleaners/skyblock/gameMode.ts b/src/cleaners/skyblock/gameMode.ts
new file mode 100644
index 0000000..635c00a
--- /dev/null
+++ b/src/cleaners/skyblock/gameMode.ts
@@ -0,0 +1,16 @@
+import typedHypixelApi from 'typed-hypixel-api'
+import { fetchItemList } from '../../hypixel.js'
+import { levelFromXpTable } from '../../util.js'
+import { fetchPets } from '../../constants.js'
+import { ItemListItem } from './itemList.js'
+
+export type GameMode = 'normal' | 'stranded' | 'bingo' | 'ironman'
+const gameModeMap: Record<NonNullable<typedHypixelApi.SkyBlockProfile['game_mode']>, GameMode> = {
+ bingo: 'bingo',
+ island: 'stranded',
+ ironman: 'ironman',
+}
+
+export function cleanGameMode(data: typedHypixelApi.SkyBlockProfile): GameMode {
+ return (data.game_mode && (data.game_mode in gameModeMap)) ? gameModeMap[data.game_mode] : 'normal'
+}