*Proper Diseases and Death Strike disease count, thanks lobuz

--HG--
branch : trunk
This commit is contained in:
maximius
2009-11-17 20:13:41 -08:00
parent 308c833a1b
commit 980a943c67
2 changed files with 2 additions and 14 deletions
+1 -13
View File
@@ -2001,19 +2001,7 @@ void Spell::EffectDummy(uint32 i)
// Death strike // Death strike
if (m_spellInfo->SpellFamilyFlags[0] & 0x00000010) if (m_spellInfo->SpellFamilyFlags[0] & 0x00000010)
{ {
uint32 count = 0; uint32 count = unitTarget->GetDiseasesByCaster(m_caster->GetGUID());
Unit::AuraMap const& auras = unitTarget->GetAuras();
for (Unit::AuraMap::const_iterator itr = auras.begin(); itr!=auras.end(); ++itr)
{
if(itr->second->GetSpellProto()->Dispel == DISPEL_DISEASE &&
itr->second->GetCasterGUID() == m_caster->GetGUID())
{
++count;
// max. 15%
if(count == 3)
break;
}
}
int32 bp = count * m_caster->GetMaxHealth() * m_spellInfo->DmgMultiplier[0] / 100; int32 bp = count * m_caster->GetMaxHealth() * m_spellInfo->DmgMultiplier[0] / 100;
// Improved Death Strike // Improved Death Strike
if (AuraEffect const * aurEff = m_caster->GetAuraEffect(SPELL_AURA_ADD_PCT_MODIFIER, SPELLFAMILY_DEATHKNIGHT, 2751, 0)) if (AuraEffect const * aurEff = m_caster->GetAuraEffect(SPELL_AURA_ADD_PCT_MODIFIER, SPELLFAMILY_DEATHKNIGHT, 2751, 0))
+1 -1
View File
@@ -4353,7 +4353,7 @@ uint32 Unit::GetDiseasesByCaster(uint64 casterGUID, bool remove)
static const AuraType diseaseAuraTypes[] = static const AuraType diseaseAuraTypes[] =
{ {
SPELL_AURA_PERIODIC_DAMAGE, // Frost Fever and Blood Plague SPELL_AURA_PERIODIC_DAMAGE, // Frost Fever and Blood Plague
SPELL_AURA_MOD_MECHANIC_DAMAGE_TAKEN_PERCENT, // Crypt Fever and Ebon Plague SPELL_AURA_LINKED, // Crypt Fever and Ebon Plague
SPELL_AURA_NONE SPELL_AURA_NONE
}; };