diff options
author | tobmaps <spambot42@yandex.ru> | 2011-05-12 03:29:16 +0700 |
---|---|---|
committer | tobmaps <spambot42@yandex.ru> | 2011-05-12 03:29:16 +0700 |
commit | edc182920ef58c089a147d062f5d3ed91b5267eb (patch) | |
tree | 2e9062b66a48b3d9a8705c7808ab6ca1c49beb6c /src | |
parent | cdd41601579e6e76dc2d82ceeb9de24af31aa79e (diff) |
Core/Spells: Fix damage from Seed of Corruption explosion
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Unit/Unit.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index b87d665fb99..9c0303f93b2 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -5855,7 +5855,7 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger // Seed of Corruption if (dummySpell->SpellFamilyFlags[1] & 0x00000010) { - if (procSpell && procSpell->Id == 27285) + if (procSpell && procSpell->SpellFamilyFlags[1] & 0x8000) return false; // if damage is more than need or target die from damage deal finish spell if (triggeredByAura->GetAmount() <= int32(damage) || GetHealth() <= damage) @@ -5866,9 +5866,11 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, AuraEffect* trigger // Remove aura (before cast for prevent infinite loop handlers) RemoveAurasDueToSpell(triggeredByAura->GetId()); + uint32 spell = sSpellMgr->GetSpellWithRank(27285, sSpellMgr->GetSpellRank(dummySpell->Id)); + // Cast finish spell (triggeredByAura already not exist!) if (Unit* caster = GetUnit(*this, casterGuid)) - caster->CastSpell(this, 27285, true, castItem); + caster->CastSpell(this, spell, true, castItem); return true; // no hidden cooldown } |