diff options
author | maximius <none@none> | 2009-09-22 18:13:59 -0700 |
---|---|---|
committer | maximius <none@none> | 2009-09-22 18:13:59 -0700 |
commit | cdfb402122ef87427e72f705c0528825c57ea755 (patch) | |
tree | 8ae609cdd63dd3b32524e9a2f7dcf7c52d5e3ad6 /src | |
parent | 3a980db8d1d1a328705d1ffd13d82c98a4715a16 (diff) |
*Hacky fix to Grounding Totem by Themris (better than no fix at all, and very difficult to fix properly)
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Spell.cpp | 6 | ||||
-rw-r--r-- | src/game/Totem.cpp | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index e3aa3e995f1..3e533ebbd25 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -6079,6 +6079,10 @@ bool Spell::CheckTargetCreatureType(Unit* target) const if(m_spellInfo->Id == 2641 || m_spellInfo->Id == 23356) spellCreatureTargetMask = 0; + // Polymorph and Grounding Totem + if (target->GetEntry() == 5925 && m_spellInfo->SpellFamilyName == SPELLFAMILY_MAGE && (m_spellInfo->SpellFamilyFlags[0] & 0x1000000) && m_spellInfo->EffectApplyAuraName[0] == SPELL_AURA_MOD_CONFUSE) + return true; + if (spellCreatureTargetMask) { uint32 TargetCreatureType = target->GetCreatureTypeMask(); @@ -6200,6 +6204,8 @@ bool Spell::CheckTarget(Unit* target, uint32 eff) caster = m_caster->GetMap()->GetGameObject(m_originalCasterGUID); if (!caster) caster = m_caster; + if(target->GetEntry() == 5925) + return true; if(target != m_caster && !target->IsWithinLOSInMap(caster)) return false; break; diff --git a/src/game/Totem.cpp b/src/game/Totem.cpp index 885f1bfaeee..f841ac2fd9c 100644 --- a/src/game/Totem.cpp +++ b/src/game/Totem.cpp @@ -139,6 +139,8 @@ void Totem::UnSummon() bool Totem::IsImmunedToSpellEffect(SpellEntry const* spellInfo, uint32 index) const { // TODO: possibly all negative auras immune? + if(GetEntry() == 5925) + return false; switch(spellInfo->EffectApplyAuraName[index]) { case SPELL_AURA_PERIODIC_DAMAGE: |