artifacts/models/
character_leaderboard_schema.rs

1use crate::models;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
5#[cfg_attr(feature = "specta", derive(specta::Type))]
6pub struct CharacterLeaderboardSchema {
7    /// Position in the leaderboard.
8    #[serde(rename = "position")]
9    pub position: i32,
10    /// Character name.
11    #[serde(rename = "name")]
12    pub name: String,
13    /// Account name.
14    #[serde(rename = "account")]
15    pub account: String,
16    /// Member status.
17    #[serde(rename = "status")]
18    pub status: models::AccountStatus,
19    /// Character skin code.
20    #[serde(rename = "skin")]
21    pub skin: String,
22    /// Combat level.
23    #[serde(rename = "level")]
24    pub level: i32,
25    /// Total XP of your character.
26    #[serde(rename = "total_xp")]
27    pub total_xp: i32,
28    /// Mining level.
29    #[serde(rename = "mining_level")]
30    pub mining_level: i32,
31    /// Mining total xp.
32    #[serde(rename = "mining_total_xp")]
33    pub mining_total_xp: i32,
34    /// Woodcutting level.
35    #[serde(rename = "woodcutting_level")]
36    pub woodcutting_level: i32,
37    /// Woodcutting total xp.
38    #[serde(rename = "woodcutting_total_xp")]
39    pub woodcutting_total_xp: i32,
40    /// Fishing level.
41    #[serde(rename = "fishing_level")]
42    pub fishing_level: i32,
43    /// Fishing total xp.
44    #[serde(rename = "fishing_total_xp")]
45    pub fishing_total_xp: i32,
46    /// Weaponcrafting level.
47    #[serde(rename = "weaponcrafting_level")]
48    pub weaponcrafting_level: i32,
49    /// Weaponcrafting total xp.
50    #[serde(rename = "weaponcrafting_total_xp")]
51    pub weaponcrafting_total_xp: i32,
52    /// Gearcrafting level.
53    #[serde(rename = "gearcrafting_level")]
54    pub gearcrafting_level: i32,
55    /// Gearcrafting total xp.
56    #[serde(rename = "gearcrafting_total_xp")]
57    pub gearcrafting_total_xp: i32,
58    /// Jewelrycrafting level.
59    #[serde(rename = "jewelrycrafting_level")]
60    pub jewelrycrafting_level: i32,
61    /// Jewelrycrafting total xp.
62    #[serde(rename = "jewelrycrafting_total_xp")]
63    pub jewelrycrafting_total_xp: i32,
64    /// Cooking level.
65    #[serde(rename = "cooking_level")]
66    pub cooking_level: i32,
67    /// Cooking total xp.
68    #[serde(rename = "cooking_total_xp")]
69    pub cooking_total_xp: i32,
70    /// Alchemy level.
71    #[serde(rename = "alchemy_level")]
72    pub alchemy_level: i32,
73    /// Alchemy total xp.
74    #[serde(rename = "alchemy_total_xp")]
75    pub alchemy_total_xp: i32,
76    /// The numbers of gold on this character.
77    #[serde(rename = "gold")]
78    pub gold: i32,
79}
80
81impl CharacterLeaderboardSchema {
82    pub fn new(
83        position: i32,
84        name: String,
85        account: String,
86        status: models::AccountStatus,
87        skin: String,
88        level: i32,
89        total_xp: i32,
90        mining_level: i32,
91        mining_total_xp: i32,
92        woodcutting_level: i32,
93        woodcutting_total_xp: i32,
94        fishing_level: i32,
95        fishing_total_xp: i32,
96        weaponcrafting_level: i32,
97        weaponcrafting_total_xp: i32,
98        gearcrafting_level: i32,
99        gearcrafting_total_xp: i32,
100        jewelrycrafting_level: i32,
101        jewelrycrafting_total_xp: i32,
102        cooking_level: i32,
103        cooking_total_xp: i32,
104        alchemy_level: i32,
105        alchemy_total_xp: i32,
106        gold: i32,
107    ) -> CharacterLeaderboardSchema {
108        CharacterLeaderboardSchema {
109            position,
110            name,
111            account,
112            status,
113            skin,
114            level,
115            total_xp,
116            mining_level,
117            mining_total_xp,
118            woodcutting_level,
119            woodcutting_total_xp,
120            fishing_level,
121            fishing_total_xp,
122            weaponcrafting_level,
123            weaponcrafting_total_xp,
124            gearcrafting_level,
125            gearcrafting_total_xp,
126            jewelrycrafting_level,
127            jewelrycrafting_total_xp,
128            cooking_level,
129            cooking_total_xp,
130            alchemy_level,
131            alchemy_total_xp,
132            gold,
133        }
134    }
135}