added scaling damage to silence and snare

This commit is contained in:
Mashy
2019-05-03 16:31:15 +10:00
parent ed6b69877a
commit 0373b607cf
5 changed files with 61 additions and 11 deletions
+38 -4
View File
@@ -570,6 +570,11 @@ impl Skill {
// Stun Base
Skill::Sleep => 240, //Green dmg (heal)
// Debuff Base
Skill::Silence => 55, // Deals more per blue skill on target
Skill::Snare => 40, // Deals more per blue skill on target
// Others
Skill::CorruptionTick => 80,
Skill::DecayTick => 25,
@@ -597,7 +602,7 @@ impl Skill {
Skill::Sleep => 3,
Skill::Throw => 2,
Skill::Snare => 2,
Skill::Snare => 3,
Skill::Taunt => 1,
Skill::Empower => 2,
@@ -612,7 +617,7 @@ impl Skill {
Skill::Haste => 2,
Skill::Amplify => 2,
Skill::Silence => 2,
Skill::Silence => 3,
Skill::Hostility => 2, // Primary Buff
Skill::Corrupt => 2, // Primary Buff
@@ -654,7 +659,7 @@ impl Skill {
Skill::Block => None, // reduce damage
Skill::Parry => None, // avoid all damage
Skill::Riposte => None, // used on parry
Skill::Snare => Some(1),
Skill::Snare => Some(2),
Skill::Stun => Some(1),
Skill::Heal => None,
Skill::Triage => None, // hot
@@ -671,7 +676,7 @@ impl Skill {
Skill::Curse => Some(1),
Skill::Empower => Some(1),
Skill::Shield => None,
Skill::Silence => Some(1),
Skill::Silence => Some(2),
Skill::Purify => None,
Skill::Purge => None,
Skill::Banish => Some(1),
@@ -980,6 +985,21 @@ fn riposte(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill
fn snare(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill: Skill) -> Resolutions {
let snare = CrypEffect::new(Effect::Snare, skill.duration());
results.push(Resolution::new(source, target).event(target.add_effect(skill, snare)));
let mut s_multi: u64 = 100;
for cs in target.skills.iter() {
s_multi += match cs.skill.category() {
Category::Red => 45,
_ => 0,
}
}
let amount = source.red_damage().pct(skill.multiplier()).pct(s_multi);
target.deal_red_damage(skill, amount)
.into_iter()
.for_each(|e| results.push(Resolution::new(source, target).event(e)));
return results;
}
@@ -1210,6 +1230,20 @@ fn shield(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill:
fn silence(source: &mut Cryp, target: &mut Cryp, mut results: Resolutions, skill: Skill) -> Resolutions {
let silence = CrypEffect::new(Effect::Silence, skill.duration());
results.push(Resolution::new(source, target).event(target.add_effect(skill, silence)));
let mut s_multi: u64 = 100;
for cs in target.skills.iter() {
s_multi += match cs.skill.category() {
Category::Blue => 45,
_ => 0,
}
}
let amount = source.blue_damage().pct(skill.multiplier()).pct(s_multi);
target.deal_blue_damage(skill, amount)
.into_iter()
.for_each(|e| results.push(Resolution::new(source, target).event(e)));
return results;
}
+3 -3
View File
@@ -358,9 +358,9 @@ fn get_combos() -> Vec<Combo> {
Combo { units: vec![Var::Buff, Var::Green, Var::Blue], var: Var::Curse }, // Needs a buff
Combo { units: vec![Var::Buff, Var::Red, Var::Blue], var: Var::Haste }, // Needs a buff
Combo { units: vec![Var::Debuff, Var::Red, Var::Red], var: Var::Snare }, // Dmg for disabled red
Combo { units: vec![Var::Debuff, Var::Green, Var::Green], var: Var::Purge }, // Needs a buff
Combo { units: vec![Var::Debuff, Var::Blue, Var::Blue], var: Var::Silence }, // Dmg for disabled blue
Combo { units: vec![Var::Debuff, Var::Red, Var::Red], var: Var::Snare }, // disable red and dmg
Combo { units: vec![Var::Debuff, Var::Green, Var::Green], var: Var::Purge }, // disable green and remove debuff
Combo { units: vec![Var::Debuff, Var::Blue, Var::Blue], var: Var::Silence }, // disable blue and dmg
Combo { units: vec![Var::Debuff, Var::Red, Var::Green], var: Var::Slow }, // Needs a buff
Combo { units: vec![Var::Debuff, Var::Green, Var::Blue], var: Var::Decay },
Combo { units: vec![Var::Debuff, Var::Red, Var::Blue], var: Var::Invert },