/
snapshot.rs
156 lines (148 loc) · 4.73 KB
/
snapshot.rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
use crate::models::global_enums::{Activity, Boss, ComputedMetricEnum, Skill};
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Skills {
pub overall: SkillMetric,
pub attack: SkillMetric,
pub defence: SkillMetric,
pub strength: SkillMetric,
pub hitpoints: SkillMetric,
pub ranged: SkillMetric,
pub prayer: SkillMetric,
pub magic: SkillMetric,
pub cooking: SkillMetric,
pub woodcutting: SkillMetric,
pub fletching: SkillMetric,
pub fishing: SkillMetric,
pub firemaking: SkillMetric,
pub crafting: SkillMetric,
pub smithing: SkillMetric,
pub mining: SkillMetric,
pub herblore: SkillMetric,
pub agility: SkillMetric,
pub thieving: SkillMetric,
pub slayer: SkillMetric,
pub farming: SkillMetric,
pub runecrafting: SkillMetric,
pub hunter: SkillMetric,
pub construction: SkillMetric,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct SkillMetric {
pub metric: Skill,
pub experience: i64,
pub rank: i64,
pub level: i64,
pub ehp: f64,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub struct Bosses {
pub abyssal_sire: BossMetric,
pub alchemical_hydra: BossMetric,
pub artio: BossMetric,
pub barrows_chests: BossMetric,
pub bryophyta: BossMetric,
pub callisto: BossMetric,
pub calvarion: BossMetric,
pub cerberus: BossMetric,
pub chambers_of_xeric: BossMetric,
pub chambers_of_xeric_challenge_mode: BossMetric,
pub chaos_elemental: BossMetric,
pub chaos_fanatic: BossMetric,
pub commander_zilyana: BossMetric,
pub corporeal_beast: BossMetric,
pub crazy_archaeologist: BossMetric,
pub dagannoth_prime: BossMetric,
pub dagannoth_rex: BossMetric,
pub dagannoth_supreme: BossMetric,
pub deranged_archaeologist: BossMetric,
pub duke_sucellus: BossMetric,
pub general_graardor: BossMetric,
pub giant_mole: BossMetric,
pub grotesque_guardians: BossMetric,
pub hespori: BossMetric,
pub kalphite_queen: BossMetric,
pub king_black_dragon: BossMetric,
pub kraken: BossMetric,
pub kreearra: BossMetric,
pub kril_tsutsaroth: BossMetric,
pub mimic: BossMetric,
pub nex: BossMetric,
pub nightmare: BossMetric,
pub phosanis_nightmare: BossMetric,
pub obor: BossMetric,
pub phantom_muspah: BossMetric,
pub sarachnis: BossMetric,
pub scorpia: BossMetric,
pub scurrius: BossMetric,
pub skotizo: BossMetric,
pub spindel: BossMetric,
pub tempoross: BossMetric,
pub the_gauntlet: BossMetric,
pub the_corrupted_gauntlet: BossMetric,
pub the_leviathan: BossMetric,
pub the_whisperer: BossMetric,
pub theatre_of_blood: BossMetric,
pub theatre_of_blood_hard_mode: BossMetric,
pub thermonuclear_smoke_devil: BossMetric,
pub tombs_of_amascut: BossMetric,
pub tombs_of_amascut_expert: BossMetric,
pub tzkal_zuk: BossMetric,
pub tztok_jad: BossMetric,
pub vardorvis: BossMetric,
pub venenatis: BossMetric,
pub vetion: BossMetric,
pub vorkath: BossMetric,
pub wintertodt: BossMetric,
pub zalcano: BossMetric,
pub zulrah: BossMetric,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct BossMetric {
pub metric: Boss,
pub kills: i64,
pub rank: i64,
pub ehb: f64,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub struct Activities {
pub league_points: ActivityMetric,
pub bounty_hunter_hunter: ActivityMetric,
pub bounty_hunter_rogue: ActivityMetric,
pub clue_scrolls_all: ActivityMetric,
pub clue_scrolls_beginner: ActivityMetric,
pub clue_scrolls_easy: ActivityMetric,
pub clue_scrolls_medium: ActivityMetric,
pub clue_scrolls_hard: ActivityMetric,
pub clue_scrolls_elite: ActivityMetric,
pub clue_scrolls_master: ActivityMetric,
pub last_man_standing: ActivityMetric,
pub pvp_arena: ActivityMetric,
pub soul_wars_zeal: ActivityMetric,
pub guardians_of_the_rift: ActivityMetric,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct ActivityMetric {
pub metric: Activity,
pub score: i64,
pub rank: i64,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Computed {
pub ehp: ComputedMetric,
pub ehb: ComputedMetric,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct ComputedMetric {
pub metric: ComputedMetricEnum,
pub value: f64,
pub rank: i64,
}