[8292] Fixed healing part of spell 19505 and ranks (in fact from rank 2)

This commit is contained in:
VladimirMangos 2009-08-02 01:37:52 +04:00
parent f10653833f
commit 48567469e1
2 changed files with 11 additions and 22 deletions

View file

@ -1946,7 +1946,7 @@ void Spell::EffectTriggerSpell(uint32 i)
// special cases // special cases
switch(triggered_spell_id) switch(triggered_spell_id)
{ {
// Vanish // Vanish (not exist)
case 18461: case 18461:
{ {
m_caster->RemoveSpellsCausingAura(SPELL_AURA_MOD_ROOT); m_caster->RemoveSpellsCausingAura(SPELL_AURA_MOD_ROOT);
@ -1995,7 +1995,8 @@ void Spell::EffectTriggerSpell(uint32 i)
// Brittle Armor - (need add max stack of 24575 Brittle Armor) // Brittle Armor - (need add max stack of 24575 Brittle Armor)
case 29284: case 29284:
{ {
const SpellEntry *spell = sSpellStore.LookupEntry(24575); // Brittle Armor
SpellEntry const* spell = sSpellStore.LookupEntry(24575);
if (!spell) if (!spell)
return; return;
@ -2006,7 +2007,8 @@ void Spell::EffectTriggerSpell(uint32 i)
// Mercurial Shield - (need add max stack of 26464 Mercurial Shield) // Mercurial Shield - (need add max stack of 26464 Mercurial Shield)
case 29286: case 29286:
{ {
const SpellEntry *spell = sSpellStore.LookupEntry(26464); // Mercurial Shield
SpellEntry const* spell = sSpellStore.LookupEntry(26464);
if (!spell) if (!spell)
return; return;
@ -2021,7 +2023,7 @@ void Spell::EffectTriggerSpell(uint32 i)
return; return;
} }
// Cloak of Shadows // Cloak of Shadows
case 35729 : case 35729:
{ {
Unit::AuraMap& Auras = m_caster->GetAuras(); Unit::AuraMap& Auras = m_caster->GetAuras();
for(Unit::AuraMap::iterator iter = Auras.begin(); iter != Auras.end(); ++iter) for(Unit::AuraMap::iterator iter = Auras.begin(); iter != Auras.end(); ++iter)
@ -2395,7 +2397,7 @@ void Spell::EffectApplyAura(uint32 i)
return; return;
// Prayer of Mending (jump animation), we need formal caster instead original for correct animation // Prayer of Mending (jump animation), we need formal caster instead original for correct animation
if( m_spellInfo->SpellFamilyName == SPELLFAMILY_PRIEST && (m_spellInfo->SpellFamilyFlags & UI64LIT(0x00002000000000))) if( m_spellInfo->SpellFamilyName == SPELLFAMILY_PRIEST && (m_spellInfo->SpellFamilyFlags & UI64LIT(0x0000002000000000)))
m_caster->CastSpell(unitTarget, 41637, true, NULL, Aur, m_originalCasterGUID); m_caster->CastSpell(unitTarget, 41637, true, NULL, Aur, m_originalCasterGUID);
} }
@ -3512,25 +3514,12 @@ void Spell::EffectDispel(uint32 i)
} }
m_caster->SendMessageToSet(&data, true); m_caster->SendMessageToSet(&data, true);
// On succes dispel // On success dispel
// Devour Magic // Devour Magic
if (m_spellInfo->SpellFamilyName == SPELLFAMILY_WARLOCK && m_spellInfo->Category == SPELLCATEGORY_DEVOUR_MAGIC) if (m_spellInfo->SpellFamilyName == SPELLFAMILY_WARLOCK && m_spellInfo->Category == SPELLCATEGORY_DEVOUR_MAGIC)
{ {
uint32 heal_spell = 0; int32 heal_amount = m_spellInfo->CalculateSimpleValue(1);
switch (m_spellInfo->Id) m_caster->CastCustomSpell(m_caster, 19658, &heal_amount, NULL, NULL, true);
{
case 19505: heal_spell = 19658; break;
case 19731: heal_spell = 19732; break;
case 19734: heal_spell = 19733; break;
case 19736: heal_spell = 19735; break;
case 27276: heal_spell = 27278; break;
case 27277: heal_spell = 27279; break;
default:
sLog.outDebug("Spell for Devour Magic %d not handled in Spell::EffectDispel", m_spellInfo->Id);
break;
}
if (heal_spell)
m_caster->CastSpell(m_caster, heal_spell, true);
} }
} }
// Send fail log to client // Send fail log to client

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__ #ifndef __REVISION_NR_H__
#define __REVISION_NR_H__ #define __REVISION_NR_H__
#define REVISION_NR "8291" #define REVISION_NR "8292"
#endif // __REVISION_NR_H__ #endif // __REVISION_NR_H__