Core/Spells: Fix damage from Seed of Corruption explosion
This commit is contained in:
@@ -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
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user