diff options
Diffstat (limited to 'src/components')
| -rw-r--r-- | src/components/messages.rs | 10 | ||||
| -rw-r--r-- | src/components/mod.rs | 8 |
2 files changed, 16 insertions, 2 deletions
diff --git a/src/components/messages.rs b/src/components/messages.rs index ac21ea1..aa928f0 100644 --- a/src/components/messages.rs +++ b/src/components/messages.rs @@ -75,9 +75,13 @@ pub type AttackInbox = Inbox<AttackMessage>; #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub enum Trigger { + // basic triggers Loot, - Die, - Remove + Remove, + Build, + // combination triggers + Die, // Remove + Loot + Change // Remove + Build } impl Trigger { @@ -86,6 +90,8 @@ impl Trigger { "loot" => Self::Loot, "die" => Self::Die, "remove" => Self::Remove, + "build" => Self::Build, + "change" => Self::Change, _ => {return None} }) } diff --git a/src/components/mod.rs b/src/components/mod.rs index 530cda3..347bb40 100644 --- a/src/components/mod.rs +++ b/src/components/mod.rs @@ -227,4 +227,12 @@ pub struct CreationTime { pub struct Item(pub ItemId); +#[derive(Component, Debug, Clone)] +#[storage(HashMapStorage)] +pub struct Build { + pub obj: Template +} + + + |
