aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorariel- <ariel-@users.noreply.github.com>2017-01-28 01:42:39 -0300
committerShauren <shauren.trinity@gmail.com>2019-06-15 18:41:09 +0200
commit3d30140e45979e1f50b989e8511c2b732c9d2a54 (patch)
treea939cc85294959f8afee07c4743abe09cb46733c /src
parent83523177b2bc719ab39514999fef15303639f733 (diff)
Core/Scripts: remove GMs from Sindragosa's Fury's targetlist
By Keader Ref #18452 (cherrypicked from 317efd51ec2289b7e22fdcc5ecfafb7c9b05441b)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
index ddf8d6e6786..5074afa57fe 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
@@ -1094,8 +1094,14 @@ class spell_sindragosa_s_fury : public SpellScriptLoader
}
}
- void CountTargets(std::list<WorldObject*>& targets)
+ void FilterTargets(std::list<WorldObject*>& targets)
{
+ targets.remove_if([](WorldObject* obj) -> bool
+ {
+ // SPELL_ATTR3_ONLY_TARGET_PLAYERS present on the spell, we can safely cast to Player
+ return obj->ToPlayer()->IsGameMaster();
+ });
+
_targetCount = targets.size();
}
@@ -1127,7 +1133,7 @@ class spell_sindragosa_s_fury : public SpellScriptLoader
void Register() override
{
BeforeCast += SpellCastFn(spell_sindragosa_s_fury_SpellScript::SelectDest);
- OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sindragosa_s_fury_SpellScript::CountTargets, EFFECT_1, TARGET_UNIT_DEST_AREA_ENTRY);
+ OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_sindragosa_s_fury_SpellScript::FilterTargets, EFFECT_1, TARGET_UNIT_DEST_AREA_ENTRY);
OnEffectHitTarget += SpellEffectFn(spell_sindragosa_s_fury_SpellScript::HandleDummy, EFFECT_1, SPELL_EFFECT_DUMMY);
}