throw -> break

This commit is contained in:
ntr
2019-07-05 17:02:03 +10:00
parent 3dd3536101
commit 83e8117c6a
10 changed files with 140 additions and 46 deletions
+18 -18
View File
@@ -172,9 +172,9 @@ pub enum Item {
InterceptI,
InterceptII,
InterceptIII,
ThrowI,
ThrowII,
ThrowIII,
BreakI,
BreakII,
BreakIII,
TriageI,
TriageII,
TriageIII,
@@ -384,9 +384,9 @@ impl Item {
Item::SustainI => Some(Skill::SustainI),
Item::SustainII => Some(Skill::SustainII),
Item::SustainIII => Some(Skill::SustainIII),
Item::ThrowI => Some(Skill::ThrowI),
Item::ThrowII => Some(Skill::ThrowII),
Item::ThrowIII => Some(Skill::ThrowIII),
Item::BreakI => Some(Skill::BreakI),
Item::BreakII => Some(Skill::BreakII),
Item::BreakIII => Some(Skill::BreakIII),
Item::TriageI => Some(Skill::TriageI),
Item::TriageII => Some(Skill::TriageII),
Item::TriageIII => Some(Skill::TriageIII),
@@ -765,9 +765,9 @@ impl Item {
self.into_skill().unwrap().effect()[0].get_duration(),
self.into_skill().unwrap().multiplier()),
Item::ThrowI |
Item::ThrowII |
Item::ThrowIII => format!(
Item::BreakI |
Item::BreakII |
Item::BreakIII => format!(
"Stun the target for {:?}T and applies Vulnerable increasing RedDamage taken by {:?}% for {:?}T",
self.into_skill().unwrap().effect()[0].get_duration(),
self.into_skill().unwrap().effect()[1].get_multiplier() - 100,
@@ -850,9 +850,9 @@ impl Item {
Item::RuinI => vec![Item::Stun, Item::Blue, Item::Blue],
Item::RuinII => vec![Item::RuinI, Item::RuinI, Item::RuinI],
Item::RuinIII => vec![Item::RuinII, Item::RuinII, Item::RuinII],
Item::ThrowI => vec![Item::Stun, Item::Red, Item::Green],
Item::ThrowII => vec![Item::ThrowI, Item::ThrowI, Item::ThrowI],
Item::ThrowIII => vec![Item::ThrowII, Item::ThrowII, Item::ThrowII],
Item::BreakI => vec![Item::Stun, Item::Red, Item::Green],
Item::BreakII => vec![Item::BreakI, Item::BreakI, Item::BreakI],
Item::BreakIII => vec![Item::BreakII, Item::BreakII, Item::BreakII],
Item::AbsorbI => vec![Item::Stun, Item::Green, Item::Blue],
Item::AbsorbII => vec![Item::AbsorbI, Item::AbsorbI, Item::AbsorbI],
Item::AbsorbIII => vec![Item::AbsorbII, Item::AbsorbII, Item::AbsorbII],
@@ -1040,9 +1040,9 @@ impl From<Skill> for Item {
Skill::SustainI => Item::SustainI,
Skill::SustainII => Item::SustainII,
Skill::SustainIII => Item::SustainIII,
Skill::ThrowI => Item::ThrowI,
Skill::ThrowII => Item::ThrowII,
Skill::ThrowIII => Item::ThrowIII,
Skill::BreakI => Item::BreakI,
Skill::BreakII => Item::BreakII,
Skill::BreakIII => Item::BreakIII,
Skill::TriageI => Item::TriageI,
Skill::TriageII => Item::TriageII,
Skill::TriageIII => Item::TriageIII,
@@ -1235,9 +1235,9 @@ pub fn get_combos() -> Vec<Combo> {
Combo { components: Item::RuinII.combo(), item: Item::RuinII },
Combo { components: Item::RuinIII.combo(), item: Item::RuinIII },
Combo { components: Item::ThrowI.combo(), item: Item::ThrowI },
Combo { components: Item::ThrowII.combo(), item: Item::ThrowII },
Combo { components: Item::ThrowIII.combo(), item: Item::ThrowIII },
Combo { components: Item::BreakI.combo(), item: Item::BreakI },
Combo { components: Item::BreakII.combo(), item: Item::BreakII },
Combo { components: Item::BreakIII.combo(), item: Item::BreakIII },
Combo { components: Item::AbsorbI.combo(), item: Item::AbsorbI },
Combo { components: Item::AbsorbII.combo(), item: Item::AbsorbII },
Combo { components: Item::AbsorbIII.combo(), item: Item::AbsorbIII },
+13 -13
View File
@@ -247,9 +247,9 @@ pub fn resolve(skill: Skill, source: &mut Construct, target: &mut Construct, mut
Skill::InterceptII |
Skill::InterceptIII => intercept(source, target, resolutions, skill),
Skill::ThrowI |
Skill::ThrowII |
Skill::ThrowIII => throw(source, target, resolutions, skill), // no damage stun, adds vulnerable
Skill::BreakI |
Skill::BreakII |
Skill::BreakIII => break(source, target, resolutions, skill), // no damage stun, adds vulnerable
Skill::TriageI |
Skill::TriageII |
@@ -622,9 +622,9 @@ pub enum Skill {
InterceptII,
InterceptIII,
ThrowI, // no damage stun, adds vulnerable
ThrowII,
ThrowIII,
BreakI, // no damage stun, adds vulnerable
BreakII,
BreakIII,
TriageI, // hot
TriageII,
@@ -823,11 +823,11 @@ impl Skill {
Skill::ReflectII => vec![ConstructEffect {effect: Effect::Reflect, duration: 2, meta: None, tick: None }],
Skill::ReflectIII => vec![ConstructEffect {effect: Effect::Reflect, duration: 3, meta: None, tick: None }],
Skill::ThrowI => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None},
Skill::BreakI => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None},
ConstructEffect {effect: Effect::Vulnerable, duration: 3, meta: Some(EffectMeta::Multiplier(150)), tick: None}],
Skill::ThrowII => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None},
Skill::BreakII => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None},
ConstructEffect {effect: Effect::Vulnerable, duration: 4, meta: Some(EffectMeta::Multiplier(200)), tick: None}],
Skill::ThrowIII => vec![ConstructEffect {effect: Effect::Stun, duration: 2, meta: None, tick: None},
Skill::BreakIII => vec![ConstructEffect {effect: Effect::Stun, duration: 2, meta: None, tick: None},
ConstructEffect {effect: Effect::Vulnerable, duration: 4, meta: Some(EffectMeta::Multiplier(250)), tick: None}],
Skill::RuinI => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None}],
@@ -916,9 +916,9 @@ impl Skill {
Skill::TriageII => None, // hot
Skill::TriageIII => None, // hot
Skill::ThrowI => Some(1), // no damage stun, adds vulnerable
Skill::ThrowII => Some(1),
Skill::ThrowIII => Some(1),
Skill::BreakI => Some(1), // no damage stun, adds vulnerable
Skill::BreakII => Some(1),
Skill::BreakIII => Some(1),
Skill::BlastI => None,
Skill::BlastII => None,
@@ -1296,7 +1296,7 @@ fn intercept(source: &mut Construct, target: &mut Construct, mut results: Resolu
return results;
}
fn throw(source: &mut Construct, target: &mut Construct, mut results: Resolutions, skill: Skill) -> Resolutions {
fn break(source: &mut Construct, target: &mut Construct, mut results: Resolutions, skill: Skill) -> Resolutions {
let stun = skill.effect()[0];
results.push(Resolution::new(source, target).event(target.add_effect(skill, stun)));
let vuln = skill.effect()[1];