ruin deals dmg to each construct and reduce cd
This commit is contained in:
parent
48ef08fd2a
commit
efcc437985
@ -1390,6 +1390,7 @@ mod tests {
|
|||||||
true
|
true
|
||||||
},
|
},
|
||||||
Event::AoeSkill { skill: _ } => false,
|
Event::AoeSkill { skill: _ } => false,
|
||||||
|
Event::Damage { amount: _, mitigation: _, colour: _, skill: _ } => false,
|
||||||
_ => panic!("ruin result not effect {:?}", event),
|
_ => panic!("ruin result not effect {:?}", event),
|
||||||
}
|
}
|
||||||
false => false,
|
false => false,
|
||||||
|
|||||||
@ -850,8 +850,10 @@ impl Item {
|
|||||||
Item::Ruin|
|
Item::Ruin|
|
||||||
Item::RuinPlus |
|
Item::RuinPlus |
|
||||||
Item::RuinPlusPlus => format!(
|
Item::RuinPlusPlus => format!(
|
||||||
"Team wide Stun for {:?}T. Stunned constructs are unable to cast skills.",
|
"Team wide skill. Stun each construct for {:?}T.
|
||||||
self.into_skill().unwrap().effect()[0].get_duration()),
|
Deal {:?}% BluePower as blue damage to each construct.",
|
||||||
|
self.into_skill().unwrap().effect()[0].get_duration(),
|
||||||
|
self.into_skill().unwrap().multiplier()),
|
||||||
|
|
||||||
Item::Link|
|
Item::Link|
|
||||||
Item::LinkPlus |
|
Item::LinkPlus |
|
||||||
|
|||||||
@ -753,48 +753,48 @@ impl Skill {
|
|||||||
// Attack Base
|
// Attack Base
|
||||||
Skill::Attack => 80, // Base
|
Skill::Attack => 80, // Base
|
||||||
|
|
||||||
Skill::Blast=> 105, // BB
|
Skill::Blast => 105, // BB
|
||||||
Skill::BlastPlus => 140, // BB
|
Skill::BlastPlus => 140, // BB
|
||||||
Skill::BlastPlusPlus => 200, // BB
|
Skill::BlastPlusPlus => 200, // BB
|
||||||
|
|
||||||
Skill::Chaos=> 40, // BR
|
Skill::Chaos => 40, // BR
|
||||||
Skill::ChaosPlus => 65, // BR
|
Skill::ChaosPlus => 65, // BR
|
||||||
Skill::ChaosPlusPlus => 90, // BR
|
Skill::ChaosPlusPlus => 90, // BR
|
||||||
|
|
||||||
Skill::Heal=> 125, //GG
|
Skill::Heal => 125, //GG
|
||||||
Skill::HealPlus => 185, //GG
|
Skill::HealPlus => 185, //GG
|
||||||
Skill::HealPlusPlus => 270, //GG
|
Skill::HealPlusPlus => 270, //GG
|
||||||
|
|
||||||
Skill::SiphonTick=> 25, // GB
|
Skill::SiphonTick => 25, // GB
|
||||||
Skill::SiphonTickPlus => 30,
|
Skill::SiphonTickPlus => 30,
|
||||||
Skill::SiphonTickPlusPlus => 40,
|
Skill::SiphonTickPlusPlus => 40,
|
||||||
|
|
||||||
Skill::Slay=> 45, // RG
|
Skill::Slay => 45, // RG
|
||||||
Skill::SlayPlus => 65,
|
Skill::SlayPlus => 65,
|
||||||
Skill::SlayPlusPlus => 100,
|
Skill::SlayPlusPlus => 100,
|
||||||
|
|
||||||
Skill::Strike=> 90, //RR
|
Skill::Strike => 90, //RR
|
||||||
Skill::StrikePlus => 140,
|
Skill::StrikePlus => 140,
|
||||||
Skill::StrikePlusPlus => 200,
|
Skill::StrikePlusPlus => 200,
|
||||||
|
|
||||||
// Block Base
|
// Block Base
|
||||||
Skill::ElectrocuteTick=> 80,
|
Skill::ElectrocuteTick => 80,
|
||||||
Skill::ElectrocuteTickPlus => 100,
|
Skill::ElectrocuteTickPlus => 100,
|
||||||
Skill::ElectrocuteTickPlusPlus => 130,
|
Skill::ElectrocuteTickPlusPlus => 130,
|
||||||
|
|
||||||
Skill::CounterAttack=> 120,
|
Skill::CounterAttack => 120,
|
||||||
Skill::CounterAttackPlus => 160,
|
Skill::CounterAttackPlus => 160,
|
||||||
Skill::CounterAttackPlusPlus => 230,
|
Skill::CounterAttackPlusPlus => 230,
|
||||||
|
|
||||||
Skill::Purify=> 45, //Green dmg (heal)
|
Skill::Purify => 45, //Green dmg (heal)
|
||||||
Skill::PurifyPlus => 70,
|
Skill::PurifyPlus => 70,
|
||||||
Skill::PurifyPlusPlus => 105,
|
Skill::PurifyPlusPlus => 105,
|
||||||
|
|
||||||
Skill::Reflect=> 45, //Recharge blue life (heal)
|
Skill::Reflect => 45, //Recharge blue life (heal)
|
||||||
Skill::ReflectPlus => 70,
|
Skill::ReflectPlus => 70,
|
||||||
Skill::ReflectPlusPlus => 100,
|
Skill::ReflectPlusPlus => 100,
|
||||||
|
|
||||||
Skill::Recharge=> 70, //Recharge red and blue life (heal)
|
Skill::Recharge => 70, //Recharge red and blue life (heal)
|
||||||
Skill::RechargePlus => 110,
|
Skill::RechargePlus => 110,
|
||||||
Skill::RechargePlusPlus => 170,
|
Skill::RechargePlusPlus => 170,
|
||||||
|
|
||||||
@ -803,29 +803,36 @@ impl Skill {
|
|||||||
Skill::SustainPlusPlus => 230,
|
Skill::SustainPlusPlus => 230,
|
||||||
|
|
||||||
// Stun Base
|
// Stun Base
|
||||||
Skill::Sleep=> 200, //Green dmg (heal)
|
Skill::Sleep => 200, //Green dmg (heal)
|
||||||
Skill::SleepPlus => 290,
|
Skill::SleepPlus => 290,
|
||||||
Skill::SleepPlusPlus => 400,
|
Skill::SleepPlusPlus => 400,
|
||||||
|
|
||||||
Skill::Banish=> 40, //Green dmg (heal)
|
Skill::Banish => 40, //Green dmg (heal)
|
||||||
Skill::BanishPlus => 75,
|
Skill::BanishPlus => 75,
|
||||||
Skill::BanishPlusPlus => 125,
|
Skill::BanishPlusPlus => 125,
|
||||||
|
|
||||||
Skill::Bash=> 45,
|
Skill::Bash => 45,
|
||||||
Skill::BashPlus => 65,
|
Skill::BashPlus => 65,
|
||||||
Skill::BashPlusPlus => 100,
|
Skill::BashPlusPlus => 100,
|
||||||
|
|
||||||
Skill::Link=> 75,
|
Skill::Link => 75,
|
||||||
Skill::LinkPlus => 100,
|
Skill::LinkPlus => 100,
|
||||||
Skill::LinkPlusPlus => 150,
|
Skill::LinkPlusPlus => 150,
|
||||||
|
|
||||||
|
Skill::Ruin => 40,
|
||||||
|
Skill::RuinPlus => 70,
|
||||||
|
Skill::RuinPlusPlus => 100,
|
||||||
|
|
||||||
// Debuff Base
|
// Debuff Base
|
||||||
Skill::DecayTick=> 33,
|
Skill::DecayTick => 33,
|
||||||
Skill::DecayTickPlus => 45,
|
Skill::DecayTickPlus => 45,
|
||||||
Skill::DecayTickPlusPlus => 70,
|
Skill::DecayTickPlusPlus => 70,
|
||||||
Skill::Silence=> 55, // Deals more per blue skill on target
|
|
||||||
|
Skill::Silence => 55, // Deals more per blue skill on target
|
||||||
Skill::SilencePlus => 80,
|
Skill::SilencePlus => 80,
|
||||||
Skill::SilencePlusPlus => 110,
|
Skill::SilencePlusPlus => 110,
|
||||||
Skill::Restrict=> 40, // Deals more per red skill on target
|
|
||||||
|
Skill::Restrict => 40, // Deals more per red skill on target
|
||||||
Skill::RestrictPlus => 65,
|
Skill::RestrictPlus => 65,
|
||||||
Skill::RestrictPlusPlus => 100,
|
Skill::RestrictPlusPlus => 100,
|
||||||
|
|
||||||
@ -834,11 +841,11 @@ impl Skill {
|
|||||||
|
|
||||||
Skill::HasteStrike => 60,
|
Skill::HasteStrike => 60,
|
||||||
|
|
||||||
Skill::Intercept=> 80,
|
Skill::Intercept => 80,
|
||||||
Skill::InterceptPlus => 110,
|
Skill::InterceptPlus => 110,
|
||||||
Skill::InterceptPlusPlus => 150,
|
Skill::InterceptPlusPlus => 150,
|
||||||
|
|
||||||
Skill::TriageTick=> 75,
|
Skill::TriageTick => 75,
|
||||||
Skill::TriageTickPlus => 110,
|
Skill::TriageTickPlus => 110,
|
||||||
Skill::TriageTickPlusPlus => 140,
|
Skill::TriageTickPlusPlus => 140,
|
||||||
|
|
||||||
@ -956,7 +963,7 @@ impl Skill {
|
|||||||
|
|
||||||
Skill::Ruin => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None}],
|
Skill::Ruin => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None}],
|
||||||
Skill::RuinPlus => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None}],
|
Skill::RuinPlus => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None}],
|
||||||
Skill::RuinPlusPlus => vec![ConstructEffect {effect: Effect::Stun, duration: 2, meta: None, tick: None}],
|
Skill::RuinPlusPlus => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None}],
|
||||||
|
|
||||||
Skill::Purge => vec![ConstructEffect {effect: Effect::Purge, duration: 2, meta: None, tick: None}],
|
Skill::Purge => vec![ConstructEffect {effect: Effect::Purge, duration: 2, meta: None, tick: None}],
|
||||||
Skill::PurgePlus => vec![ConstructEffect {effect: Effect::Purge, duration: 3, meta: None, tick: None}],
|
Skill::PurgePlus => vec![ConstructEffect {effect: Effect::Purge, duration: 3, meta: None, tick: None}],
|
||||||
@ -967,8 +974,8 @@ impl Skill {
|
|||||||
Skill::LinkPlusPlus => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None}],
|
Skill::LinkPlusPlus => vec![ConstructEffect {effect: Effect::Stun, duration: 1, meta: None, tick: None}],
|
||||||
|
|
||||||
Skill::Silence => vec![ConstructEffect {effect: Effect::Silence, duration: 2, meta: None, tick: None}],
|
Skill::Silence => vec![ConstructEffect {effect: Effect::Silence, duration: 2, meta: None, tick: None}],
|
||||||
Skill::SilencePlus => vec![ConstructEffect {effect: Effect::Silence, duration: 3, meta: None, tick: None}],
|
Skill::SilencePlus => vec![ConstructEffect {effect: Effect::Silence, duration: 2, meta: None, tick: None}],
|
||||||
Skill::SilencePlusPlus => vec![ConstructEffect {effect: Effect::Silence, duration: 4, meta: None, tick: None}],
|
Skill::SilencePlusPlus => vec![ConstructEffect {effect: Effect::Silence, duration: 2, meta: None, tick: None}],
|
||||||
|
|
||||||
Skill::Siphon => vec![ConstructEffect {effect: Effect::Siphon, duration: 2,
|
Skill::Siphon => vec![ConstructEffect {effect: Effect::Siphon, duration: 2,
|
||||||
meta: Some(EffectMeta::Skill(Skill::SiphonTick)), tick: None}],
|
meta: Some(EffectMeta::Skill(Skill::SiphonTick)), tick: None}],
|
||||||
@ -982,8 +989,8 @@ impl Skill {
|
|||||||
Skill::SleepPlusPlus => vec![ConstructEffect {effect: Effect::Stun, duration: 4, meta: None, tick: None}],
|
Skill::SleepPlusPlus => vec![ConstructEffect {effect: Effect::Stun, duration: 4, meta: None, tick: None}],
|
||||||
|
|
||||||
Skill::Restrict => vec![ConstructEffect {effect: Effect::Restrict, duration: 2, meta: None, tick: None}],
|
Skill::Restrict => vec![ConstructEffect {effect: Effect::Restrict, duration: 2, meta: None, tick: None}],
|
||||||
Skill::RestrictPlus => vec![ConstructEffect {effect: Effect::Restrict, duration: 3, meta: None, tick: None}],
|
Skill::RestrictPlus => vec![ConstructEffect {effect: Effect::Restrict, duration: 2, meta: None, tick: None}],
|
||||||
Skill::RestrictPlusPlus => vec![ConstructEffect {effect: Effect::Restrict, duration: 4, meta: None, tick: None}],
|
Skill::RestrictPlusPlus => vec![ConstructEffect {effect: Effect::Restrict, duration: 2, meta: None, tick: None}],
|
||||||
|
|
||||||
Skill::Bash => vec![ConstructEffect {effect: Effect::Stun, duration: 2,
|
Skill::Bash => vec![ConstructEffect {effect: Effect::Stun, duration: 2,
|
||||||
meta: Some(EffectMeta::Skill(Skill::Bash)), tick: None}],
|
meta: Some(EffectMeta::Skill(Skill::Bash)), tick: None}],
|
||||||
@ -1012,24 +1019,25 @@ impl Skill {
|
|||||||
pub fn base_cd(&self) -> Cooldown {
|
pub fn base_cd(&self) -> Cooldown {
|
||||||
match self {
|
match self {
|
||||||
Skill::Attack => None,
|
Skill::Attack => None,
|
||||||
Skill::Debuff => Some(1),
|
Skill::Block => None, // reduce damage
|
||||||
Skill::Buff => None,
|
Skill::Buff => None,
|
||||||
|
Skill::Debuff => Some(1),
|
||||||
|
Skill::Stun => Some(2),
|
||||||
|
|
||||||
Skill::Strike=> None,
|
Skill::Strike=> None,
|
||||||
Skill::StrikePlus => None,
|
Skill::StrikePlus => None,
|
||||||
Skill::StrikePlusPlus => None,
|
Skill::StrikePlusPlus => None,
|
||||||
Skill::Block => None, // reduce damage
|
|
||||||
Skill::Counter|
|
Skill::Counter|
|
||||||
Skill::CounterPlus |
|
Skill::CounterPlus |
|
||||||
Skill::CounterPlusPlus => None, // avoid all damage
|
Skill::CounterPlusPlus => None, // avoid all damage
|
||||||
|
|
||||||
Skill::Restrict=> Some(2),
|
Skill::Restrict |
|
||||||
Skill::RestrictPlus => Some(2),
|
Skill::RestrictPlus |
|
||||||
Skill::RestrictPlusPlus => Some(2),
|
Skill::RestrictPlusPlus => Some(2),
|
||||||
Skill::Stun => Some(2),
|
|
||||||
|
|
||||||
Skill::Bash=> Some(2),
|
Skill::Bash |
|
||||||
Skill::BashPlus => Some(2),
|
Skill::BashPlus |
|
||||||
Skill::BashPlusPlus => Some(2),
|
Skill::BashPlusPlus => Some(2),
|
||||||
|
|
||||||
Skill::Heal=> None,
|
Skill::Heal=> None,
|
||||||
@ -1040,97 +1048,99 @@ impl Skill {
|
|||||||
Skill::TriagePlus => None, // hot
|
Skill::TriagePlus => None, // hot
|
||||||
Skill::TriagePlusPlus => None, // hot
|
Skill::TriagePlusPlus => None, // hot
|
||||||
|
|
||||||
Skill::Break=> Some(1), // no damage stun, adds vulnerable
|
Skill::Break | // no damage stun, adds vulnerable
|
||||||
Skill::BreakPlus => Some(1),
|
Skill::BreakPlus |
|
||||||
Skill::BreakPlusPlus => Some(1),
|
Skill::BreakPlusPlus => Some(1),
|
||||||
|
|
||||||
Skill::Blast=> None,
|
Skill::Blast |
|
||||||
Skill::BlastPlus => None,
|
Skill::BlastPlus |
|
||||||
Skill::BlastPlusPlus => None,
|
Skill::BlastPlusPlus => None,
|
||||||
|
|
||||||
Skill::Chaos=> None,
|
Skill::Chaos |
|
||||||
Skill::ChaosPlus => None,
|
Skill::ChaosPlus |
|
||||||
Skill::ChaosPlusPlus => None,
|
Skill::ChaosPlusPlus => None,
|
||||||
|
|
||||||
Skill::Amplify=> Some(1),
|
Skill::Amplify |
|
||||||
Skill::AmplifyPlus => Some(1),
|
Skill::AmplifyPlus |
|
||||||
Skill::AmplifyPlusPlus => Some(1),
|
Skill::AmplifyPlusPlus => Some(1),
|
||||||
Skill::Hybrid|
|
|
||||||
|
Skill::Hybrid |
|
||||||
Skill::HybridPlus |
|
Skill::HybridPlus |
|
||||||
Skill::HybridPlusPlus => Some(1),
|
Skill::HybridPlusPlus => Some(1),
|
||||||
|
|
||||||
Skill::Invert=> Some(2),
|
Skill::Invert |
|
||||||
Skill::InvertPlus => Some(2),
|
Skill::InvertPlus |
|
||||||
Skill::InvertPlusPlus => Some(2),
|
Skill::InvertPlusPlus => Some(2),
|
||||||
Skill::Decay=> Some(1), // dot
|
|
||||||
Skill::DecayPlus => Some(1),
|
Skill::Decay |
|
||||||
|
Skill::DecayPlus |
|
||||||
Skill::DecayPlusPlus => Some(1),
|
Skill::DecayPlusPlus => Some(1),
|
||||||
Skill::Siphon|
|
|
||||||
|
Skill::Siphon |
|
||||||
Skill::SiphonPlus |
|
Skill::SiphonPlus |
|
||||||
Skill::SiphonPlusPlus => None,
|
Skill::SiphonPlusPlus => None,
|
||||||
|
|
||||||
Skill::Curse=> Some(1),
|
Skill::Curse |
|
||||||
Skill::CursePlus => Some(1),
|
Skill::CursePlus |
|
||||||
Skill::CursePlusPlus => Some(1),
|
Skill::CursePlusPlus => Some(1),
|
||||||
|
|
||||||
Skill::Link=> Some(2),
|
Skill::Link |
|
||||||
Skill::LinkPlus => Some(2),
|
Skill::LinkPlus |
|
||||||
Skill::LinkPlusPlus => Some(2),
|
Skill::LinkPlusPlus => Some(2),
|
||||||
|
|
||||||
Skill::Silence=> Some(2),
|
Skill::Silence |
|
||||||
Skill::SilencePlus => Some(2),
|
Skill::SilencePlus |
|
||||||
Skill::SilencePlusPlus => Some(2),
|
Skill::SilencePlusPlus => Some(2),
|
||||||
|
|
||||||
Skill::Purify |
|
Skill::Purify |
|
||||||
Skill::PurifyPlus |
|
Skill::PurifyPlus |
|
||||||
Skill::PurifyPlusPlus => None,
|
Skill::PurifyPlusPlus => None,
|
||||||
|
|
||||||
Skill::Purge=> Some(1),
|
Skill::Purge |
|
||||||
Skill::PurgePlus => Some(1),
|
Skill::PurgePlus |
|
||||||
Skill::PurgePlusPlus => Some(1),
|
Skill::PurgePlusPlus => Some(1),
|
||||||
|
|
||||||
Skill::Banish |
|
Skill::Banish |
|
||||||
Skill::BanishPlus |
|
Skill::BanishPlus |
|
||||||
Skill::BanishPlusPlus => Some(2),
|
Skill::BanishPlusPlus => Some(2),
|
||||||
|
|
||||||
Skill::Haste=> Some(1),
|
Skill::Haste |
|
||||||
Skill::HastePlus => Some(1),
|
Skill::HastePlus |
|
||||||
Skill::HastePlusPlus => Some(1),
|
Skill::HastePlusPlus => Some(1),
|
||||||
|
|
||||||
Skill::Reflect |
|
Skill::Reflect |
|
||||||
Skill::ReflectPlus |
|
Skill::ReflectPlus |
|
||||||
Skill::ReflectPlusPlus => None,
|
Skill::ReflectPlusPlus => None,
|
||||||
|
|
||||||
Skill::Recharge=> None,
|
Skill::Recharge |
|
||||||
Skill::RechargePlus => None,
|
Skill::RechargePlus |
|
||||||
Skill::RechargePlusPlus => None,
|
Skill::RechargePlusPlus => None,
|
||||||
|
|
||||||
Skill::Ruin=> Some(3),
|
Skill::Ruin |
|
||||||
Skill::RuinPlus => Some(2),
|
Skill::RuinPlus |
|
||||||
Skill::RuinPlusPlus => Some(2),
|
Skill::RuinPlusPlus => Some(2),
|
||||||
|
|
||||||
Skill::Slay=> None,
|
Skill::Slay=> None,
|
||||||
Skill::SlayPlus => None,
|
Skill::SlayPlus => None,
|
||||||
Skill::SlayPlusPlus => None,
|
Skill::SlayPlusPlus => None,
|
||||||
|
|
||||||
Skill::Sleep=> Some(2),
|
Skill::Sleep |
|
||||||
Skill::SleepPlus => Some(2),
|
Skill::SleepPlus |
|
||||||
Skill::SleepPlusPlus => Some(2),
|
Skill::SleepPlusPlus => Some(2),
|
||||||
|
|
||||||
Skill::Sustain |
|
Skill::Sustain |
|
||||||
Skill::SustainPlus |
|
Skill::SustainPlus |
|
||||||
Skill::SustainPlusPlus => Some(1),
|
Skill::SustainPlusPlus => Some(1),
|
||||||
|
|
||||||
Skill::Intercept=> Some(2),
|
Skill::Intercept |
|
||||||
Skill::InterceptPlus => Some(2),
|
Skill::InterceptPlus |
|
||||||
Skill::InterceptPlusPlus => Some(2),
|
Skill::InterceptPlusPlus => Some(2),
|
||||||
|
|
||||||
Skill::Electrify |
|
Skill::Electrify |
|
||||||
Skill::ElectrifyPlus |
|
Skill::ElectrifyPlus |
|
||||||
Skill::ElectrifyPlusPlus => None,
|
Skill::ElectrifyPlusPlus => None,
|
||||||
|
|
||||||
|
Skill::Absorb |
|
||||||
Skill::Absorb|
|
|
||||||
Skill::AbsorbPlus |
|
Skill::AbsorbPlus |
|
||||||
Skill::AbsorbPlusPlus => Some(1),
|
Skill::AbsorbPlusPlus => Some(1),
|
||||||
|
|
||||||
@ -1167,17 +1177,17 @@ impl Skill {
|
|||||||
|
|
||||||
pub fn ko_castable(&self) -> bool {
|
pub fn ko_castable(&self) -> bool {
|
||||||
match self {
|
match self {
|
||||||
Skill::ElectrocuteTick|
|
Skill::ElectrocuteTick |
|
||||||
Skill::ElectrocuteTickPlus |
|
Skill::ElectrocuteTickPlus |
|
||||||
Skill::ElectrocuteTickPlusPlus |
|
Skill::ElectrocuteTickPlusPlus |
|
||||||
Skill::DecayTick|
|
Skill::DecayTick |
|
||||||
Skill::DecayTickPlus |
|
Skill::DecayTickPlus |
|
||||||
Skill::DecayTickPlusPlus |
|
Skill::DecayTickPlusPlus |
|
||||||
Skill::SiphonTick|
|
Skill::SiphonTick |
|
||||||
Skill::SiphonTickPlus |
|
Skill::SiphonTickPlus |
|
||||||
Skill::SiphonTickPlusPlus |
|
Skill::SiphonTickPlusPlus |
|
||||||
|
|
||||||
Skill::TriageTick|
|
Skill::TriageTick |
|
||||||
Skill::TriageTickPlus |
|
Skill::TriageTickPlus |
|
||||||
Skill::TriageTickPlusPlus => true,
|
Skill::TriageTickPlusPlus => true,
|
||||||
_ => false,
|
_ => false,
|
||||||
@ -1186,17 +1196,16 @@ impl Skill {
|
|||||||
|
|
||||||
pub fn is_tick(&self) -> bool {
|
pub fn is_tick(&self) -> bool {
|
||||||
match self {
|
match self {
|
||||||
Skill::ElectrocuteTick|
|
Skill::ElectrocuteTick |
|
||||||
Skill::ElectrocuteTickPlus |
|
Skill::ElectrocuteTickPlus |
|
||||||
Skill::ElectrocuteTickPlusPlus |
|
Skill::ElectrocuteTickPlusPlus |
|
||||||
Skill::DecayTick|
|
Skill::DecayTick |
|
||||||
Skill::DecayTickPlus |
|
Skill::DecayTickPlus |
|
||||||
Skill::DecayTickPlusPlus |
|
Skill::DecayTickPlusPlus |
|
||||||
Skill::SiphonTick|
|
Skill::SiphonTick |
|
||||||
Skill::SiphonTickPlus |
|
Skill::SiphonTickPlus |
|
||||||
Skill::SiphonTickPlusPlus |
|
Skill::SiphonTickPlusPlus |
|
||||||
|
Skill::TriageTick |
|
||||||
Skill::TriageTick|
|
|
||||||
Skill::TriageTickPlus |
|
Skill::TriageTickPlus |
|
||||||
Skill::TriageTickPlusPlus => true,
|
Skill::TriageTickPlusPlus => true,
|
||||||
|
|
||||||
@ -1206,19 +1215,19 @@ impl Skill {
|
|||||||
|
|
||||||
pub fn speed(&self) -> u64 {
|
pub fn speed(&self) -> u64 {
|
||||||
match self {
|
match self {
|
||||||
Skill::SiphonTick|
|
Skill::SiphonTick |
|
||||||
Skill::SiphonTickPlus |
|
Skill::SiphonTickPlus |
|
||||||
Skill::SiphonTickPlusPlus => Skill::Siphon.speed(),
|
Skill::SiphonTickPlusPlus => Skill::Siphon.speed(),
|
||||||
|
|
||||||
Skill::DecayTick|
|
Skill::DecayTick |
|
||||||
Skill::DecayTickPlus |
|
Skill::DecayTickPlus |
|
||||||
Skill::DecayTickPlusPlus => Skill::Decay.speed(),
|
Skill::DecayTickPlusPlus => Skill::Decay.speed(),
|
||||||
|
|
||||||
Skill::TriageTick|
|
Skill::TriageTick |
|
||||||
Skill::TriageTickPlus |
|
Skill::TriageTickPlus |
|
||||||
Skill::TriageTickPlusPlus => Skill::Triage.speed(),
|
Skill::TriageTickPlusPlus => Skill::Triage.speed(),
|
||||||
|
|
||||||
Skill::ElectrocuteTick|
|
Skill::ElectrocuteTick |
|
||||||
Skill::ElectrocuteTickPlus |
|
Skill::ElectrocuteTickPlus |
|
||||||
Skill::ElectrocuteTickPlusPlus => Skill::Electrify.speed(),
|
Skill::ElectrocuteTickPlusPlus => Skill::Electrify.speed(),
|
||||||
|
|
||||||
@ -1228,7 +1237,7 @@ impl Skill {
|
|||||||
|
|
||||||
pub fn aoe(&self) -> bool {
|
pub fn aoe(&self) -> bool {
|
||||||
match self {
|
match self {
|
||||||
Skill::Ruin|
|
Skill::Ruin |
|
||||||
Skill::RuinPlus |
|
Skill::RuinPlus |
|
||||||
Skill::RuinPlusPlus => true,
|
Skill::RuinPlusPlus => true,
|
||||||
_ => false,
|
_ => false,
|
||||||
@ -1243,44 +1252,44 @@ impl Skill {
|
|||||||
Skill::AmplifyPlus |
|
Skill::AmplifyPlus |
|
||||||
Skill::AmplifyPlusPlus |
|
Skill::AmplifyPlusPlus |
|
||||||
Skill::Block |
|
Skill::Block |
|
||||||
Skill::Sustain|
|
Skill::Sustain |
|
||||||
Skill::SustainPlus |
|
Skill::SustainPlus |
|
||||||
Skill::SustainPlusPlus |
|
Skill::SustainPlusPlus |
|
||||||
Skill::Electrify|
|
Skill::Electrify |
|
||||||
Skill::ElectrifyPlus |
|
Skill::ElectrifyPlus |
|
||||||
Skill::ElectrifyPlusPlus |
|
Skill::ElectrifyPlusPlus |
|
||||||
Skill::Haste|
|
Skill::Haste |
|
||||||
Skill::HastePlus |
|
Skill::HastePlus |
|
||||||
Skill::HastePlusPlus |
|
Skill::HastePlusPlus |
|
||||||
Skill::Heal|
|
Skill::Heal |
|
||||||
Skill::HealPlus |
|
Skill::HealPlus |
|
||||||
Skill::HealPlusPlus |
|
Skill::HealPlusPlus |
|
||||||
Skill::Absorb|
|
Skill::Absorb |
|
||||||
Skill::AbsorbPlus |
|
Skill::AbsorbPlus |
|
||||||
Skill::AbsorbPlusPlus |
|
Skill::AbsorbPlusPlus |
|
||||||
Skill::Invert|
|
Skill::Invert |
|
||||||
Skill::InvertPlus |
|
Skill::InvertPlus |
|
||||||
Skill::InvertPlusPlus |
|
Skill::InvertPlusPlus |
|
||||||
Skill::Intercept|
|
Skill::Intercept |
|
||||||
Skill::InterceptPlus |
|
Skill::InterceptPlus |
|
||||||
Skill::InterceptPlusPlus |
|
Skill::InterceptPlusPlus |
|
||||||
Skill::Counter|
|
Skill::Counter |
|
||||||
Skill::CounterPlus |
|
Skill::CounterPlus |
|
||||||
Skill::CounterPlusPlus |
|
Skill::CounterPlusPlus |
|
||||||
Skill::Purify|
|
Skill::Purify |
|
||||||
Skill::PurifyPlus |
|
Skill::PurifyPlus |
|
||||||
Skill::PurifyPlusPlus |
|
Skill::PurifyPlusPlus |
|
||||||
Skill::Recharge|
|
Skill::Recharge |
|
||||||
Skill::RechargePlus |
|
Skill::RechargePlus |
|
||||||
Skill::RechargePlusPlus |
|
Skill::RechargePlusPlus |
|
||||||
Skill::Reflect|
|
Skill::Reflect |
|
||||||
Skill::ReflectPlus |
|
Skill::ReflectPlus |
|
||||||
Skill::ReflectPlusPlus |
|
Skill::ReflectPlusPlus |
|
||||||
Skill::Triage|
|
Skill::Triage |
|
||||||
Skill::TriagePlus |
|
Skill::TriagePlus |
|
||||||
Skill::TriagePlusPlus => true,
|
Skill::TriagePlusPlus => true,
|
||||||
|
|
||||||
Skill::Banish|
|
Skill::Banish |
|
||||||
Skill::BanishPlus |
|
Skill::BanishPlus |
|
||||||
Skill::BanishPlusPlus => rng.gen_bool(0.5),
|
Skill::BanishPlusPlus => rng.gen_bool(0.5),
|
||||||
|
|
||||||
@ -1667,6 +1676,11 @@ fn electrocute_tick(source: &mut Construct, target: &mut Construct, mut results:
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn ruin(source: &mut Construct, target: &mut Construct, mut results: Resolutions, skill: Skill) -> Resolutions {
|
fn ruin(source: &mut Construct, target: &mut Construct, mut results: Resolutions, skill: Skill) -> Resolutions {
|
||||||
|
let amount = source.blue_power().pct(skill.multiplier());
|
||||||
|
target.deal_blue_damage(skill, amount)
|
||||||
|
.into_iter()
|
||||||
|
.for_each(|e| results.push(Resolution::new(source, target).event(e).stages(EventStages::PostOnly)));
|
||||||
|
|
||||||
results.push(Resolution::new(source, target)
|
results.push(Resolution::new(source, target)
|
||||||
.event(target.add_effect(skill, skill.effect()[0]))
|
.event(target.add_effect(skill, skill.effect()[0]))
|
||||||
.stages(EventStages::PostOnly));
|
.stages(EventStages::PostOnly));
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user