From e0c992a8ba499d3ae7302d134017593f4ee6dae5 Mon Sep 17 00:00:00 2001 From: Shauren Date: Fri, 3 Dec 2010 17:47:33 +0100 Subject: Scripts/Icecrown Citadel: Added script for Blood Queen Lana'Thel Scripts/Icecrown Citadel: Fixed Invocation of Blood announcement emote for Blood Prince Council Scripts/Icecrown Citadel: Fixed intro for Lady Deathwhisper Scripts/Icecrown Citadel: Fixed Bone Spike for Lord Marrowgar --HG-- branch : trunk --- src/server/game/Spells/Spell.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'src/server/game/Spells/Spell.cpp') diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index a8d1a44528a..9bff6b85ab1 100755 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -2800,6 +2800,32 @@ void Spell::SelectEffectTargets(uint32 i, uint32 cur) ++itr; } break; + case 71390: // Pact of the Darkfallen + { + for (std::list::iterator itr = unitList.begin(); itr != unitList.end();) + { + if (!(*itr)->HasAura(71340)) + itr = unitList.erase(itr); + else + ++itr; + } + bool remove = true; + // we can do this, unitList is MAX 4 in size + for (std::list::const_iterator itr = unitList.begin(); itr != unitList.end() && remove; ++itr) + { + if (!m_caster->IsWithinDist(*itr, 5.0f, false)) + remove = false; + + for (std::list::const_iterator itr2 = unitList.begin(); itr2 != unitList.end() && remove; ++itr2) + if (itr != itr2 && !(*itr2)->IsWithinDist(*itr, 5.0f, false)) + remove = false; + } + + if (remove) + for (std::list::iterator itr = unitList.begin(); itr != unitList.end(); ++itr) + (*itr)->RemoveAura(71340); + break; + } } // Death Pact if (m_spellInfo->SpellFamilyName == SPELLFAMILY_DEATHKNIGHT && m_spellInfo->SpellFamilyFlags[0] & 0x00080000) -- cgit v1.2.3