diff options
-rw-r--r-- | src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp | 10 |
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 ab36b0cc9ef..6baf5f58ee8 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp @@ -1090,8 +1090,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(); } @@ -1123,7 +1129,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); } |