diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/game/Spell.cpp | 3 | ||||
-rw-r--r-- | src/game/SpellAuras.cpp | 6 | ||||
-rw-r--r-- | src/game/SpellEffects.cpp | 8 |
3 files changed, 13 insertions, 4 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index ede108fe34d..6d635687013 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -2342,7 +2342,8 @@ void Spell::SetTargetMap(uint32 i, uint32 cur) else if (i_spellST->second.type == SPELL_TARGET_TYPE_CONTROLLED) { for(Unit::ControlList::iterator itr = m_caster->m_Controlled.begin(); itr != m_caster->m_Controlled.end(); ++itr) - if ((*itr)->GetEntry() == i_spellST->second.targetEntry && (*itr)->IsWithinDistInMap(m_caster, radius)) + if ((*itr)->GetEntry() == i_spellST->second.targetEntry && + /*(*itr)->IsWithinDistInMap(m_caster, radius)*/ (*itr)->IsInMap(m_caster)) // For 60243 and 52173 need skip radius check or use range (no radius entry for effect) unitList.push_back(*itr); } } diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 546d6492300..ef260369b18 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -2783,7 +2783,11 @@ void AuraEffect::HandleAuraDummy(bool apply, bool Real, bool changeAmount) return; case 46308: // Burning Winds casted only at creatures at spawn m_target->CastSpell(m_target,47287,true,NULL,this); - return; + return; + case 52173: // Coyote Spirit Despawn Aura + case 60244: // Blood Parrot Despawn Aura + m_target->CastSpell((Unit*)NULL, GetAmount(), true, NULL, this); + return; } break; case SPELLFAMILY_WARLOCK: diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index e35b7ea0ff3..9b414ed9f66 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -4646,7 +4646,6 @@ void Spell::EffectScriptEffect(uint32 effIndex) { if(!unitTarget || unitTarget->GetTypeId() != TYPEID_UNIT) return; - ((Creature*)unitTarget)->ForcedDespawn(); return; } @@ -5010,6 +5009,11 @@ void Spell::EffectScriptEffect(uint32 effIndex) } break; } + case 52173: // Coyote Spirit Despawn + case 60243: // Blood Parrot Despawn + if (unitTarget->GetTypeId() == TYPEID_UNIT && ((Creature*)unitTarget)->isSummon()) + ((TempSummon*)unitTarget)->UnSummon(); + return; // Sky Darkener Assault case 52124: if(unitTarget) @@ -5085,7 +5089,7 @@ void Spell::EffectScriptEffect(uint32 effIndex) } } return; - case 58983: + case 58983: // Big Blizzard Bear { if(!unitTarget || unitTarget->GetTypeId() != TYPEID_PLAYER) return; |