From 4041121fd83a81ea7413bca0fa917b1c93fc4216 Mon Sep 17 00:00:00 2001 From: Shendor Date: Thu, 1 Oct 2009 17:40:07 +0300 Subject: [PATCH] [8576] Implement spells 51689 and 51680 Signed-off-by: Ambal --- src/game/SpellAuras.cpp | 22 ++++++++++++++++++++-- src/shared/revision_nr.h | 2 +- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index ddc87b01c..278edf214 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -7023,8 +7023,12 @@ void Aura::PeriodicDummyTick() { switch (spell->Id) { + // Killing Spree case 51690: { + if (caster->hasUnitState(UNIT_STAT_STUNNED) || caster->HasAuraType(SPELL_AURA_MOD_FEAR)) + return; + std::list targets; { // eff_radius ==0 @@ -7057,15 +7061,29 @@ void Aura::PeriodicDummyTick() caster->CastSpell(target, 57841, true); return; } + // Master of Subtlety // case 31666: break; - // Killing Spree -// case 51690: break; // Overkill // case 58428: break; // default: // break; } + // Prey on the Weak + if (spell->SpellIconID == 2983) + { + Unit *target=caster->getVictim(); + if (target && (caster->GetHealth() * 100 / caster->GetMaxHealth() > target->GetHealth() * 100 / target->GetMaxHealth())) + { + if(!caster->HasAura(58670)) + { + int32 basepoints = GetBasePoints(); + caster->CastCustomSpell(caster, 58670, &basepoints, 0, 0, true); + } + } + else + caster->RemoveAurasDueToSpell(58670); + } break; } case SPELLFAMILY_HUNTER: diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 74f023189..38002310a 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8575" + #define REVISION_NR "8576" #endif // __REVISION_NR_H__