aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/server/game/Spells/Spell.cpp1
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp13
2 files changed, 7 insertions, 7 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index dffdfad17e5..fd782519410 100755
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -1825,6 +1825,7 @@ void Spell::SearchChainTarget(std::list<Unit*> &TagUnitMap, float max_range, uin
&& !m_caster->isInFrontInMap(*next, max_range))
|| !m_caster->canSeeOrDetect(*next)
|| !cur->IsWithinLOSInMap(*next)
+ || (*next)->GetCreatureType() == CREATURE_TYPE_CRITTER
|| ((GetSpellInfo()->AttributesEx6 & SPELL_ATTR6_CANT_TARGET_CROWD_CONTROLLED) && !(*next)->CanFreeMove()))
{
++next;
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp
index 44d608be46e..1688624be91 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_the_lich_king.cpp
@@ -712,10 +712,6 @@ class boss_the_lich_king : public CreatureScript
summon->SetReactState(REACT_PASSIVE);
summon->CastSpell(summon, SPELL_DEFILE_AURA, false);
break;
- case NPC_VALKYR_SHADOWGUARD:
- summon->CastSpell(summon, SPELL_WINGS_OF_THE_DAMNED, true);
- summon->CastSpell(summon, SPELL_VALKYR_TARGET_SEARCH, true);
- break;
case NPC_FROSTMOURNE_TRIGGER:
{
summons.Summon(summon);
@@ -1479,6 +1475,7 @@ class npc_valkyr_shadowguard : public CreatureScript
{
_events.Reset();
me->SetReactState(REACT_PASSIVE);
+ DoCast(me, SPELL_WINGS_OF_THE_DAMNED, false);
me->SetSpeed(MOVE_FLIGHT, 0.642857f, true);
}
@@ -1558,7 +1555,6 @@ class npc_valkyr_shadowguard : public CreatureScript
void SetGUID(uint64 guid, int32 /* = 0*/)
{
_grabbedPlayer = guid;
- _events.Reset();
}
void UpdateAI(uint32 const diff)
@@ -1576,8 +1572,11 @@ class npc_valkyr_shadowguard : public CreatureScript
switch (eventId)
{
case EVENT_GRAB_PLAYER:
- DoCastAOE(SPELL_VALKYR_TARGET_SEARCH);
- _events.ScheduleEvent(EVENT_GRAB_PLAYER, 2000);
+ if (!_grabbedPlayer)
+ {
+ DoCastAOE(SPELL_VALKYR_TARGET_SEARCH);
+ _events.ScheduleEvent(EVENT_GRAB_PLAYER, 2000);
+ }
break;
case EVENT_MOVE_TO_DROP_POS:
me->GetMotionMaster()->MovePoint(POINT_DROP_PLAYER, _dropPoint);