summaryrefslogtreecommitdiff
path: root/src/components
diff options
context:
space:
mode:
Diffstat (limited to 'src/components')
-rw-r--r--src/components/flags.rs21
-rw-r--r--src/components/mod.rs3
2 files changed, 8 insertions, 16 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
}
diff --git a/src/components/mod.rs b/src/components/mod.rs
index 38a14bd..3f804da 100644
--- a/src/components/mod.rs
+++ b/src/components/mod.rs
@@ -184,7 +184,8 @@ pub struct Spawner {
pub amount: usize,
pub clan: Clan,
pub template: Template,
- pub saturated: bool
+ pub saturated: bool,
+ pub radius: i64
}
#[derive(Component, Debug, Clone, PartialEq, Eq, Hash)]