Skip to main content

artifacts/models/
map_content_type.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 MapContentType {
8    #[serde(rename = "monster")]
9    #[default]
10    Monster,
11    #[serde(rename = "resource")]
12    Resource,
13    #[serde(rename = "workshop")]
14    Workshop,
15    #[serde(rename = "bank")]
16    Bank,
17    #[serde(rename = "grand_exchange")]
18    GrandExchange,
19    #[serde(rename = "tasks_master")]
20    TasksMaster,
21    #[serde(rename = "npc")]
22    Npc,
23}
24
25impl std::fmt::Display for MapContentType {
26    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
27        match self {
28            Self::Monster => write!(f, "monster"),
29            Self::Resource => write!(f, "resource"),
30            Self::Workshop => write!(f, "workshop"),
31            Self::Bank => write!(f, "bank"),
32            Self::GrandExchange => write!(f, "grand_exchange"),
33            Self::TasksMaster => write!(f, "tasks_master"),
34            Self::Npc => write!(f, "npc"),
35        }
36    }
37}