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    #[serde(rename = "raid")]
24    Raid,
25}
26
27impl std::fmt::Display for MapContentType {
28    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
29        match self {
30            Self::Monster => write!(f, "monster"),
31            Self::Resource => write!(f, "resource"),
32            Self::Workshop => write!(f, "workshop"),
33            Self::Bank => write!(f, "bank"),
34            Self::GrandExchange => write!(f, "grand_exchange"),
35            Self::TasksMaster => write!(f, "tasks_master"),
36            Self::Npc => write!(f, "npc"),
37            Self::Raid => write!(f, "raid"),
38        }
39    }
40}