summaryrefslogtreecommitdiff
path: root/src/components/messages.rs
diff options
context:
space:
mode:
authortroido <troido@protonmail.com>2020-04-13 10:20:37 +0200
committertroido <troido@protonmail.com>2020-04-13 10:20:37 +0200
commit9d6348a8c8d24bda6c229f72662c8eddc101e92b (patch)
tree48b7923c340fe6a0ae320e8c52187b81d385d5f5 /src/components/messages.rs
parentcfd462a26b3ed4c5f23760a77ae87ce61dc9bbe2 (diff)
replaced harvest interaction with choosable trigger
Diffstat (limited to 'src/components/messages.rs')
-rw-r--r--src/components/messages.rs14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/components/messages.rs b/src/components/messages.rs
index fa4d747..ac21ea1 100644
--- a/src/components/messages.rs
+++ b/src/components/messages.rs
@@ -73,12 +73,24 @@ pub type AttackInbox = Inbox<AttackMessage>;
-#[derive(Debug, Clone)]
+#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum Trigger {
Loot,
Die,
Remove
}
+
+impl Trigger {
+ pub fn from_str(txt: &str) -> Option<Self> {
+ Some(match txt {
+ "loot" => Self::Loot,
+ "die" => Self::Die,
+ "remove" => Self::Remove,
+ _ => {return None}
+ })
+ }
+}
+
impl Message for Trigger {}
pub type TriggerBox = Inbox<Trigger>;