aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/game/Spell.cpp6
-rw-r--r--src/game/Totem.cpp2
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: