aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorariel- <ariel-@users.noreply.github.com>2017-06-08 17:33:10 +0200
committerCarbenium <carbenium@outlook.com>2020-07-16 22:00:28 +0200
commite300d395627ae11041ed38831c50a68a319b5eef (patch)
treed3bcf6425b3b0a6022a2540f013ab7131acf31d7 /src
parent8eaf00a11f5276bf56d023a8bce11fc881466eec (diff)
Core/Scripts: filter out corpses from Sindragosa's Fury targetlist
- This would incur in a crash after attempting to convert the Corpse object into Player Closes #19227 Closes #19862 (cherry picked from commit 753e7074d84b5a2e8d3c3e92d25c54bb25ba477e)
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp13
1 files changed, 3 insertions, 10 deletions
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
index 6f9f082ef8c..d66acf02019 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_sindragosa.cpp
@@ -1069,13 +1069,6 @@ class spell_sindragosa_s_fury : public SpellScriptLoader
{
PrepareSpellScript(spell_sindragosa_s_fury_SpellScript);
- public:
- spell_sindragosa_s_fury_SpellScript()
- {
- _targetCount = 0;
- }
-
- private:
bool Load() override
{
// This script should execute only in Icecrown Citadel
@@ -1098,8 +1091,8 @@ class spell_sindragosa_s_fury : public SpellScriptLoader
{
targets.remove_if([](WorldObject* obj) -> bool
{
- // SPELL_ATTR3_ONLY_TARGET_PLAYERS present on the spell, we can safely cast to Player
- return ASSERT_NOTNULL(obj->ToPlayer())->IsGameMaster();
+ // SPELL_ATTR3_ONLY_TARGET_PLAYERS present on the spell, we can safely cast to Player if not corpse
+ return obj->GetTypeId() == TYPEID_CORPSE || ASSERT_NOTNULL(obj->ToPlayer())->IsGameMaster();
});
_targetCount = targets.size();
@@ -1137,7 +1130,7 @@ class spell_sindragosa_s_fury : public SpellScriptLoader
OnEffectHitTarget += SpellEffectFn(spell_sindragosa_s_fury_SpellScript::HandleDummy, EFFECT_1, SPELL_EFFECT_DUMMY);
}
- uint32 _targetCount;
+ uint32 _targetCount = 0;
};
SpellScript* GetSpellScript() const override