immunities for initial skill ticks
This commit is contained in:
parent
424f1a2846
commit
21903cc27c
@ -722,6 +722,8 @@ impl Construct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub fn healing(&mut self, amount: usize, colour: Colour) -> Vec<Event> {
|
pub fn healing(&mut self, amount: usize, colour: Colour) -> Vec<Event> {
|
||||||
|
if self.is_ko() { return vec![Event::TargetKo { construct: self.id }] }
|
||||||
|
|
||||||
match colour {
|
match colour {
|
||||||
Colour::Red => self.red_healing(amount),
|
Colour::Red => self.red_healing(amount),
|
||||||
Colour::Blue => self.blue_healing(amount),
|
Colour::Blue => self.blue_healing(amount),
|
||||||
|
|||||||
@ -363,6 +363,10 @@ impl Cast {
|
|||||||
effect: ConstructEffect { effect: Effect::Decay, duration: 2, meta:
|
effect: ConstructEffect { effect: Effect::Decay, duration: 2, meta:
|
||||||
Some(EffectMeta::CastTick { source: self.source, target: self.target, skill: Skill::DecayTick }) },
|
Some(EffectMeta::CastTick { source: self.source, target: self.target, skill: Skill::DecayTick }) },
|
||||||
},
|
},
|
||||||
|
Action::Effect {
|
||||||
|
construct: self.target,
|
||||||
|
effect: ConstructEffect { effect: Effect::Decayed, duration: 1, meta: None }, // immunity to additional ticks
|
||||||
|
},
|
||||||
Action::Damage {
|
Action::Damage {
|
||||||
construct: self.target,
|
construct: self.target,
|
||||||
colour: Colour::Blue,
|
colour: Colour::Blue,
|
||||||
@ -379,6 +383,10 @@ impl Cast {
|
|||||||
effect: ConstructEffect { effect: Effect::Decay, duration: 4, meta:
|
effect: ConstructEffect { effect: Effect::Decay, duration: 4, meta:
|
||||||
Some(EffectMeta::CastTick { source: self.source, target: self.target, skill: Skill::DecayTickPlus }) },
|
Some(EffectMeta::CastTick { source: self.source, target: self.target, skill: Skill::DecayTickPlus }) },
|
||||||
},
|
},
|
||||||
|
Action::Effect {
|
||||||
|
construct: self.target,
|
||||||
|
effect: ConstructEffect { effect: Effect::Decayed, duration: 1, meta: None }, // immunity to additional ticks
|
||||||
|
},
|
||||||
Action::Damage {
|
Action::Damage {
|
||||||
construct: self.target,
|
construct: self.target,
|
||||||
colour: Colour::Blue,
|
colour: Colour::Blue,
|
||||||
@ -395,6 +403,10 @@ impl Cast {
|
|||||||
effect: ConstructEffect { effect: Effect::Decay, duration: 4, meta:
|
effect: ConstructEffect { effect: Effect::Decay, duration: 4, meta:
|
||||||
Some(EffectMeta::CastTick { source: self.source, target: self.target, skill: Skill::DecayTickPlusPlus }) },
|
Some(EffectMeta::CastTick { source: self.source, target: self.target, skill: Skill::DecayTickPlusPlus }) },
|
||||||
},
|
},
|
||||||
|
Action::Effect {
|
||||||
|
construct: self.target,
|
||||||
|
effect: ConstructEffect { effect: Effect::Decayed, duration: 1, meta: None }, // immunity to additional ticks
|
||||||
|
},
|
||||||
Action::Damage {
|
Action::Damage {
|
||||||
construct: self.target,
|
construct: self.target,
|
||||||
colour: Colour::Blue,
|
colour: Colour::Blue,
|
||||||
@ -787,15 +799,15 @@ impl Cast {
|
|||||||
colour: Colour::Blue,
|
colour: Colour::Blue,
|
||||||
values: vec![Value::Stat { construct: self.source, stat: Stat::BluePower, mult: self.skill.multiplier() }],
|
values: vec![Value::Stat { construct: self.source, stat: Stat::BluePower, mult: self.skill.multiplier() }],
|
||||||
},
|
},
|
||||||
|
Action::Effect {
|
||||||
|
construct: self.target,
|
||||||
|
effect: ConstructEffect { effect: Effect::Siphoned, duration: 1, meta: None }, // immunity to additional ticks
|
||||||
|
},
|
||||||
Action::Heal {
|
Action::Heal {
|
||||||
construct: self.source,
|
construct: self.source,
|
||||||
colour: Colour::Green,
|
colour: Colour::Green,
|
||||||
values: vec![Value::DamageReceived { construct: self.target, colour: Colour::Blue, mult: 100 }],
|
values: vec![Value::DamageReceived { construct: self.target, colour: Colour::Blue, mult: 100 }],
|
||||||
},
|
},
|
||||||
Action::Effect {
|
|
||||||
construct: self.target,
|
|
||||||
effect: ConstructEffect { effect: Effect::Siphoned, duration: 1, meta: None }, // immunity to additional ticks
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
|
|
||||||
Skill::Slay |
|
Skill::Slay |
|
||||||
@ -899,6 +911,10 @@ impl Cast {
|
|||||||
colour: Colour::Green,
|
colour: Colour::Green,
|
||||||
values: vec![Value::Stat { construct: self.source, stat: Stat::GreenPower, mult: self.skill.multiplier() }],
|
values: vec![Value::Stat { construct: self.source, stat: Stat::GreenPower, mult: self.skill.multiplier() }],
|
||||||
},
|
},
|
||||||
|
Action::Effect {
|
||||||
|
construct: self.target,
|
||||||
|
effect: ConstructEffect { effect: Effect::Triaged, duration: 1, meta: None },
|
||||||
|
},
|
||||||
],
|
],
|
||||||
Skill::TriagePlus => vec![
|
Skill::TriagePlus => vec![
|
||||||
Action::Effect {
|
Action::Effect {
|
||||||
@ -911,6 +927,10 @@ impl Cast {
|
|||||||
colour: Colour::Green,
|
colour: Colour::Green,
|
||||||
values: vec![Value::Stat { construct: self.source, stat: Stat::GreenPower, mult: self.skill.multiplier() }],
|
values: vec![Value::Stat { construct: self.source, stat: Stat::GreenPower, mult: self.skill.multiplier() }],
|
||||||
},
|
},
|
||||||
|
Action::Effect {
|
||||||
|
construct: self.target,
|
||||||
|
effect: ConstructEffect { effect: Effect::Triaged, duration: 1, meta: None },
|
||||||
|
},
|
||||||
],
|
],
|
||||||
Skill::TriagePlusPlus => vec![
|
Skill::TriagePlusPlus => vec![
|
||||||
Action::Effect {
|
Action::Effect {
|
||||||
@ -923,6 +943,10 @@ impl Cast {
|
|||||||
colour: Colour::Green,
|
colour: Colour::Green,
|
||||||
values: vec![Value::Stat { construct: self.source, stat: Stat::GreenPower, mult: self.skill.multiplier() }],
|
values: vec![Value::Stat { construct: self.source, stat: Stat::GreenPower, mult: self.skill.multiplier() }],
|
||||||
},
|
},
|
||||||
|
Action::Effect {
|
||||||
|
construct: self.target,
|
||||||
|
effect: ConstructEffect { effect: Effect::Triaged, duration: 1, meta: None },
|
||||||
|
},
|
||||||
],
|
],
|
||||||
Skill::TriageTick |
|
Skill::TriageTick |
|
||||||
Skill::TriageTickPlus |
|
Skill::TriageTickPlus |
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user