From 2a84a9e0908dc8c8ab6d2bf8c7f23338e1608303 Mon Sep 17 00:00:00 2001 From: ModoX Date: Sat, 20 Apr 2024 19:59:35 +0200 Subject: Core/Spells: Fixed SpellInfo::GetSpellXSpellVisualId for nonplayer casters (#29927) (cherry picked from commit 8d8a54db2568ef88b21530e1f7e1532f1bee08cd) --- src/server/game/Spells/SpellInfo.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index ea1de045c39..3180e92fdcd 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -4324,8 +4324,9 @@ uint32 SpellInfo::GetSpellXSpellVisualId(WorldObject const* caster /*= nullptr*/ { for (SpellXSpellVisualEntry const* visual : _visuals) { - if (!caster || !caster->IsPlayer() || !ConditionMgr::IsPlayerMeetingCondition(caster->ToPlayer(), visual->CasterPlayerConditionID)) - continue; + if (visual->CasterPlayerConditionID) + if (!caster || !caster->IsPlayer() || !ConditionMgr::IsPlayerMeetingCondition(caster->ToPlayer(), visual->CasterPlayerConditionID)) + continue; if (UnitConditionEntry const* unitCondition = sUnitConditionStore.LookupEntry(visual->CasterUnitConditionID)) if (!caster || !caster->IsUnit() || !ConditionMgr::IsUnitMeetingCondition(caster->ToUnit(), Object::ToUnit(viewer), unitCondition)) -- cgit v1.2.3