@wfcd/profile-parser 1.5.0 → 2.0.1

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 (135) hide show
  1. package/dist/Ability-D1F1s_19.js +25 -0
  2. package/dist/Ability-DzKgEG5R.d.ts +19 -0
  3. package/dist/Ability.d.ts +2 -0
  4. package/dist/Ability.js +3 -0
  5. package/dist/ArchonCrystal.d.ts +23 -0
  6. package/dist/ArchonCrystal.js +29 -0
  7. package/dist/ChallengeProgress-B8Kv32oi.d.ts +20 -0
  8. package/dist/ChallengeProgress-DKKtijWw.js +26 -0
  9. package/dist/ChallengeProgress.d.ts +2 -0
  10. package/dist/ChallengeProgress.js +3 -0
  11. package/dist/Enemy-BqxhFdkB.js +44 -0
  12. package/dist/Enemy-toy1Spyi.d.ts +44 -0
  13. package/dist/Enemy.d.ts +2 -0
  14. package/dist/Enemy.js +3 -0
  15. package/dist/Intrinsics-CqFOpLxp.js +67 -0
  16. package/dist/Intrinsics-azrsOZJd.d.ts +67 -0
  17. package/dist/Intrinsics.d.ts +2 -0
  18. package/dist/Intrinsics.js +3 -0
  19. package/dist/ItemConfig-7as-gjPG.d.ts +51 -0
  20. package/dist/ItemConfig-uU36aJFJ.js +50 -0
  21. package/dist/ItemConfig.d.ts +4 -0
  22. package/dist/ItemConfig.js +5 -0
  23. package/dist/LoadOutInventory-BsPRtXfG.d.ts +53 -0
  24. package/dist/LoadOutInventory-CPVZJ_W5.js +52 -0
  25. package/dist/LoadOutInventory.d.ts +8 -0
  26. package/dist/LoadOutInventory.js +9 -0
  27. package/dist/LoadOutItem-B_6G9dXC.js +127 -0
  28. package/dist/LoadOutItem-BlRFZMNd.d.ts +120 -0
  29. package/dist/LoadOutItem.d.ts +6 -0
  30. package/dist/LoadOutItem.js +7 -0
  31. package/dist/LoadOutPreset-BshJF0LH.d.ts +83 -0
  32. package/dist/LoadOutPreset-CMbZo-II.js +83 -0
  33. package/dist/LoadOutPreset.d.ts +2 -0
  34. package/dist/LoadOutPreset.js +4 -0
  35. package/dist/Mission-BZgLMluh.d.ts +53 -0
  36. package/dist/Mission-D2n1i5R2.js +55 -0
  37. package/dist/Mission.d.ts +2 -0
  38. package/dist/Mission.js +3 -0
  39. package/dist/OperatorLoadOuts-B8bEy2dp.js +76 -0
  40. package/dist/OperatorLoadOuts-Dk2uMwby.d.ts +75 -0
  41. package/dist/OperatorLoadOuts.d.ts +4 -0
  42. package/dist/OperatorLoadOuts.js +5 -0
  43. package/dist/Polarity--RYq3iwF.js +28 -0
  44. package/dist/Polarity-DDWqEVm2.d.ts +26 -0
  45. package/dist/Polarity.d.ts +2 -0
  46. package/dist/Polarity.js +3 -0
  47. package/dist/Profile-WWZ2BDf0.js +193 -0
  48. package/dist/Profile-rva_Xss5.d.ts +212 -0
  49. package/dist/Profile.d.ts +15 -0
  50. package/dist/Profile.js +16 -0
  51. package/dist/ProfileParser.d.ts +71 -0
  52. package/dist/ProfileParser.js +71 -0
  53. package/dist/Pvp-Cb1KNKvw.d.ts +36 -0
  54. package/dist/Pvp-hyzYfVBB.js +36 -0
  55. package/dist/Pvp.d.ts +2 -0
  56. package/dist/Pvp.js +3 -0
  57. package/dist/Race-5Q0StEkE.js +35 -0
  58. package/dist/Race-DCxzjMpC.d.ts +32 -0
  59. package/dist/Race.d.ts +2 -0
  60. package/dist/Race.js +3 -0
  61. package/dist/Scan-BWfZiLoW.d.ts +27 -0
  62. package/dist/Scan-Dlrv6viG.js +27 -0
  63. package/dist/Scan.d.ts +2 -0
  64. package/dist/Scan.js +3 -0
  65. package/dist/Skin-BbUkegH1.d.ts +28 -0
  66. package/dist/Skin-D6v6jC9U.js +36 -0
  67. package/dist/Skin.d.ts +2 -0
  68. package/dist/Skin.js +4 -0
  69. package/dist/Stats-Bm1bpQe5.js +305 -0
  70. package/dist/Stats-DtkR2w1A.d.ts +325 -0
  71. package/dist/Stats.d.ts +9 -0
  72. package/dist/Stats.js +10 -0
  73. package/dist/Syndicate-CjUKKAsk.js +33 -0
  74. package/dist/Syndicate-FSUt1PP5.d.ts +33 -0
  75. package/dist/Syndicate.d.ts +2 -0
  76. package/dist/Syndicate.js +3 -0
  77. package/dist/Utils-C3kZCO6a.js +60 -0
  78. package/dist/Utils-C7BZqK4e.d.ts +37 -0
  79. package/dist/Utils.d.ts +2 -0
  80. package/dist/Utils.js +3 -0
  81. package/dist/Weapon-4KlXEHQF.js +64 -0
  82. package/dist/Weapon-DAJp-nbn.d.ts +32 -0
  83. package/dist/Weapon.d.ts +2 -0
  84. package/dist/Weapon.js +3 -0
  85. package/dist/XpInfo-CXC3I0NQ.js +35 -0
  86. package/dist/XpInfo-ChJ_lJaH.d.ts +34 -0
  87. package/dist/XpInfo.d.ts +2 -0
  88. package/dist/XpInfo.js +4 -0
  89. package/package.json +34 -32
  90. package/src/Ability.js +0 -22
  91. package/src/ArchonCrystal.js +0 -26
  92. package/src/ChallengeProgress.js +0 -23
  93. package/src/Enemy.js +0 -47
  94. package/src/Intrinsics.js +0 -77
  95. package/src/ItemConfig.js +0 -52
  96. package/src/LoadOutInventory.js +0 -53
  97. package/src/LoadOutItem.js +0 -155
  98. package/src/LoadOutPreset.js +0 -90
  99. package/src/Mission.js +0 -58
  100. package/src/OperatorLoadOuts.js +0 -77
  101. package/src/Polarity.js +0 -25
  102. package/src/Profile.js +0 -213
  103. package/src/ProfileParser.js +0 -50
  104. package/src/Pvp.js +0 -35
  105. package/src/Race.js +0 -33
  106. package/src/Scan.js +0 -22
  107. package/src/Skin.js +0 -33
  108. package/src/Stats.js +0 -340
  109. package/src/Syndicate.js +0 -34
  110. package/src/Utils.js +0 -66
  111. package/src/Weapon.js +0 -59
  112. package/src/XpInfo.js +0 -35
  113. package/types/Ability.d.ts +0 -20
  114. package/types/ArchonCrystal.d.ts +0 -22
  115. package/types/ChallengeProgress.d.ts +0 -21
  116. package/types/Enemy.d.ts +0 -41
  117. package/types/Intrinsics.d.ts +0 -66
  118. package/types/ItemConfig.d.ts +0 -21
  119. package/types/LoadOutInventory.d.ts +0 -45
  120. package/types/LoadOutItem.d.ts +0 -92
  121. package/types/LoadOutPreset.d.ts +0 -45
  122. package/types/Mission.d.ts +0 -35
  123. package/types/OperatorLoadOuts.d.ts +0 -35
  124. package/types/Polarity.d.ts +0 -21
  125. package/types/Profile.d.ts +0 -154
  126. package/types/ProfileParser.d.ts +0 -41
  127. package/types/Pvp.d.ts +0 -31
  128. package/types/Race.d.ts +0 -28
  129. package/types/Scan.d.ts +0 -20
  130. package/types/Skin.d.ts +0 -19
  131. package/types/Stats.d.ts +0 -255
  132. package/types/Syndicate.d.ts +0 -26
  133. package/types/Utils.d.ts +0 -3
  134. package/types/Weapon.d.ts +0 -51
  135. package/types/XpInfo.d.ts +0 -28
@@ -0,0 +1,36 @@
1
+ //#region src/Pvp.ts
2
+ /**
3
+ * Player's conclave stats
4
+ * @module
5
+ */
6
+ var Pvp = class {
7
+ /**
8
+ * PVP match unique name
9
+ */
10
+ uniqueName;
11
+ /**
12
+ * Deaths for this match
13
+ */
14
+ warframeDeaths;
15
+ /**
16
+ * Warframe kills
17
+ */
18
+ warframeKills;
19
+ /**
20
+ * Weapon killes
21
+ */
22
+ weaponKills;
23
+ /**
24
+ *
25
+ * @param {Object} pvp PVP data to parse
26
+ */
27
+ constructor(pvp) {
28
+ this.uniqueName = pvp.type;
29
+ this.warframeDeaths = pvp.suitDeaths;
30
+ this.warframeKills = pvp.suitKills;
31
+ this.weaponKills = pvp.weaponKills;
32
+ }
33
+ };
34
+
35
+ //#endregion
36
+ export { Pvp };
package/dist/Pvp.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import { Pvp, RawPvp } from "./Pvp-Cb1KNKvw.js";
2
+ export { RawPvp, Pvp as default };
package/dist/Pvp.js ADDED
@@ -0,0 +1,3 @@
1
+ import { Pvp } from "./Pvp-hyzYfVBB.js";
2
+
3
+ export { Pvp as default };
@@ -0,0 +1,35 @@
1
+ //#region src/Race.ts
2
+ /**
3
+ * Represents a k-drive race
4
+ * @module
5
+ */
6
+ var Race = class Race {
7
+ /**
8
+ * Race name
9
+ */
10
+ uniqueName;
11
+ /**
12
+ * Race High score
13
+ */
14
+ highScore;
15
+ /**
16
+ *
17
+ * @param type Race name
18
+ * @param highScore high score
19
+ */
20
+ constructor(type, highScore) {
21
+ this.uniqueName = type;
22
+ this.highScore = highScore;
23
+ }
24
+ /**
25
+ * Created an array of Race objects from DE's Races array
26
+ * @param races Array of races
27
+ * @returns {Race[]} An array of races formatted in a more consumable way.
28
+ */
29
+ static fromRaceObject(races) {
30
+ return Object.entries(races ?? {}).map(([type, { highScore }]) => new Race(type, highScore));
31
+ }
32
+ };
33
+
34
+ //#endregion
35
+ export { Race };
@@ -0,0 +1,32 @@
1
+ //#region src/Race.d.ts
2
+ type RawRace = Record<string, {
3
+ highScore: number;
4
+ }>;
5
+ /**
6
+ * Represents a k-drive race
7
+ * @module
8
+ */
9
+ declare class Race {
10
+ /**
11
+ * Race name
12
+ */
13
+ uniqueName: string;
14
+ /**
15
+ * Race High score
16
+ */
17
+ highScore: number;
18
+ /**
19
+ *
20
+ * @param type Race name
21
+ * @param highScore high score
22
+ */
23
+ constructor(type: string, highScore: number);
24
+ /**
25
+ * Created an array of Race objects from DE's Races array
26
+ * @param races Array of races
27
+ * @returns {Race[]} An array of races formatted in a more consumable way.
28
+ */
29
+ static fromRaceObject(races: RawRace): Race[];
30
+ }
31
+ //#endregion
32
+ export { Race, RawRace };
package/dist/Race.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import { Race, RawRace } from "./Race-DCxzjMpC.js";
2
+ export { RawRace, Race as default };
package/dist/Race.js ADDED
@@ -0,0 +1,3 @@
1
+ import { Race } from "./Race-5Q0StEkE.js";
2
+
3
+ export { Race as default };
@@ -0,0 +1,27 @@
1
+ //#region src/Scan.d.ts
2
+ interface RawScan {
3
+ type: string;
4
+ scans: number;
5
+ }
6
+ /**
7
+ * Represents an enemy scanned to the codex
8
+ * @module
9
+ */
10
+ declare class Scan {
11
+ /**
12
+ * Enemy unique name
13
+ * @type {String}
14
+ */
15
+ uniqueName: string;
16
+ /**
17
+ * Number of scans done
18
+ * @type {number}
19
+ */
20
+ scans: number;
21
+ /**
22
+ * @param {Object} scan The scanned Warframe object
23
+ */
24
+ constructor(scan: RawScan);
25
+ }
26
+ //#endregion
27
+ export { RawScan, Scan };
@@ -0,0 +1,27 @@
1
+ //#region src/Scan.ts
2
+ /**
3
+ * Represents an enemy scanned to the codex
4
+ * @module
5
+ */
6
+ var Scan = class {
7
+ /**
8
+ * Enemy unique name
9
+ * @type {String}
10
+ */
11
+ uniqueName;
12
+ /**
13
+ * Number of scans done
14
+ * @type {number}
15
+ */
16
+ scans;
17
+ /**
18
+ * @param {Object} scan The scanned Warframe object
19
+ */
20
+ constructor(scan) {
21
+ this.uniqueName = scan.type;
22
+ this.scans = scan.scans;
23
+ }
24
+ };
25
+
26
+ //#endregion
27
+ export { Scan };
package/dist/Scan.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import { RawScan, Scan } from "./Scan-BWfZiLoW.js";
2
+ export { RawScan, Scan as default };
package/dist/Scan.js ADDED
@@ -0,0 +1,3 @@
1
+ import { Scan } from "./Scan-Dlrv6viG.js";
2
+
3
+ export { Scan as default };
@@ -0,0 +1,28 @@
1
+ import { Item } from "@wfcd/items";
2
+
3
+ //#region src/Skin.d.ts
4
+ interface RawSkin {
5
+ ItemType: string;
6
+ }
7
+ /**
8
+ * A skin class
9
+ * @module
10
+ */
11
+ declare class Skin {
12
+ uniqueName: string;
13
+ item?: Item;
14
+ /**
15
+ *
16
+ * @param skin The skin data to parse
17
+ * @param locale The locale to return skin item in
18
+ */
19
+ constructor(skin: RawSkin, locale?: string);
20
+ }
21
+ /**
22
+ * @deprecated Move to Skin, this is just here to not break anything for early users
23
+ * @param {Object} skin Skin object
24
+ * @returns {Skin} Skin object with possible item
25
+ */
26
+ declare const WeaponSkin: (skin: RawSkin) => Skin;
27
+ //#endregion
28
+ export { RawSkin, Skin, WeaponSkin };
@@ -0,0 +1,36 @@
1
+ import { find } from "./Utils-C3kZCO6a.js";
2
+
3
+ //#region src/Skin.ts
4
+ /**
5
+ * A skin class
6
+ * @module
7
+ */
8
+ var Skin = class {
9
+ uniqueName;
10
+ item;
11
+ /**
12
+ *
13
+ * @param skin The skin data to parse
14
+ * @param locale The locale to return skin item in
15
+ */
16
+ constructor(skin, locale = "en") {
17
+ /**
18
+ * Unique name
19
+ */
20
+ this.uniqueName = skin.ItemType;
21
+ const item = find(skin.ItemType, locale);
22
+ /**
23
+ * The Warframe item that matches the unique name
24
+ */
25
+ if (item) this.item = item;
26
+ }
27
+ };
28
+ /**
29
+ * @deprecated Move to Skin, this is just here to not break anything for early users
30
+ * @param {Object} skin Skin object
31
+ * @returns {Skin} Skin object with possible item
32
+ */
33
+ const WeaponSkin = (skin) => new Skin(skin);
34
+
35
+ //#endregion
36
+ export { Skin, WeaponSkin };
package/dist/Skin.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ import { RawSkin, Skin, WeaponSkin } from "./Skin-BbUkegH1.js";
2
+ export { RawSkin, WeaponSkin, Skin as default };
package/dist/Skin.js ADDED
@@ -0,0 +1,4 @@
1
+ import "./Utils-C3kZCO6a.js";
2
+ import { Skin, WeaponSkin } from "./Skin-D6v6jC9U.js";
3
+
4
+ export { WeaponSkin, Skin as default };
@@ -0,0 +1,305 @@
1
+ import { Ability } from "./Ability-D1F1s_19.js";
2
+ import { Enemy } from "./Enemy-BqxhFdkB.js";
3
+ import { Mission } from "./Mission-D2n1i5R2.js";
4
+ import { Pvp } from "./Pvp-hyzYfVBB.js";
5
+ import { Race } from "./Race-5Q0StEkE.js";
6
+ import { Scan } from "./Scan-Dlrv6viG.js";
7
+ import { Weapon } from "./Weapon-4KlXEHQF.js";
8
+
9
+ //#region src/Stats.ts
10
+ /**
11
+ * A player's overall career stats
12
+ * @module
13
+ */
14
+ var Stats = class {
15
+ /**
16
+ * Guild name
17
+ */
18
+ guildName;
19
+ /**
20
+ * Missions completed
21
+ */
22
+ missionsCompleted;
23
+ /**
24
+ * Missions quit
25
+ */
26
+ missionsQuit;
27
+ /**
28
+ * Misions failed
29
+ */
30
+ missionsFailed;
31
+ /**
32
+ * Missions interrupted
33
+ */
34
+ missionsInterrupted;
35
+ /**
36
+ * Missions dumped
37
+ */
38
+ missionsDumped;
39
+ /**
40
+ * Items picked up
41
+ */
42
+ pickupCount;
43
+ /**
44
+ * Stats per weapon
45
+ */
46
+ weapons;
47
+ /**
48
+ * Stats on enemy encounters.
49
+ */
50
+ enemies;
51
+ /**
52
+ * Max score for Operation: Cryotic Front
53
+ */
54
+ excavationEventScoreMax;
55
+ /**
56
+ * Max scoring for The Cicero crisis
57
+ */
58
+ forestEventScoreMax;
59
+ /**
60
+ * Clan scoring for The Cicero crisis
61
+ */
62
+ forestEventScoreSum;
63
+ /**
64
+ * Melee kills
65
+ */
66
+ meleeKills;
67
+ /**
68
+ * Used abilities
69
+ */
70
+ abilities;
71
+ /**
72
+ * Ciphers completed successfully
73
+ */
74
+ ciphersSolved;
75
+ /**
76
+ * Ciphers failed
77
+ */
78
+ ciphersFailed;
79
+ /**
80
+ * Gross income
81
+ */
82
+ income;
83
+ /**
84
+ * Total play time since account creation
85
+ */
86
+ timePlayedSec;
87
+ /**
88
+ * Average time to hack a panel
89
+ */
90
+ cipherTime;
91
+ /**
92
+ * N/A
93
+ */
94
+ rating;
95
+ /**
96
+ * Mastery rank
97
+ */
98
+ rank;
99
+ /**
100
+ * Total deaths since account creation
101
+ */
102
+ deaths;
103
+ /**
104
+ * Mastery rank
105
+ */
106
+ playerLevel;
107
+ /**
108
+ * List of missions and high scores
109
+ */
110
+ missions;
111
+ /**
112
+ * Team heals
113
+ */
114
+ healCount;
115
+ /**
116
+ * Event Scores for Operation breeding grounds
117
+ */
118
+ breedGrounds;
119
+ /**
120
+ * Event Scores for The Gradivus Dilemma
121
+ */
122
+ gradivusDilemma;
123
+ /**
124
+ * List of scanned Warframe objects
125
+ */
126
+ scans;
127
+ /**
128
+ * Team revives
129
+ */
130
+ reviveCount;
131
+ /**
132
+ * Score for Operation: Eyes of Blight
133
+ */
134
+ fomorianEventScore;
135
+ /**
136
+ * Conclave scores
137
+ */
138
+ pvp;
139
+ /**
140
+ * Lunaro stats
141
+ */
142
+ lunaro;
143
+ /**
144
+ * Dojo obstacle course goal
145
+ */
146
+ dojoObstacleScore;
147
+ /**
148
+ * N/A
149
+ */
150
+ pvpGamesPendingMask;
151
+ /**
152
+ * N/A
153
+ */
154
+ dedicatedServerGamesCompleted;
155
+ /**
156
+ * Event score for the Pacifism Defect
157
+ */
158
+ pacifismDefect;
159
+ /**
160
+ * Score for operation Ambulas reborn.
161
+ */
162
+ ambulasReborn;
163
+ /**
164
+ * Score for Wyrmius mini game
165
+ */
166
+ sentinelGameScore;
167
+ /**
168
+ * Event score for operation hostile merger
169
+ */
170
+ amalgamEventScoreMax;
171
+ /**
172
+ * Operation Scarlet spear event score and badges
173
+ */
174
+ scarletSpear;
175
+ /**
176
+ * Operation: Orphix Venom score
177
+ */
178
+ orphixVenomScore;
179
+ /**
180
+ * Play's Highest score in Happy Zephyr
181
+ */
182
+ happyZephyrScore;
183
+ /**
184
+ * K-Drive races
185
+ */
186
+ kDriveRaces;
187
+ /**
188
+ * Operation Gate Crash event
189
+ */
190
+ gateCrash;
191
+ /**
192
+ * Per mission score for Operation: False Profit
193
+ */
194
+ falseProfitMissionScore;
195
+ /**
196
+ * Total even score for Operation: False Profit
197
+ */
198
+ falseProfitEventScore;
199
+ /**
200
+ * Operation: Shadow Debt event score
201
+ */
202
+ shadowDebtEventScore;
203
+ /**
204
+ * Operation: Rathuum event score
205
+ */
206
+ rathuumEventScore;
207
+ /**
208
+ * Hollowed flame event max score
209
+ */
210
+ hallowedFlameScoreMax;
211
+ /**
212
+ * Survival Weekend event score
213
+ */
214
+ survivalWeekenedEventScore;
215
+ /**
216
+ * N/A
217
+ */
218
+ infestedEventScore;
219
+ /**
220
+ *
221
+ * @param stats Player stats
222
+ */
223
+ constructor(stats) {
224
+ this.guildName = stats.GuildName;
225
+ this.missionsCompleted = stats.MissionsCompleted;
226
+ this.missionsQuit = stats.MissionsQuit;
227
+ this.missionsFailed = stats.MissionsFailed;
228
+ this.missionsInterrupted = stats.MissionsInterrupted;
229
+ this.missionsDumped = stats.MissionsDumped;
230
+ this.pickupCount = stats.PickupCount;
231
+ this.weapons = stats.Weapons.map((w) => new Weapon(w));
232
+ this.enemies = stats.Enemies.map((e) => new Enemy(e));
233
+ if (stats.ExcavationEventScoreMax) this.excavationEventScoreMax = stats.ExcavationEventScoreMax;
234
+ if (stats.ForestEventScoreMax) this.forestEventScoreMax = stats.ForestEventScoreMax;
235
+ if (stats.ForestEventScoreSum) this.forestEventScoreSum = stats.ForestEventScoreSum;
236
+ this.meleeKills = stats.MeleeKills;
237
+ this.abilities = stats.Abilities.map((a) => new Ability(a));
238
+ this.ciphersSolved = stats.CiphersSolved;
239
+ this.ciphersFailed = stats.CiphersFailed;
240
+ this.income = stats.Income;
241
+ this.timePlayedSec = stats.TimePlayedSec;
242
+ this.cipherTime = stats.CipherTime;
243
+ this.rating = stats.Rating;
244
+ this.rank = stats.Rank;
245
+ this.deaths = stats.Deaths;
246
+ this.playerLevel = stats.PlayerLevel;
247
+ this.missions = stats.Missions.map((m) => new Mission(m));
248
+ this.healCount = stats.HealCount;
249
+ if (stats.HiveEventScore || stats.HiveEventScoreSum) this.breedGrounds = {
250
+ personalScore: stats.HiveEventScore,
251
+ clanScore: stats.HiveEventScoreSum
252
+ };
253
+ if (stats.InvasionEventGrineerScore || stats.InvasionEventCorpusScore) this.gradivusDilemma = {
254
+ grineer: stats.InvasionEventGrineerScore,
255
+ corpus: stats.InvasionEventCorpusScore
256
+ };
257
+ this.scans = stats.Scans?.map((s) => new Scan(s)) ?? [];
258
+ this.reviveCount = stats.ReviveCount;
259
+ if (stats.FomorianEventScore) this.fomorianEventScore = stats.FomorianEventScore;
260
+ this.pvp = stats.PVP?.map((pvp) => new Pvp(pvp)) ?? [];
261
+ this.lunaro = {
262
+ ties: stats.PVPSpeedballTies ?? 0,
263
+ checks: stats.PVPSpeedballChecks ?? 0,
264
+ goals: stats.PVPSpeedballGoals ?? 0,
265
+ interceptions: stats.PVPSpeedballInterceptions ?? 0,
266
+ steals: stats.PVPSpeedballSteals ?? 0,
267
+ points: stats.PVPSpeedballPoints ?? 0,
268
+ losses: stats.PVPSpeedballLosses ?? 0,
269
+ assists: stats.PVPSpeedballAssists ?? 0,
270
+ wins: stats.PVPSpeedballWins ?? 0,
271
+ saves: stats.PVPSpeedballSaves ?? 0,
272
+ passes: stats.PVPSpeedballPasses ?? 0
273
+ };
274
+ this.dojoObstacleScore = stats.DojoObstacleScore ?? 0;
275
+ this.pvpGamesPendingMask = stats.PvpGamesPendingMask ?? 0;
276
+ this.dedicatedServerGamesCompleted = stats.DedicatedServerGamesCompleted ?? 0;
277
+ if (stats.ColonistRescueEventScoreMax) this.pacifismDefect = stats.ColonistRescueEventScoreMax;
278
+ if (stats.AmbulasEventScoreMax) this.ambulasReborn = stats.AmbulasEventScoreMax;
279
+ if (stats.SentinelGameScore) this.sentinelGameScore = stats.SentinelGameScore;
280
+ if (stats.AmalgamEventScoreMax) this.amalgamEventScoreMax = stats.AmalgamEventScoreMax;
281
+ if (stats.FlotillaEventScore) this.scarletSpear = {
282
+ eventScore: stats.FlotillaEventScore,
283
+ condrixTier1: stats.FlotillaGroundBadgesTier1,
284
+ condrixTier2: stats.FlotillaGroundBadgesTier2,
285
+ condrixTier3: stats.FlotillaGroundBadgesTier3,
286
+ murexTier1: stats.FlotillaSpaceBadgesTier1,
287
+ murexTier2: stats.FlotillaSpaceBadgesTier2,
288
+ murexTier3: stats.FlotillaSpaceBadgesTier3
289
+ };
290
+ if (stats.MechSurvivalScoreMax) this.orphixVenomScore = stats.MechSurvivalScoreMax;
291
+ this.happyZephyrScore = stats.ZephyrScore ?? 0;
292
+ this.kDriveRaces = Race.fromRaceObject(stats.Races);
293
+ if (stats.PortalEventScore) this.gateCrash = stats.PortalEventScore;
294
+ if (stats.RiotMoaEventScore) this.falseProfitMissionScore = stats.RiotMoaEventScore;
295
+ if (stats.RiotMoaEventScoreMax) this.falseProfitEventScore = stats.RiotMoaEventScoreMax;
296
+ if (stats.ProjectSinisterEventScore) this.shadowDebtEventScore = stats.ProjectSinisterEventScore;
297
+ if (stats.KelaEventBonusScoreMax) this.rathuumEventScore = stats.KelaEventBonusScoreMax;
298
+ if (stats.Halloween19ScoreMax) this.hallowedFlameScoreMax = stats.Halloween19ScoreMax;
299
+ if (stats.SurvivalEventScore) this.survivalWeekenedEventScore = stats.SurvivalEventScore;
300
+ if (stats.InfestedEventScore) this.infestedEventScore = stats.InfestedEventScore;
301
+ }
302
+ };
303
+
304
+ //#endregion
305
+ export { Stats };