artifacts/models/
monster_type.rs1use 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))]
6pub enum MonsterType {
7 #[serde(rename = "normal")]
8 Normal,
9 #[serde(rename = "elite")]
10 Elite,
11 #[serde(rename = "boss")]
12 Boss,
13}
14
15impl std::fmt::Display for MonsterType {
16 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
17 match self {
18 Self::Normal => write!(f, "normal"),
19 Self::Elite => write!(f, "elite"),
20 Self::Boss => write!(f, "boss"),
21 }
22 }
23}
24
25impl Default for MonsterType {
26 fn default() -> MonsterType {
27 Self::Normal
28 }
29}