Skip to main content

artifacts/models/
skill.rs

1use crate::models;
2use serde::{Deserialize, Serialize};
3
4#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
5#[cfg_attr(feature = "specta", derive(specta::Type))]
6#[derive(Default)]
7pub enum Skill {
8    #[serde(rename = "weaponcrafting")]
9    #[default]
10    Weaponcrafting,
11    #[serde(rename = "gearcrafting")]
12    Gearcrafting,
13    #[serde(rename = "jewelrycrafting")]
14    Jewelrycrafting,
15    #[serde(rename = "cooking")]
16    Cooking,
17    #[serde(rename = "woodcutting")]
18    Woodcutting,
19    #[serde(rename = "mining")]
20    Mining,
21    #[serde(rename = "alchemy")]
22    Alchemy,
23    #[serde(rename = "fishing")]
24    Fishing,
25}
26
27impl std::fmt::Display for Skill {
28    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
29        match self {
30            Self::Weaponcrafting => write!(f, "weaponcrafting"),
31            Self::Gearcrafting => write!(f, "gearcrafting"),
32            Self::Jewelrycrafting => write!(f, "jewelrycrafting"),
33            Self::Cooking => write!(f, "cooking"),
34            Self::Woodcutting => write!(f, "woodcutting"),
35            Self::Mining => write!(f, "mining"),
36            Self::Alchemy => write!(f, "alchemy"),
37            Self::Fishing => write!(f, "fishing"),
38        }
39    }
40}