From 9fefb508f9c6c94eb1b338a0767593cff5b9150d Mon Sep 17 00:00:00 2001 From: ntr Date: Wed, 11 Dec 2019 18:47:19 +1000 Subject: [PATCH] on ko fn --- core/src/construct.rs | 8 ++++++++ core/src/game.rs | 6 ++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/core/src/construct.rs b/core/src/construct.rs index bd215b4a..cf2d7b56 100644 --- a/core/src/construct.rs +++ b/core/src/construct.rs @@ -947,6 +947,14 @@ impl Construct { return removals; } + pub fn on_ko(&mut self, _cast: &Cast, _event: &Event) -> Vec { + self.effects.clear(); + self.green_life.value = 0; + self.red_life.value = 0; + self.blue_life.value = 0; + return vec![]; + } + pub fn damage_trigger_casts(&mut self, cast: &Cast, event: &Event) -> Vec { if self.is_ko() { return vec![] } diff --git a/core/src/game.rs b/core/src/game.rs index 5561e50d..708e98d6 100644 --- a/core/src/game.rs +++ b/core/src/game.rs @@ -588,11 +588,9 @@ impl Game { let casts = match event { Event::Damage { construct, colour, amount, mitigation, display: _ } => self.construct_by_id(*construct).unwrap().damage_trigger_casts(cast, event), - Event::Ko { construct } =>{ - self.construct_by_id(*construct).unwrap().effects.clear(); - vec![] - }, // Event::Cast {} => set_cooldown() + Event::Ko { construct } => + self.construct_by_id(*construct).unwrap().on_ko(cast, event), _ => vec![], };