@breezil/hypixel-parsers 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +235 -0
  3. package/dist/arcade.d.ts +560 -0
  4. package/dist/arcade.d.ts.map +1 -0
  5. package/dist/arcade.js +619 -0
  6. package/dist/arcade.js.map +1 -0
  7. package/dist/arenabrawl.d.ts +56 -0
  8. package/dist/arenabrawl.d.ts.map +1 -0
  9. package/dist/arenabrawl.js +107 -0
  10. package/dist/arenabrawl.js.map +1 -0
  11. package/dist/bedwars.d.ts +747 -0
  12. package/dist/bedwars.d.ts.map +1 -0
  13. package/dist/bedwars.js +844 -0
  14. package/dist/bedwars.js.map +1 -0
  15. package/dist/blitz.d.ts +105 -0
  16. package/dist/blitz.d.ts.map +1 -0
  17. package/dist/blitz.js +259 -0
  18. package/dist/blitz.js.map +1 -0
  19. package/dist/buildbattle.d.ts +54 -0
  20. package/dist/buildbattle.d.ts.map +1 -0
  21. package/dist/buildbattle.js +92 -0
  22. package/dist/buildbattle.js.map +1 -0
  23. package/dist/common.d.ts +11 -0
  24. package/dist/common.d.ts.map +1 -0
  25. package/dist/common.js +34 -0
  26. package/dist/common.js.map +1 -0
  27. package/dist/copsandcrims.d.ts +201 -0
  28. package/dist/copsandcrims.d.ts.map +1 -0
  29. package/dist/copsandcrims.js +269 -0
  30. package/dist/copsandcrims.js.map +1 -0
  31. package/dist/duels.d.ts +358 -0
  32. package/dist/duels.d.ts.map +1 -0
  33. package/dist/duels.js +570 -0
  34. package/dist/duels.js.map +1 -0
  35. package/dist/guild.d.ts +49 -0
  36. package/dist/guild.d.ts.map +1 -0
  37. package/dist/guild.js +95 -0
  38. package/dist/guild.js.map +1 -0
  39. package/dist/housing.d.ts +16 -0
  40. package/dist/housing.d.ts.map +1 -0
  41. package/dist/housing.js +34 -0
  42. package/dist/housing.js.map +1 -0
  43. package/dist/index.d.ts +50 -0
  44. package/dist/index.d.ts.map +1 -0
  45. package/dist/index.js +66 -0
  46. package/dist/index.js.map +1 -0
  47. package/dist/megawalls.d.ts +363 -0
  48. package/dist/megawalls.d.ts.map +1 -0
  49. package/dist/megawalls.js +684 -0
  50. package/dist/megawalls.js.map +1 -0
  51. package/dist/murdermystery.d.ts +293 -0
  52. package/dist/murdermystery.d.ts.map +1 -0
  53. package/dist/murdermystery.js +349 -0
  54. package/dist/murdermystery.js.map +1 -0
  55. package/dist/nbt.d.ts +37 -0
  56. package/dist/nbt.d.ts.map +1 -0
  57. package/dist/nbt.js +133 -0
  58. package/dist/nbt.js.map +1 -0
  59. package/dist/paintball.d.ts +52 -0
  60. package/dist/paintball.d.ts.map +1 -0
  61. package/dist/paintball.js +79 -0
  62. package/dist/paintball.js.map +1 -0
  63. package/dist/pit.d.ts +181 -0
  64. package/dist/pit.d.ts.map +1 -0
  65. package/dist/pit.js +262 -0
  66. package/dist/pit.js.map +1 -0
  67. package/dist/player.d.ts +338 -0
  68. package/dist/player.d.ts.map +1 -0
  69. package/dist/player.js +521 -0
  70. package/dist/player.js.map +1 -0
  71. package/dist/quakecraft.d.ts +75 -0
  72. package/dist/quakecraft.d.ts.map +1 -0
  73. package/dist/quakecraft.js +99 -0
  74. package/dist/quakecraft.js.map +1 -0
  75. package/dist/recentgames.d.ts +10 -0
  76. package/dist/recentgames.d.ts.map +1 -0
  77. package/dist/recentgames.js +27 -0
  78. package/dist/recentgames.js.map +1 -0
  79. package/dist/resources-achievements.d.ts +29 -0
  80. package/dist/resources-achievements.d.ts.map +1 -0
  81. package/dist/resources-achievements.js +67 -0
  82. package/dist/resources-achievements.js.map +1 -0
  83. package/dist/resources-challenges.d.ts +12 -0
  84. package/dist/resources-challenges.d.ts.map +1 -0
  85. package/dist/resources-challenges.js +36 -0
  86. package/dist/resources-challenges.js.map +1 -0
  87. package/dist/resources-games.d.ts +10 -0
  88. package/dist/resources-games.d.ts.map +1 -0
  89. package/dist/resources-games.js +28 -0
  90. package/dist/resources-games.js.map +1 -0
  91. package/dist/resources-guild-achievements.d.ts +23 -0
  92. package/dist/resources-guild-achievements.d.ts.map +1 -0
  93. package/dist/resources-guild-achievements.js +56 -0
  94. package/dist/resources-guild-achievements.js.map +1 -0
  95. package/dist/resources-quests.d.ts +23 -0
  96. package/dist/resources-quests.d.ts.map +1 -0
  97. package/dist/resources-quests.js +53 -0
  98. package/dist/resources-quests.js.map +1 -0
  99. package/dist/resources-vanity.d.ts +19 -0
  100. package/dist/resources-vanity.d.ts.map +1 -0
  101. package/dist/resources-vanity.js +33 -0
  102. package/dist/resources-vanity.js.map +1 -0
  103. package/dist/skyblock-auctions.d.ts +50 -0
  104. package/dist/skyblock-auctions.d.ts.map +1 -0
  105. package/dist/skyblock-auctions.js +90 -0
  106. package/dist/skyblock-auctions.js.map +1 -0
  107. package/dist/skyblock-bazaar.d.ts +25 -0
  108. package/dist/skyblock-bazaar.d.ts.map +1 -0
  109. package/dist/skyblock-bazaar.js +54 -0
  110. package/dist/skyblock-bazaar.js.map +1 -0
  111. package/dist/skyblock-bingo.d.ts +8 -0
  112. package/dist/skyblock-bingo.d.ts.map +1 -0
  113. package/dist/skyblock-bingo.js +19 -0
  114. package/dist/skyblock-bingo.js.map +1 -0
  115. package/dist/skyblock-items.d.ts +150 -0
  116. package/dist/skyblock-items.d.ts.map +1 -0
  117. package/dist/skyblock-items.js +247 -0
  118. package/dist/skyblock-items.js.map +1 -0
  119. package/dist/skyblock-misc.d.ts +91 -0
  120. package/dist/skyblock-misc.d.ts.map +1 -0
  121. package/dist/skyblock-misc.js +159 -0
  122. package/dist/skyblock-misc.js.map +1 -0
  123. package/dist/skyblock-museum.d.ts +24 -0
  124. package/dist/skyblock-museum.d.ts.map +1 -0
  125. package/dist/skyblock-museum.js +51 -0
  126. package/dist/skyblock-museum.js.map +1 -0
  127. package/dist/skyblock-news.d.ts +12 -0
  128. package/dist/skyblock-news.d.ts.map +1 -0
  129. package/dist/skyblock-news.js +25 -0
  130. package/dist/skyblock-news.js.map +1 -0
  131. package/dist/skyblock-resources.d.ts +94 -0
  132. package/dist/skyblock-resources.d.ts.map +1 -0
  133. package/dist/skyblock-resources.js +175 -0
  134. package/dist/skyblock-resources.js.map +1 -0
  135. package/dist/skyblock.d.ts +972 -0
  136. package/dist/skyblock.d.ts.map +1 -0
  137. package/dist/skyblock.js +1371 -0
  138. package/dist/skyblock.js.map +1 -0
  139. package/dist/skywars.d.ts +319 -0
  140. package/dist/skywars.d.ts.map +1 -0
  141. package/dist/skywars.js +611 -0
  142. package/dist/skywars.js.map +1 -0
  143. package/dist/smashheroes.d.ts +126 -0
  144. package/dist/smashheroes.d.ts.map +1 -0
  145. package/dist/smashheroes.js +206 -0
  146. package/dist/smashheroes.js.map +1 -0
  147. package/dist/static.d.ts +42 -0
  148. package/dist/static.d.ts.map +1 -0
  149. package/dist/static.js +106 -0
  150. package/dist/static.js.map +1 -0
  151. package/dist/status.d.ts +9 -0
  152. package/dist/status.d.ts.map +1 -0
  153. package/dist/status.js +18 -0
  154. package/dist/status.js.map +1 -0
  155. package/dist/tntgames.d.ts +189 -0
  156. package/dist/tntgames.d.ts.map +1 -0
  157. package/dist/tntgames.js +283 -0
  158. package/dist/tntgames.js.map +1 -0
  159. package/dist/turbokartracers.d.ts +85 -0
  160. package/dist/turbokartracers.d.ts.map +1 -0
  161. package/dist/turbokartracers.js +165 -0
  162. package/dist/turbokartracers.js.map +1 -0
  163. package/dist/uhc.d.ts +55 -0
  164. package/dist/uhc.d.ts.map +1 -0
  165. package/dist/uhc.js +94 -0
  166. package/dist/uhc.js.map +1 -0
  167. package/dist/vampirez.d.ts +75 -0
  168. package/dist/vampirez.d.ts.map +1 -0
  169. package/dist/vampirez.js +104 -0
  170. package/dist/vampirez.js.map +1 -0
  171. package/dist/walls.d.ts +96 -0
  172. package/dist/walls.d.ts.map +1 -0
  173. package/dist/walls.js +122 -0
  174. package/dist/walls.js.map +1 -0
  175. package/dist/warlords.d.ts +229 -0
  176. package/dist/warlords.d.ts.map +1 -0
  177. package/dist/warlords.js +309 -0
  178. package/dist/warlords.js.map +1 -0
  179. package/package.json +55 -0
@@ -0,0 +1,611 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.parseSkyWars = parseSkyWars;
4
+ const common_1 = require("./common");
5
+ function toStringArray(value) {
6
+ return Array.isArray(value)
7
+ ? value.filter((item) => typeof item === "string")
8
+ : [];
9
+ }
10
+ function stringArray(skyWars, key) {
11
+ return toStringArray(skyWars[key]);
12
+ }
13
+ function stringMap(value) {
14
+ if (typeof value !== "object" || value === null || Array.isArray(value)) {
15
+ return {};
16
+ }
17
+ const result = {};
18
+ for (const [slot, entry] of Object.entries(value)) {
19
+ if (typeof entry === "string") {
20
+ result[slot] = entry;
21
+ }
22
+ }
23
+ return result;
24
+ }
25
+ function suffixKey(suffix) {
26
+ return (field) => `${field}${suffix}`;
27
+ }
28
+ function parseKillsByType(skyWars, key) {
29
+ return {
30
+ total: (0, common_1.num)(skyWars, key("kills")),
31
+ melee: (0, common_1.num)(skyWars, key("melee_kills")),
32
+ void: (0, common_1.num)(skyWars, key("void_kills")),
33
+ bow: (0, common_1.num)(skyWars, key("bow_kills")),
34
+ mob: (0, common_1.num)(skyWars, key("mob_kills")),
35
+ };
36
+ }
37
+ function parseHeadsByType(skyWars, key) {
38
+ return {
39
+ total: (0, common_1.num)(skyWars, key("heads")),
40
+ tasty: (0, common_1.num)(skyWars, key("heads_tasty")),
41
+ yucky: (0, common_1.num)(skyWars, key("heads_yucky")),
42
+ eww: (0, common_1.num)(skyWars, key("heads_eww")),
43
+ salty: (0, common_1.num)(skyWars, key("heads_salty")),
44
+ divine: (0, common_1.num)(skyWars, key("heads_divine")),
45
+ heavenly: (0, common_1.num)(skyWars, key("heads_heavenly")),
46
+ decent: (0, common_1.num)(skyWars, key("heads_decent")),
47
+ meh: (0, common_1.num)(skyWars, key("heads_meh")),
48
+ succulent: (0, common_1.num)(skyWars, key("heads_succulent")),
49
+ sweet: (0, common_1.num)(skyWars, key("heads_sweet")),
50
+ ethereal: (0, common_1.num)(skyWars, key("heads_ethereal")),
51
+ indescribable: (0, common_1.num)(skyWars, key("heads_indescribable")),
52
+ };
53
+ }
54
+ function parseMode(skyWars, key) {
55
+ return {
56
+ wins: (0, common_1.num)(skyWars, key("wins")),
57
+ losses: (0, common_1.num)(skyWars, key("losses")),
58
+ gamesPlayed: (0, common_1.num)(skyWars, key("games")),
59
+ timePlayed: (0, common_1.num)(skyWars, key("time_played")),
60
+ winStreak: (0, common_1.num)(skyWars, key("win_streak")),
61
+ legacyWinStreak: (0, common_1.num)(skyWars, key("winstreak")),
62
+ survivedPlayers: (0, common_1.num)(skyWars, key("survived_players")),
63
+ chestsOpened: (0, common_1.num)(skyWars, key("chests_opened")),
64
+ killstreak: (0, common_1.num)(skyWars, key("killstreak")),
65
+ longestBowKill: (0, common_1.num)(skyWars, key("longest_bow_kill")),
66
+ fastestWin: (0, common_1.num)(skyWars, key("fastest_win")),
67
+ assists: (0, common_1.num)(skyWars, key("assists")),
68
+ mostKillsGame: (0, common_1.num)(skyWars, key("most_kills_game")),
69
+ longestBowShot: (0, common_1.num)(skyWars, key("longest_bow_shot")),
70
+ arrowsHit: (0, common_1.num)(skyWars, key("arrows_hit")),
71
+ arrowsShot: (0, common_1.num)(skyWars, key("arrows_shot")),
72
+ shard: (0, common_1.num)(skyWars, key("shard")),
73
+ blocksBroken: (0, common_1.num)(skyWars, key("blocks_broken")),
74
+ blocksPlaced: (0, common_1.num)(skyWars, key("blocks_placed")),
75
+ eggsThrown: (0, common_1.num)(skyWars, key("egg_thrown")),
76
+ enderpearlsThrown: (0, common_1.num)(skyWars, key("enderpearls_thrown")),
77
+ itemsEnchanted: (0, common_1.num)(skyWars, key("items_enchanted")),
78
+ quits: (0, common_1.num)(skyWars, key("quits")),
79
+ coins: (0, common_1.num)(skyWars, key("coins")),
80
+ coinsGained: (0, common_1.num)(skyWars, key("coins_gained")),
81
+ souls: (0, common_1.num)(skyWars, key("souls")),
82
+ soulsGathered: (0, common_1.num)(skyWars, key("souls_gathered")),
83
+ refillChestDestroy: (0, common_1.num)(skyWars, key("refill_chest_destroy")),
84
+ kills: parseKillsByType(skyWars, key),
85
+ deaths: (0, common_1.num)(skyWars, key("deaths")),
86
+ fallKills: (0, common_1.num)(skyWars, key("fall_kills")),
87
+ mobsKilled: (0, common_1.num)(skyWars, key("mobs_killed")),
88
+ heads: parseHeadsByType(skyWars, key),
89
+ };
90
+ }
91
+ function parsePerks(skyWars, mode, perks) {
92
+ const result = {};
93
+ for (const [name, id] of perks) {
94
+ result[name] = {
95
+ level: (0, common_1.num)(skyWars, `${mode}_${id}`),
96
+ enabled: (0, common_1.bool)(skyWars, `toggle_${mode}_${id}`),
97
+ };
98
+ }
99
+ return result;
100
+ }
101
+ function parseUniversalPerk(skyWars, id) {
102
+ return {
103
+ level: (0, common_1.num)(skyWars, id),
104
+ enabled: (0, common_1.bool)(skyWars, `toggle_${id}`),
105
+ };
106
+ }
107
+ function parseUniversalPerks(skyWars) {
108
+ return {
109
+ avarice: parseUniversalPerk(skyWars, "avarice"),
110
+ grandSlam: parseUniversalPerk(skyWars, "grand_slam"),
111
+ tenacity: parseUniversalPerk(skyWars, "tenacity"),
112
+ meticulousMiner: parseUniversalPerk(skyWars, "meticulous_miner"),
113
+ hideAndSeek: parseUniversalPerk(skyWars, "hide_and_seek"),
114
+ midasGift: parseUniversalPerk(skyWars, "midas_gift"),
115
+ firstBlood: parseUniversalPerk(skyWars, "first_blood"),
116
+ fortuneTeller: parseUniversalPerk(skyWars, "fortune_teller"),
117
+ fireproof: parseUniversalPerk(skyWars, "fireproof"),
118
+ angelsOffering: parseUniversalPerk(skyWars, "angels_offering"),
119
+ librarian: parseUniversalPerk(skyWars, "librarian"),
120
+ luckierCharm: parseUniversalPerk(skyWars, "luckier_charm"),
121
+ apothecary: parseUniversalPerk(skyWars, "apothecary"),
122
+ fruitFinder: parseUniversalPerk(skyWars, "fruit_finder"),
123
+ sorcerersSpell: parseUniversalPerk(skyWars, "sorcerers_spell"),
124
+ corruptedCoinage: parseUniversalPerk(skyWars, "corrupted_coinage"),
125
+ };
126
+ }
127
+ const SOLO_PERKS = [
128
+ ["enderMastery", "ender_mastery"],
129
+ ["arrowRecovery", "arrow_recovery"],
130
+ ["miningExpertise", "mining_expertise"],
131
+ ["blazingArrows", "blazing_arrows"],
132
+ ["instantSmelting", "instant_smelting"],
133
+ ["resistanceBoost", "resistance_boost"],
134
+ ["speedBoost", "speed_boost"],
135
+ ["bulldozer", "bulldozer"],
136
+ ["marksmanship", "marksmanship"],
137
+ ["juggernaut", "juggernaut"],
138
+ ["knowledge", "knowledge"],
139
+ ["fat", "fat"],
140
+ ["nourishment", "nourishment"],
141
+ ["annoyOMite", "annoy-o-mite"],
142
+ ["revenge", "revenge"],
143
+ ["luckyCharm", "lucky_charm"],
144
+ ["bridger", "bridger"],
145
+ ["environmentalExpert", "environmental_expert"],
146
+ ["necromancer", "necromancer"],
147
+ ["blackMagic", "black_magic"],
148
+ ["robbery", "robbery"],
149
+ ["frost", "frost"],
150
+ ["barbarian", "barbarian"],
151
+ ["savior", "savior"],
152
+ ];
153
+ const TEAMS_PERKS = [
154
+ ["instantSmelting", "instant_smelting"],
155
+ ["enderMastery", "ender_mastery"],
156
+ ["resistanceBoost", "resistance_boost"],
157
+ ["miningExpertise", "mining_expertise"],
158
+ ["juggernaut", "juggernaut"],
159
+ ["blazingArrows", "blazing_arrows"],
160
+ ["arrowRecovery", "arrow_recovery"],
161
+ ["speedBoost", "speed_boost"],
162
+ ["fat", "fat"],
163
+ ["nourishment", "nourishment"],
164
+ ["knowledge", "knowledge"],
165
+ ["savior", "savior"],
166
+ ["marksmanship", "marksmanship"],
167
+ ["bridger", "bridger"],
168
+ ["luckyCharm", "lucky_charm"],
169
+ ["necromancer", "necromancer"],
170
+ ["blackMagic", "black_magic"],
171
+ ["environmentalExpert", "environmental_expert"],
172
+ ["robbery", "robbery"],
173
+ ["frost", "frost"],
174
+ ["annoyOMite", "annoy-o-mite"],
175
+ ["bulldozer", "bulldozer"],
176
+ ["barbarian", "barbarian"],
177
+ ["diamondpiercer", "diamondpiercer"],
178
+ ];
179
+ const MEGA_PERKS = [
180
+ ["rusher", "rusher"],
181
+ ["miningExpertise", "mining_expertise"],
182
+ ["enderMastery", "ender_mastery"],
183
+ ["blazingArrows", "blazing_arrows"],
184
+ ["arrowRecovery", "arrow_recovery"],
185
+ ["juggernaut", "juggernaut"],
186
+ ["tank", "tank"],
187
+ ["nourishment", "nourishment"],
188
+ ["notoriety", "notoriety"],
189
+ ["instantSmelting", "instant_smelting"],
190
+ ["marksmanship", "marksmanship"],
191
+ ["environmentalExpert", "environmental_expert"],
192
+ ["bridger", "bridger"],
193
+ ["luckyCharm", "lucky_charm"],
194
+ ["blackMagic", "black_magic"],
195
+ ["necromancer", "necromancer"],
196
+ ];
197
+ const RANKED_PERKS = [
198
+ ["instantSmelting", "instant_smelting"],
199
+ ["scoutPerk", "scout_perk"],
200
+ ["athletePerk", "athlete_perk"],
201
+ ["bowmanPerk", "bowman_perk"],
202
+ ["championPerk", "champion_perk"],
203
+ ["paladinPerk", "paladin_perk"],
204
+ ["blacksmithPerk", "blacksmith_perk"],
205
+ ["armorerPerk", "armorer_perk"],
206
+ ["healerPerk", "healer_perk"],
207
+ ["houndPerk", "hound_perk"],
208
+ ["magicianPerk", "magician_perk"],
209
+ ["pyromancerPerk", "pyromancer_perk"],
210
+ ["lastStand", "last_stand"],
211
+ ["toughSkin", "tough_skin"],
212
+ ["arrowRecovery", "arrow_recovery"],
213
+ ["juggernaut", "juggernaut"],
214
+ ["miningExpertise", "mining_expertise"],
215
+ ["blazingArrows", "blazing_arrows"],
216
+ ["rusher", "rusher"],
217
+ ["bridger", "bridger"],
218
+ ["environmentalExpert", "environmental_expert"],
219
+ ];
220
+ const MYTHIC_KIT_SUFFIX = {
221
+ chronobreaker: "_kit_mythical_chronobreaker",
222
+ netherLord: "_kit_mythical_nether-lord",
223
+ endLord: "_kit_mythical_end-lord",
224
+ monsterTrainer: "_kit_mythical_monster-trainer",
225
+ cryomancer: "_kit_mythical_cryomancer",
226
+ thundermeister: "_kit_mythical_thundermeister",
227
+ fishmonger: "_kit_mythical_fishmonger",
228
+ };
229
+ function parseMythicKit(skyWars, suffix) {
230
+ return {
231
+ ...parseMode(skyWars, suffixKey(suffix)),
232
+ experience: (0, common_1.num)(skyWars, `xp${suffix}`),
233
+ autoEquipArmor: (0, common_1.bool)(skyWars, `${suffix.slice(1)}_inventory_auto_equip_armor`),
234
+ lab: parseMode(skyWars, suffixKey(`_lab${suffix}`)),
235
+ tourney: parseMode(skyWars, suffixKey(`_tourney${suffix}`)),
236
+ };
237
+ }
238
+ function parseMythicKits(skyWars) {
239
+ return {
240
+ chronobreaker: parseMythicKit(skyWars, MYTHIC_KIT_SUFFIX.chronobreaker),
241
+ netherLord: parseMythicKit(skyWars, MYTHIC_KIT_SUFFIX.netherLord),
242
+ endLord: parseMythicKit(skyWars, MYTHIC_KIT_SUFFIX.endLord),
243
+ monsterTrainer: parseMythicKit(skyWars, MYTHIC_KIT_SUFFIX.monsterTrainer),
244
+ cryomancer: parseMythicKit(skyWars, MYTHIC_KIT_SUFFIX.cryomancer),
245
+ thundermeister: parseMythicKit(skyWars, MYTHIC_KIT_SUFFIX.thundermeister),
246
+ fishmonger: parseMythicKit(skyWars, MYTHIC_KIT_SUFFIX.fishmonger),
247
+ };
248
+ }
249
+ function parsePerkSlots(skyWars) {
250
+ const slots = (0, common_1.obj)(skyWars, "perkslot");
251
+ return {
252
+ insane: stringMap(slots.insane),
253
+ normal: stringMap(slots.normal),
254
+ mega: stringMap(slots.mega),
255
+ };
256
+ }
257
+ function parseDisabledPerks(skyWars) {
258
+ const disabled = (0, common_1.obj)(skyWars, "disabled_perks");
259
+ const result = {};
260
+ for (const key of Object.keys(disabled)) {
261
+ result[key] = toStringArray(disabled[key]);
262
+ }
263
+ return result;
264
+ }
265
+ function parseBrewery(skyWars) {
266
+ const brewery = (0, common_1.obj)(skyWars, "brewery");
267
+ return {
268
+ gildedTonic: (0, common_1.num)(brewery, "gilded_tonic"),
269
+ enderElixir: (0, common_1.num)(brewery, "ender_elixir"),
270
+ };
271
+ }
272
+ function parseSettings(skyWars) {
273
+ const settings = (0, common_1.obj)(skyWars, "settings");
274
+ return {
275
+ soulWellLobbyNotifications: (0, common_1.bool)(settings, "soul_well_lobby_notifications"),
276
+ showPersonalMovementTrails: (0, common_1.bool)(settings, "show_personal_movement_trails"),
277
+ };
278
+ }
279
+ function parseLeaderboardSettings(skyWars) {
280
+ const settings = (0, common_1.obj)(skyWars, "leaderboardSettings");
281
+ return {
282
+ resetType: (0, common_1.str)(settings, "resetType"),
283
+ mode: (0, common_1.str)(settings, "mode"),
284
+ };
285
+ }
286
+ function parseRankedSeasonRatings(skyWars) {
287
+ const result = {};
288
+ for (const rawKey of Object.keys(skyWars)) {
289
+ const match = /^SkyWars_skywars_rating_(\d+_\d+)_(rating|position)$/.exec(rawKey);
290
+ const value = skyWars[rawKey];
291
+ if (!match || typeof value !== "number") {
292
+ continue;
293
+ }
294
+ const entry = result[match[1]] ?? (result[match[1]] = { rating: 0, position: 0 });
295
+ if (match[2] === "rating") {
296
+ entry.rating = value;
297
+ }
298
+ else {
299
+ entry.position = value;
300
+ }
301
+ }
302
+ return result;
303
+ }
304
+ function parsePrivateGames(skyWars) {
305
+ const settings = (0, common_1.obj)(skyWars, "privategames");
306
+ return {
307
+ maxKitsAndPerks: (0, common_1.bool)(settings, "enable_max_kits_and_perks"),
308
+ legacyItems: (0, common_1.bool)(settings, "enable_legacy_items"),
309
+ speed: (0, common_1.str)(settings, "speed"),
310
+ dragons: (0, common_1.str)(settings, "dragons"),
311
+ noKits: (0, common_1.bool)(settings, "no_kits"),
312
+ nightTime: (0, common_1.bool)(settings, "enable_night_time"),
313
+ healthBuff: (0, common_1.str)(settings, "health_buff"),
314
+ teleportMayhem: (0, common_1.bool)(settings, "enable_teleport_mayhem"),
315
+ chestSwords: (0, common_1.str)(settings, "chest_swords"),
316
+ chestArmour: (0, common_1.str)(settings, "chest_armour"),
317
+ oneHitOneKill: (0, common_1.bool)(settings, "one_hit_one_kill"),
318
+ lowGravity: (0, common_1.bool)(settings, "low_gravity"),
319
+ chestBows: (0, common_1.str)(settings, "chest_bows"),
320
+ };
321
+ }
322
+ function parseHeadEntries(value) {
323
+ if (!Array.isArray(value)) {
324
+ return [];
325
+ }
326
+ const entries = [];
327
+ for (const item of value) {
328
+ if (typeof item === "object" && item !== null && !Array.isArray(item)) {
329
+ const entry = item;
330
+ entries.push({
331
+ timestamp: (0, common_1.date)(entry, "timestamp"),
332
+ mode: (0, common_1.str)(entry, "mode"),
333
+ sacrifice: (0, common_1.str)(entry, "sacrifice"),
334
+ });
335
+ }
336
+ }
337
+ return entries;
338
+ }
339
+ function parseHeadCollection(skyWars) {
340
+ const collection = (0, common_1.obj)(skyWars, "head_collection");
341
+ return {
342
+ recent: parseHeadEntries(collection.recent),
343
+ prestigious: parseHeadEntries(collection.prestigious),
344
+ };
345
+ }
346
+ function collectNumbers(skyWars, pattern) {
347
+ const result = {};
348
+ for (const rawKey of Object.keys(skyWars)) {
349
+ const match = pattern.exec(rawKey);
350
+ const value = skyWars[rawKey];
351
+ if (match && typeof value === "number") {
352
+ result[match[1]] = value;
353
+ }
354
+ }
355
+ return result;
356
+ }
357
+ function collectBooleans(skyWars, pattern) {
358
+ const result = {};
359
+ for (const rawKey of Object.keys(skyWars)) {
360
+ const match = pattern.exec(rawKey);
361
+ if (match) {
362
+ result[match[1]] = skyWars[rawKey] === true;
363
+ }
364
+ }
365
+ return result;
366
+ }
367
+ function collectStringArrays(skyWars, pattern) {
368
+ const result = {};
369
+ for (const rawKey of Object.keys(skyWars)) {
370
+ const match = pattern.exec(rawKey);
371
+ if (match) {
372
+ result[match[1]] = toStringArray(skyWars[rawKey]);
373
+ }
374
+ }
375
+ return result;
376
+ }
377
+ function collectInventories(skyWars) {
378
+ const result = {};
379
+ for (const rawKey of Object.keys(skyWars)) {
380
+ const match = /^(kit_.+)_inventory$/.exec(rawKey);
381
+ const value = skyWars[rawKey];
382
+ if (match &&
383
+ typeof value === "object" &&
384
+ value !== null &&
385
+ !Array.isArray(value)) {
386
+ const inventory = {};
387
+ for (const [slot, count] of Object.entries(value)) {
388
+ if (typeof count === "string") {
389
+ inventory[slot] = count;
390
+ }
391
+ }
392
+ result[match[1]] = inventory;
393
+ }
394
+ }
395
+ return result;
396
+ }
397
+ function collectKitIds(skyWars) {
398
+ const ids = new Set();
399
+ for (const rawKey of Object.keys(skyWars)) {
400
+ const index = rawKey.indexOf("_kit_");
401
+ if (index < 0) {
402
+ continue;
403
+ }
404
+ const id = rawKey.slice(index + 1);
405
+ if (!id.startsWith("kit_mythical")) {
406
+ ids.add(id);
407
+ }
408
+ }
409
+ return [...ids];
410
+ }
411
+ function parsePerKit(skyWars) {
412
+ const result = {};
413
+ for (const id of collectKitIds(skyWars)) {
414
+ result[id] = {
415
+ experience: (0, common_1.num)(skyWars, `xp_${id}`),
416
+ autoEquipArmor: (0, common_1.bool)(skyWars, `${id}_inventory_auto_equip_armor`),
417
+ overall: parseMode(skyWars, suffixKey(`_${id}`)),
418
+ lab: parseMode(skyWars, suffixKey(`_lab_${id}`)),
419
+ tourney: parseMode(skyWars, suffixKey(`_tourney_${id}`)),
420
+ };
421
+ }
422
+ return result;
423
+ }
424
+ function parseTourneyInstances(skyWars) {
425
+ const ids = new Set();
426
+ for (const rawKey of Object.keys(skyWars)) {
427
+ const match = /^tourney_(.+)_wins$/.exec(rawKey);
428
+ if (match) {
429
+ ids.add(match[1]);
430
+ }
431
+ }
432
+ const result = {};
433
+ for (const id of ids) {
434
+ result[id] = parseMode(skyWars, (field) => `tourney_${id}_${field}`);
435
+ }
436
+ return result;
437
+ }
438
+ /** Parses a player's SkyWars stats (`stats.SkyWars`) into a typed object. */
439
+ function parseSkyWars(stats) {
440
+ const skyWars = (0, common_1.obj)(stats, "SkyWars");
441
+ if (Object.keys(skyWars).length === 0) {
442
+ return null;
443
+ }
444
+ return {
445
+ coins: (0, common_1.num)(skyWars, "coins"),
446
+ tokens: (0, common_1.num)(skyWars, "cosmetic_tokens"),
447
+ experience: (0, common_1.num)(skyWars, "skywars_experience"),
448
+ experiencePending: (0, common_1.num)(skyWars, "skywars_experience_pending"),
449
+ levelFormatted: (0, common_1.str)(skyWars, "levelFormatted"),
450
+ levelFormattedWithBrackets: (0, common_1.str)(skyWars, "levelFormattedWithBrackets"),
451
+ hideLevel: (0, common_1.bool)(skyWars, "hide_skywars_level"),
452
+ lastPrestigeUnlocked: (0, common_1.str)(skyWars, "last_prestige_unlocked"),
453
+ activeScheme: (0, common_1.str)(skyWars, "active_scheme"),
454
+ activeEmblem: (0, common_1.str)(skyWars, "active_emblem"),
455
+ kitsMaxPrestige: (0, common_1.str)(skyWars, "kitsMaxPrestige"),
456
+ lowestLevelRewardsReceived: (0, common_1.num)(skyWars, "lowest_level_rewards_received"),
457
+ gamesPlayedTotal: (0, common_1.num)(skyWars, "games_played_skywars"),
458
+ headsCollected: (0, common_1.num)(skyWars, "heads"),
459
+ souls: (0, common_1.num)(skyWars, "souls"),
460
+ soulWell: (0, common_1.num)(skyWars, "soul_well"),
461
+ soulsGathered: (0, common_1.num)(skyWars, "souls_gathered"),
462
+ paidSouls: (0, common_1.num)(skyWars, "paid_souls"),
463
+ soulWellRares: (0, common_1.num)(skyWars, "soul_well_rares"),
464
+ soulWellLegendaries: (0, common_1.num)(skyWars, "soul_well_legendaries"),
465
+ usedSoulWell: (0, common_1.bool)(skyWars, "usedSoulWell"),
466
+ angelOfDeathLevel: (0, common_1.num)(skyWars, "angel_of_death_level"),
467
+ refillChestDestroy: (0, common_1.num)(skyWars, "refill_chest_destroy"),
468
+ harvestingSeason: (0, common_1.num)(skyWars, "harvesting_season"),
469
+ xezbethLuck: (0, common_1.num)(skyWars, "xezbeth_luck"),
470
+ extraWheels: (0, common_1.num)(skyWars, "extra_wheels"),
471
+ quits: (0, common_1.num)(skyWars, "quits"),
472
+ beastChance: (0, common_1.num)(skyWars, "beast_chance"),
473
+ shardSeeker: (0, common_1.num)(skyWars, "shard_seeker"),
474
+ opals: (0, common_1.num)(skyWars, "opals"),
475
+ opalRollback: (0, common_1.date)(skyWars, "opal_rollback"),
476
+ highestKillstreak: (0, common_1.num)(skyWars, "highestKillstreak"),
477
+ highestWinstreak: (0, common_1.num)(skyWars, "highestWinstreak"),
478
+ lastMode: (0, common_1.str)(skyWars, "lastMode"),
479
+ lastTourneyAd: (0, common_1.num)(skyWars, "lastTourneyAd"),
480
+ freeLootChestNpc: (0, common_1.date)(skyWars, "freeLootChestNpc"),
481
+ selectedPrestigeIcon: (0, common_1.str)(skyWars, "selected_prestige_icon"),
482
+ shopSort: (0, common_1.str)(skyWars, "shop_sort"),
483
+ shopSortOwnedFirst: (0, common_1.bool)(skyWars, "shop_sort_enable_owned_first"),
484
+ luckyBlockResourcePackEnabled: (0, common_1.bool)(skyWars, "luckyBlockResourcePackEnabled"),
485
+ combatTracker: (0, common_1.bool)(skyWars, "combatTracker"),
486
+ activeKillEffect: (0, common_1.str)(skyWars, "active_killeffect"),
487
+ activeVictoryDance: (0, common_1.str)(skyWars, "active_victorydance"),
488
+ activeKillMessages: (0, common_1.str)(skyWars, "active_killmessages"),
489
+ activeDeathCry: (0, common_1.str)(skyWars, "active_deathcry"),
490
+ activeBalloon: (0, common_1.str)(skyWars, "active_balloon"),
491
+ activeCage: (0, common_1.str)(skyWars, "active_cage"),
492
+ activeSprays: (0, common_1.str)(skyWars, "active_sprays"),
493
+ activeProjectileTrail: (0, common_1.str)(skyWars, "active_projectiletrail"),
494
+ selectedCosmetics: {
495
+ killEffect: (0, common_1.str)(skyWars, "activeKillEffect"),
496
+ victoryDance: (0, common_1.str)(skyWars, "activeVictoryDance"),
497
+ projectileTrail: (0, common_1.str)(skyWars, "activeProjectileTrail"),
498
+ deathCry: (0, common_1.str)(skyWars, "activeDeathCry"),
499
+ cage: (0, common_1.str)(skyWars, "activeCage"),
500
+ },
501
+ activeKits: {
502
+ solo: (0, common_1.str)(skyWars, "activeKit_SOLO"),
503
+ team: (0, common_1.str)(skyWars, "activeKit_TEAM"),
504
+ teams: (0, common_1.str)(skyWars, "activeKit_TEAMS"),
505
+ mega: (0, common_1.str)(skyWars, "activeKit_MEGA"),
506
+ megaDoubles: (0, common_1.str)(skyWars, "activeKit_MEGA_DOUBLES"),
507
+ mini: (0, common_1.str)(skyWars, "activeKit_MINI"),
508
+ ranked: (0, common_1.str)(skyWars, "activeKit_RANKED"),
509
+ teamsTourney: (0, common_1.str)(skyWars, "activeKit_TEAMS_tourney"),
510
+ soloRandom: (0, common_1.bool)(skyWars, "activeKit_SOLO_random"),
511
+ megaRandom: (0, common_1.bool)(skyWars, "activeKit_MEGA_random"),
512
+ megaDoublesRandom: (0, common_1.bool)(skyWars, "activeKit_MEGA_DOUBLES_random"),
513
+ miniRandom: (0, common_1.bool)(skyWars, "activeKit_MINI_random"),
514
+ teamsRandom: (0, common_1.bool)(skyWars, "activeKit_TEAMS_random"),
515
+ rankedRandom: (0, common_1.bool)(skyWars, "activeKit_RANKED_random"),
516
+ teamsTourneyRandom: (0, common_1.bool)(skyWars, "activeKit_TEAMS_tourney_random"),
517
+ },
518
+ weeklyKillsA: (0, common_1.num)(skyWars, "kills_weekly_a"),
519
+ weeklyKillsB: (0, common_1.num)(skyWars, "kills_weekly_b"),
520
+ monthlyKillsA: (0, common_1.num)(skyWars, "kills_monthly_a"),
521
+ monthlyKillsB: (0, common_1.num)(skyWars, "kills_monthly_b"),
522
+ chests: (0, common_1.num)(skyWars, "skywars_chests"),
523
+ chestHistory: stringArray(skyWars, "skywars_chest_history"),
524
+ chestHistoryNew: stringArray(skyWars, "chest_history_new"),
525
+ chestRarities: {
526
+ opened: (0, common_1.num)(skyWars, "SkyWars_openedChests"),
527
+ commons: (0, common_1.num)(skyWars, "SkyWars_openedCommons"),
528
+ rares: (0, common_1.num)(skyWars, "SkyWars_openedRares"),
529
+ epics: (0, common_1.num)(skyWars, "SkyWars_openedEpics"),
530
+ legendaries: (0, common_1.num)(skyWars, "SkyWars_openedLegendaries"),
531
+ },
532
+ halloweenBoxes: (0, common_1.num)(skyWars, "skywars_halloween_boxes"),
533
+ christmasBoxes: (0, common_1.num)(skyWars, "skywars_christmas_boxes"),
534
+ lunarBoxes: (0, common_1.num)(skyWars, "skywars_lunar_boxes"),
535
+ easterBoxes: (0, common_1.num)(skyWars, "skywars_easter_boxes"),
536
+ mysteryBoxesSeasonOne: (0, common_1.num)(skyWars, "mystery_boxes_season_one"),
537
+ packages: stringArray(skyWars, "packages"),
538
+ favoriteKits: collectStringArrays(skyWars, /^favorite_kits_(.+)$/),
539
+ headCollection: parseHeadCollection(skyWars),
540
+ challengeAttemptsTotal: (0, common_1.num)(skyWars, "challenge_attempts"),
541
+ challengeWinsTotal: (0, common_1.num)(skyWars, "challenge_wins"),
542
+ challengeMilestonesAchieved: (0, common_1.num)(skyWars, "challenge_milestones_achieved"),
543
+ challengeAttempts: collectNumbers(skyWars, /^challenge_attempts_(.+)$/),
544
+ challengeWins: collectNumbers(skyWars, /^challenge_wins_(.+)$/),
545
+ labWins: collectNumbers(skyWars, /^lab_((?:win|hvb)_.+)$/),
546
+ votes: collectNumbers(skyWars, /^votes_(.+)$/),
547
+ explainedFlags: collectNumbers(skyWars, /^(.+_explained(?:_last)?)$/),
548
+ presentsCaps: collectNumbers(skyWars, /^inGamePresentsCap_(.+)$/),
549
+ freeEventKeys: collectBooleans(skyWars, /^free_event_key_(.+)$/),
550
+ megaKitLevels: collectNumbers(skyWars, /^kit_mega_mega_(.+)$/),
551
+ kitInventories: collectInventories(skyWars),
552
+ brewery: parseBrewery(skyWars),
553
+ breweryActive: (0, common_1.str)(skyWars, "brewery_active"),
554
+ settings: parseSettings(skyWars),
555
+ leaderboardSettings: parseLeaderboardSettings(skyWars),
556
+ rankedSeasonRatings: parseRankedSeasonRatings(skyWars),
557
+ privateGames: parsePrivateGames(skyWars),
558
+ overall: parseMode(skyWars, suffixKey("")),
559
+ solo: {
560
+ ...parseMode(skyWars, suffixKey("_solo")),
561
+ normal: parseMode(skyWars, suffixKey("_solo_normal")),
562
+ insane: parseMode(skyWars, suffixKey("_solo_insane")),
563
+ },
564
+ teams: {
565
+ ...parseMode(skyWars, suffixKey("_team")),
566
+ normal: parseMode(skyWars, suffixKey("_team_normal")),
567
+ insane: parseMode(skyWars, suffixKey("_team_insane")),
568
+ teamsNormal: parseMode(skyWars, suffixKey("_teams_normal")),
569
+ teamsInsane: parseMode(skyWars, suffixKey("_teams_insane")),
570
+ },
571
+ mega: {
572
+ ...parseMode(skyWars, suffixKey("_mega")),
573
+ doubles: parseMode(skyWars, suffixKey("_mega_doubles")),
574
+ doublesNormal: parseMode(skyWars, suffixKey("_mega_doubles_normal")),
575
+ normal: parseMode(skyWars, suffixKey("_mega_normal")),
576
+ },
577
+ mini: {
578
+ ...parseMode(skyWars, suffixKey("_mini")),
579
+ normal: parseMode(skyWars, suffixKey("_mini_normal")),
580
+ },
581
+ ranked: {
582
+ ...parseMode(skyWars, suffixKey("_ranked")),
583
+ normal: parseMode(skyWars, suffixKey("_ranked_normal")),
584
+ },
585
+ lab: {
586
+ ...parseMode(skyWars, suffixKey("_lab")),
587
+ solo: parseMode(skyWars, suffixKey("_lab_solo")),
588
+ team: parseMode(skyWars, suffixKey("_lab_team")),
589
+ },
590
+ tourney: {
591
+ ...parseMode(skyWars, suffixKey("_tourney")),
592
+ crazyTourney: parseMode(skyWars, suffixKey("_tourney_crazytourney")),
593
+ teamsTourney: parseMode(skyWars, suffixKey("_tourney_teams_tourney")),
594
+ },
595
+ crazyTourney: {
596
+ ...parseMode(skyWars, suffixKey("_crazytourney")),
597
+ normal: parseMode(skyWars, suffixKey("_crazytourney_normal")),
598
+ },
599
+ tourneyInstances: parseTourneyInstances(skyWars),
600
+ soloPerks: parsePerks(skyWars, "solo", SOLO_PERKS),
601
+ teamsPerks: parsePerks(skyWars, "team", TEAMS_PERKS),
602
+ megaPerks: parsePerks(skyWars, "mega", MEGA_PERKS),
603
+ rankedPerks: parsePerks(skyWars, "ranked", RANKED_PERKS),
604
+ universalPerks: parseUniversalPerks(skyWars),
605
+ perkSlots: parsePerkSlots(skyWars),
606
+ disabledPerks: parseDisabledPerks(skyWars),
607
+ mythicKits: parseMythicKits(skyWars),
608
+ perKit: parsePerKit(skyWars),
609
+ };
610
+ }
611
+ //# sourceMappingURL=skywars.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skywars.js","sourceRoot":"","sources":["../src/skywars.ts"],"names":[],"mappings":"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"}