1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct Stats {
16 #[serde(rename = "guildName", skip_serializing_if = "Option::is_none")]
17 pub guild_name: Option<String>,
18 #[serde(rename = "missionsCompleted", skip_serializing_if = "Option::is_none")]
19 pub missions_completed: Option<i32>,
20 #[serde(rename = "missionsQuit", skip_serializing_if = "Option::is_none")]
21 pub missions_quit: Option<i32>,
22 #[serde(rename = "missionsInterrupted", skip_serializing_if = "Option::is_none")]
23 pub missions_interrupted: Option<i32>,
24 #[serde(rename = "missionsDumped", skip_serializing_if = "Option::is_none")]
25 pub missions_dumped: Option<i32>,
26 #[serde(rename = "pickupCount", skip_serializing_if = "Option::is_none")]
27 pub pickup_count: Option<i32>,
28 #[serde(rename = "weapons", skip_serializing_if = "Option::is_none")]
29 pub weapons: Option<Vec<models::StatsWeaponsInner>>,
30 #[serde(rename = "enemis", skip_serializing_if = "Option::is_none")]
31 pub enemis: Option<Vec<models::StatsEnemisInner>>,
32 #[serde(rename = "meleeKills", skip_serializing_if = "Option::is_none")]
33 pub melee_kills: Option<i32>,
34 #[serde(rename = "abilities", skip_serializing_if = "Option::is_none")]
35 pub abilities: Option<Vec<models::StatsAbilitiesInner>>,
36 #[serde(rename = "ciphersSolved", skip_serializing_if = "Option::is_none")]
37 pub ciphers_solved: Option<i32>,
38 #[serde(rename = "income", skip_serializing_if = "Option::is_none")]
39 pub income: Option<i32>,
40 #[serde(rename = "timePlayedSec", skip_serializing_if = "Option::is_none")]
41 pub time_played_sec: Option<f64>,
42 #[serde(rename = "cipherTime", skip_serializing_if = "Option::is_none")]
43 pub cipher_time: Option<i32>,
44 #[serde(rename = "rating", skip_serializing_if = "Option::is_none")]
45 pub rating: Option<i32>,
46 #[serde(rename = "rank", skip_serializing_if = "Option::is_none")]
47 pub rank: Option<i32>,
48 #[serde(rename = "deaths", skip_serializing_if = "Option::is_none")]
49 pub deaths: Option<i32>,
50 #[serde(rename = "playerLevel", skip_serializing_if = "Option::is_none")]
51 pub player_level: Option<i32>,
52 #[serde(rename = "missions", skip_serializing_if = "Option::is_none")]
53 pub missions: Option<Vec<models::StatsMissionsInner>>,
54 #[serde(rename = "healcount", skip_serializing_if = "Option::is_none")]
55 pub healcount: Option<i32>,
56 #[serde(rename = "breedGrounds", skip_serializing_if = "Option::is_none")]
57 pub breed_grounds: Option<serde_json::Value>,
58 #[serde(rename = "gradivusDilemma", skip_serializing_if = "Option::is_none")]
59 pub gradivus_dilemma: Option<serde_json::Value>,
60 #[serde(rename = "scans", skip_serializing_if = "Option::is_none")]
61 pub scans: Option<Vec<models::StatsScansInner>>,
62 #[serde(rename = "reviveCount", skip_serializing_if = "Option::is_none")]
63 pub revive_count: Option<i32>,
64 #[serde(rename = "fomorianEventScore", skip_serializing_if = "Option::is_none")]
65 pub fomorian_event_score: Option<i32>,
66 #[serde(rename = "pvp", skip_serializing_if = "Option::is_none")]
67 pub pvp: Option<Vec<models::StatsPvpInner>>,
68 #[serde(rename = "lunaro", skip_serializing_if = "Option::is_none")]
69 pub lunaro: Option<Box<models::StatsLunaro>>,
70 #[serde(rename = "dojoObstacleScore", skip_serializing_if = "Option::is_none")]
71 pub dojo_obstacle_score: Option<i32>,
72 #[serde(rename = "pvpGamesPendingMask", skip_serializing_if = "Option::is_none")]
73 pub pvp_games_pending_mask: Option<i32>,
74 #[serde(rename = "pacifismDefect", skip_serializing_if = "Option::is_none")]
75 pub pacifism_defect: Option<i32>,
76 #[serde(rename = "sentinelGameScore", skip_serializing_if = "Option::is_none")]
77 pub sentinel_game_score: Option<i32>,
78 #[serde(rename = "amalgamEventScoreMax", skip_serializing_if = "Option::is_none")]
79 pub amalgam_event_score_max: Option<i32>,
80 #[serde(rename = "scarletSpear", skip_serializing_if = "Option::is_none")]
81 pub scarlet_spear: Option<Box<models::StatsScarletSpear>>,
82 #[serde(rename = "orphixVenomSpear", skip_serializing_if = "Option::is_none")]
83 pub orphix_venom_spear: Option<i32>,
84 #[serde(rename = "kDriveRaces", skip_serializing_if = "Option::is_none")]
85 pub k_drive_races: Option<Vec<models::StatsKDriveRacesInner>>,
86}
87
88impl Stats {
89 pub fn new() -> Stats {
90 Stats {
91 guild_name: None,
92 missions_completed: None,
93 missions_quit: None,
94 missions_interrupted: None,
95 missions_dumped: None,
96 pickup_count: None,
97 weapons: None,
98 enemis: None,
99 melee_kills: None,
100 abilities: None,
101 ciphers_solved: None,
102 income: None,
103 time_played_sec: None,
104 cipher_time: None,
105 rating: None,
106 rank: None,
107 deaths: None,
108 player_level: None,
109 missions: None,
110 healcount: None,
111 breed_grounds: None,
112 gradivus_dilemma: None,
113 scans: None,
114 revive_count: None,
115 fomorian_event_score: None,
116 pvp: None,
117 lunaro: None,
118 dojo_obstacle_score: None,
119 pvp_games_pending_mask: None,
120 pacifism_defect: None,
121 sentinel_game_score: None,
122 amalgam_event_score_max: None,
123 scarlet_spear: None,
124 orphix_venom_spear: None,
125 k_drive_races: None,
126 }
127 }
128}
129