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 LogType {
8 #[serde(rename = "spawn")]
9 #[default]
10 Spawn,
11 #[serde(rename = "movement")]
12 Movement,
13 #[serde(rename = "fight")]
14 Fight,
15 #[serde(rename = "multi_fight")]
16 MultiFight,
17 #[serde(rename = "crafting")]
18 Crafting,
19 #[serde(rename = "gathering")]
20 Gathering,
21 #[serde(rename = "buy_ge")]
22 BuyGe,
23 #[serde(rename = "sell_ge")]
24 SellGe,
25 #[serde(rename = "buy_npc")]
26 BuyNpc,
27 #[serde(rename = "sell_npc")]
28 SellNpc,
29 #[serde(rename = "cancel_ge")]
30 CancelGe,
31 #[serde(rename = "delete_item")]
32 DeleteItem,
33 #[serde(rename = "deposit_item")]
34 DepositItem,
35 #[serde(rename = "withdraw_item")]
36 WithdrawItem,
37 #[serde(rename = "deposit_gold")]
38 DepositGold,
39 #[serde(rename = "withdraw_gold")]
40 WithdrawGold,
41 #[serde(rename = "equip")]
42 Equip,
43 #[serde(rename = "unequip")]
44 Unequip,
45 #[serde(rename = "new_task")]
46 NewTask,
47 #[serde(rename = "task_exchange")]
48 TaskExchange,
49 #[serde(rename = "task_cancelled")]
50 TaskCancelled,
51 #[serde(rename = "task_completed")]
52 TaskCompleted,
53 #[serde(rename = "task_trade")]
54 TaskTrade,
55 #[serde(rename = "recycling")]
56 Recycling,
57 #[serde(rename = "rest")]
58 Rest,
59 #[serde(rename = "use")]
60 Use,
61 #[serde(rename = "buy_bank_expansion")]
62 BuyBankExpansion,
63 #[serde(rename = "achievement")]
64 Achievement,
65 #[serde(rename = "give_item")]
66 GiveItem,
67 #[serde(rename = "give_gold")]
68 GiveGold,
69 #[serde(rename = "receive_item")]
70 ReceiveItem,
71 #[serde(rename = "receive_gold")]
72 ReceiveGold,
73 #[serde(rename = "change_skin")]
74 ChangeSkin,
75 #[serde(rename = "rename")]
76 Rename,
77 #[serde(rename = "transition")]
78 Transition,
79}
80
81impl std::fmt::Display for LogType {
82 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
83 match self {
84 Self::Spawn => write!(f, "spawn"),
85 Self::Movement => write!(f, "movement"),
86 Self::Fight => write!(f, "fight"),
87 Self::MultiFight => write!(f, "multi_fight"),
88 Self::Crafting => write!(f, "crafting"),
89 Self::Gathering => write!(f, "gathering"),
90 Self::BuyGe => write!(f, "buy_ge"),
91 Self::SellGe => write!(f, "sell_ge"),
92 Self::BuyNpc => write!(f, "buy_npc"),
93 Self::SellNpc => write!(f, "sell_npc"),
94 Self::CancelGe => write!(f, "cancel_ge"),
95 Self::DeleteItem => write!(f, "delete_item"),
96 Self::DepositItem => write!(f, "deposit_item"),
97 Self::WithdrawItem => write!(f, "withdraw_item"),
98 Self::DepositGold => write!(f, "deposit_gold"),
99 Self::WithdrawGold => write!(f, "withdraw_gold"),
100 Self::Equip => write!(f, "equip"),
101 Self::Unequip => write!(f, "unequip"),
102 Self::NewTask => write!(f, "new_task"),
103 Self::TaskExchange => write!(f, "task_exchange"),
104 Self::TaskCancelled => write!(f, "task_cancelled"),
105 Self::TaskCompleted => write!(f, "task_completed"),
106 Self::TaskTrade => write!(f, "task_trade"),
107 Self::Recycling => write!(f, "recycling"),
108 Self::Rest => write!(f, "rest"),
109 Self::Use => write!(f, "use"),
110 Self::BuyBankExpansion => write!(f, "buy_bank_expansion"),
111 Self::Achievement => write!(f, "achievement"),
112 Self::GiveItem => write!(f, "give_item"),
113 Self::GiveGold => write!(f, "give_gold"),
114 Self::ReceiveItem => write!(f, "receive_item"),
115 Self::ReceiveGold => write!(f, "receive_gold"),
116 Self::ChangeSkin => write!(f, "change_skin"),
117 Self::Rename => write!(f, "rename"),
118 Self::Transition => write!(f, "transition"),
119 }
120 }
121}