summaryrefslogtreecommitdiff
path: root/src/components/flags.rs
diff options
context:
space:
mode:
authortroido <troido@protonmail.com>2020-09-24 09:38:18 +0200
committertroido <troido@protonmail.com>2020-09-24 09:38:18 +0200
commit523a635dc88bc7890a0e1d3c062a8165259761d6 (patch)
tree56b0e379349250ecbf75eda6ccdb1f6f791dcbb1 /src/components/flags.rs
parentdaaf3a25e9c6cc1843b0a3aff71d4142f83dde10 (diff)
don't try to read into the json data structure all manually
Diffstat (limited to 'src/components/flags.rs')
-rw-r--r--src/components/flags.rs21
1 files changed, 6 insertions, 15 deletions
diff --git a/src/components/flags.rs b/src/components/flags.rs
index d985bf2..25ec4ea 100644
--- a/src/components/flags.rs
+++ b/src/components/flags.rs
@@ -4,26 +4,17 @@ use specs::{
Component,
VecStorage,
};
+use strum_macros::{EnumString, Display};
+use serde::{Serialize, Deserialize};
-#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
+#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, EnumString, Display, Serialize, Deserialize)]
pub enum Flag {
Blocking,
Floor,
Occupied,
- Soil
-}
-
-use Flag::*;
-impl Flag {
- pub fn from_str(s: &str) -> Option<Flag> {
- Some(match s {
- "Blocking" => Blocking,
- "Floor" => Floor,
- "Occupied" => Occupied,
- "Soil" => Soil,
- _ => None?
- })
- }
+ Soil,
+ Build,
+ Hot
}