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 ActionType {
8 #[serde(rename = "movement")]
9 #[default]
10 Movement,
11 #[serde(rename = "fight")]
12 Fight,
13 #[serde(rename = "multi_fight")]
14 MultiFight,
15 #[serde(rename = "crafting")]
16 Crafting,
17 #[serde(rename = "gathering")]
18 Gathering,
19 #[serde(rename = "buy_ge")]
20 BuyGe,
21 #[serde(rename = "sell_ge")]
22 SellGe,
23 #[serde(rename = "buy_npc")]
24 BuyNpc,
25 #[serde(rename = "sell_npc")]
26 SellNpc,
27 #[serde(rename = "cancel_ge")]
28 CancelGe,
29 #[serde(rename = "delete_item")]
30 DeleteItem,
31 #[serde(rename = "deposit_item")]
32 DepositItem,
33 #[serde(rename = "withdraw_item")]
34 WithdrawItem,
35 #[serde(rename = "deposit_gold")]
36 DepositGold,
37 #[serde(rename = "withdraw_gold")]
38 WithdrawGold,
39 #[serde(rename = "equip")]
40 Equip,
41 #[serde(rename = "unequip")]
42 Unequip,
43 #[serde(rename = "task")]
44 Task,
45 #[serde(rename = "recycling")]
46 Recycling,
47 #[serde(rename = "rest")]
48 Rest,
49 #[serde(rename = "use")]
50 Use,
51 #[serde(rename = "buy_bank_expansion")]
52 BuyBankExpansion,
53 #[serde(rename = "give_item")]
54 GiveItem,
55 #[serde(rename = "give_gold")]
56 GiveGold,
57 #[serde(rename = "change_skin")]
58 ChangeSkin,
59 #[serde(rename = "rename")]
60 Rename,
61 #[serde(rename = "transition")]
62 Transition,
63}
64
65impl std::fmt::Display for ActionType {
66 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
67 match self {
68 Self::Movement => write!(f, "movement"),
69 Self::Fight => write!(f, "fight"),
70 Self::MultiFight => write!(f, "multi_fight"),
71 Self::Crafting => write!(f, "crafting"),
72 Self::Gathering => write!(f, "gathering"),
73 Self::BuyGe => write!(f, "buy_ge"),
74 Self::SellGe => write!(f, "sell_ge"),
75 Self::BuyNpc => write!(f, "buy_npc"),
76 Self::SellNpc => write!(f, "sell_npc"),
77 Self::CancelGe => write!(f, "cancel_ge"),
78 Self::DeleteItem => write!(f, "delete_item"),
79 Self::DepositItem => write!(f, "deposit_item"),
80 Self::WithdrawItem => write!(f, "withdraw_item"),
81 Self::DepositGold => write!(f, "deposit_gold"),
82 Self::WithdrawGold => write!(f, "withdraw_gold"),
83 Self::Equip => write!(f, "equip"),
84 Self::Unequip => write!(f, "unequip"),
85 Self::Task => write!(f, "task"),
86 Self::Recycling => write!(f, "recycling"),
87 Self::Rest => write!(f, "rest"),
88 Self::Use => write!(f, "use"),
89 Self::BuyBankExpansion => write!(f, "buy_bank_expansion"),
90 Self::GiveItem => write!(f, "give_item"),
91 Self::GiveGold => write!(f, "give_gold"),
92 Self::ChangeSkin => write!(f, "change_skin"),
93 Self::Rename => write!(f, "rename"),
94 Self::Transition => write!(f, "transition"),
95 }
96 }
97}