aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsilinoron <none@none>2010-08-06 21:32:42 -0700
committersilinoron <none@none>2010-08-06 21:32:42 -0700
commit443226c562a7fa863504b6ecd86d31085f351a65 (patch)
treeb98b87200c7f050fa0683a232d94c8b06ae0efd2 /src
parent38402fa55b918300e0eba1354704d6df46a33a30 (diff)
Unholy Blight should prevent the dispelling of diseases.
Fixes issue #2609 Fixes issue #2982 --HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/SpellEffects.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 086a9329444..17a394bbee0 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -3573,6 +3573,11 @@ void Spell::EffectDispel(uint32 i)
// Create dispel mask by dispel type
uint32 dispel_type = m_spellInfo->EffectMiscValue[i];
uint32 dispelMask = GetDispellMask(DispelType(dispel_type));
+
+ // we should not be able to dispel diseases if the target is affected by unholy blight
+ if (dispelMask & (1 << DISPEL_DISEASE) && unitTarget->HasAura(50536))
+ dispelMask &= ~(1 << DISPEL_DISEASE);
+
Unit::AuraMap const& auras = unitTarget->GetOwnedAuras();
for (Unit::AuraMap::const_iterator itr = auras.begin(); itr != auras.end(); ++itr)
{