*Proper Diseases and Death Strike disease count, thanks lobuz
--HG-- branch : trunk
This commit is contained in:
@@ -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
@@ -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
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user