mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Core/Spells: Don't select corpses for spell targets that expect to hit units
Closes #24980
(cherry picked from commit 14db2215d3)
This commit is contained in:
@@ -1954,12 +1954,8 @@ uint32 Spell::GetSearcherTypeMask(SpellTargetObjectTypes objType, ConditionConta
|
||||
{
|
||||
case TARGET_OBJECT_TYPE_UNIT:
|
||||
case TARGET_OBJECT_TYPE_UNIT_AND_DEST:
|
||||
if (!m_spellInfo->HasAttribute(SPELL_ATTR2_CAN_TARGET_DEAD))
|
||||
{
|
||||
retMask &= GRID_MAP_TYPE_MASK_PLAYER | GRID_MAP_TYPE_MASK_CREATURE;
|
||||
break;
|
||||
}
|
||||
[[fallthrough]];
|
||||
retMask &= GRID_MAP_TYPE_MASK_PLAYER | GRID_MAP_TYPE_MASK_CREATURE;
|
||||
break;
|
||||
case TARGET_OBJECT_TYPE_CORPSE:
|
||||
case TARGET_OBJECT_TYPE_CORPSE_ENEMY:
|
||||
case TARGET_OBJECT_TYPE_CORPSE_ALLY:
|
||||
|
||||
@@ -3188,11 +3188,6 @@ class spell_the_lich_king_jump_remove_aura : public SpellScriptLoader
|
||||
{
|
||||
PrepareSpellScript(spell_the_lich_king_jump_SpellScript);
|
||||
|
||||
void FilterTargets(std::list<WorldObject*>& targets)
|
||||
{
|
||||
targets.remove_if([](WorldObject const* target) { return target->IsCorpse(); });
|
||||
}
|
||||
|
||||
void HandleScript(SpellEffIndex effIndex)
|
||||
{
|
||||
PreventHitDefaultEffect(effIndex);
|
||||
@@ -3201,7 +3196,6 @@ class spell_the_lich_king_jump_remove_aura : public SpellScriptLoader
|
||||
|
||||
void Register() override
|
||||
{
|
||||
OnObjectAreaTargetSelect += SpellObjectAreaTargetSelectFn(spell_the_lich_king_jump_SpellScript::FilterTargets, EFFECT_0, TARGET_UNIT_SRC_AREA_ENTRY);
|
||||
OnEffectHitTarget += SpellEffectFn(spell_the_lich_king_jump_SpellScript::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user