aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Miscellaneous/SharedDefines.h2
-rw-r--r--src/server/game/Spells/Auras/SpellAuras.cpp10
-rw-r--r--src/server/game/Spells/SpellEffects.cpp2
-rw-r--r--src/server/game/Spells/SpellInfo.cpp5
-rw-r--r--src/server/game/Spells/SpellMgr.cpp2
5 files changed, 15 insertions, 6 deletions
diff --git a/src/server/game/Miscellaneous/SharedDefines.h b/src/server/game/Miscellaneous/SharedDefines.h
index 9e534a66cf3..221dacca513 100644
--- a/src/server/game/Miscellaneous/SharedDefines.h
+++ b/src/server/game/Miscellaneous/SharedDefines.h
@@ -1251,7 +1251,7 @@ enum SpellEffectName
SPELL_EFFECT_199 = 199,
SPELL_EFFECT_HEAL_BATTLEPET_PCT = 200, // NYI
SPELL_EFFECT_ENABLE_BATTLE_PETS = 201, // NYI
- SPELL_EFFECT_202 = 202, // some sort of apply aura effect
+ SPELL_EFFECT_APPLY_AREA_AURA_SUMMONS = 202,
SPELL_EFFECT_203 = 203,
SPELL_EFFECT_CHANGE_BATTLEPET_QUALITY = 204,
SPELL_EFFECT_LAUNCH_QUEST_CHOICE = 205,
diff --git a/src/server/game/Spells/Auras/SpellAuras.cpp b/src/server/game/Spells/Auras/SpellAuras.cpp
index bc73d8b22f2..517dbd4f8f7 100644
--- a/src/server/game/Spells/Auras/SpellAuras.cpp
+++ b/src/server/game/Spells/Auras/SpellAuras.cpp
@@ -2328,7 +2328,7 @@ void UnitAura::FillTargetMap(std::unordered_map<Unit*, uint32>& targets, Unit* c
std::deque<Unit*> units;
// non-area aura
- if (effect->Effect == SPELL_EFFECT_APPLY_AURA || effect->Effect == SPELL_EFFECT_202)
+ if (effect->Effect == SPELL_EFFECT_APPLY_AURA)
{
units.push_back(GetUnitOwner());
}
@@ -2381,6 +2381,14 @@ void UnitAura::FillTargetMap(std::unordered_map<Unit*, uint32>& targets, Unit* c
units.push_back(pet);
break;
}
+ case SPELL_EFFECT_APPLY_AREA_AURA_SUMMONS:
+ {
+ units.push_back(GetUnitOwner());
+ Trinity::WorldObjectSpellAreaTargetCheck check(radius, GetUnitOwner(), caster, GetUnitOwner(), m_spellInfo, TARGET_CHECK_SUMMONED, nullptr, TARGET_OBJECT_TYPE_UNIT);
+ Trinity::UnitListSearcher<Trinity::WorldObjectSpellAreaTargetCheck> searcher(GetUnitOwner(), units, check);
+ Cell::VisitAllObjects(GetUnitOwner(), searcher, radius);
+ break;
+ }
}
}
}
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 1d1ef6a8c4f..06e91cb1d7a 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -280,7 +280,7 @@ NonDefaultConstructible<pEffect> SpellEffects[TOTAL_SPELL_EFFECTS] =
&Spell::EffectNULL, //199 SPELL_EFFECT_199
&Spell::EffectHealBattlePetPct, //200 SPELL_EFFECT_HEAL_BATTLEPET_PCT
&Spell::EffectEnableBattlePets, //201 SPELL_EFFECT_ENABLE_BATTLE_PETS
- &Spell::EffectApplyAura, //202 SPELL_EFFECT_202
+ &Spell::EffectApplyAreaAura, //202 SPELL_EFFECT_APPLY_AREA_AURA_SUMMONS
&Spell::EffectNULL, //203 SPELL_EFFECT_203
&Spell::EffectNULL, //204 SPELL_EFFECT_CHANGE_BATTLEPET_QUALITY
&Spell::EffectLaunchQuestChoice, //205 SPELL_EFFECT_LAUNCH_QUEST_CHOICE
diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp
index fbe4388e62c..75dd8da4ae0 100644
--- a/src/server/game/Spells/SpellInfo.cpp
+++ b/src/server/game/Spells/SpellInfo.cpp
@@ -441,6 +441,7 @@ bool SpellEffectInfo::IsAreaAuraEffect() const
Effect == SPELL_EFFECT_APPLY_AREA_AURA_ENEMY ||
Effect == SPELL_EFFECT_APPLY_AREA_AURA_PET ||
Effect == SPELL_EFFECT_APPLY_AREA_AURA_OWNER ||
+ Effect == SPELL_EFFECT_APPLY_AREA_AURA_SUMMONS ||
Effect == SPELL_EFFECT_APPLY_AREA_AURA_PARTY_NONRANDOM)
return true;
return false;
@@ -460,7 +461,7 @@ bool SpellEffectInfo::IsFarDestTargetEffect() const
bool SpellEffectInfo::IsUnitOwnedAuraEffect() const
{
- return IsAreaAuraEffect() || Effect == SPELL_EFFECT_APPLY_AURA || Effect == SPELL_EFFECT_APPLY_AURA_ON_PET || Effect == SPELL_EFFECT_202;
+ return IsAreaAuraEffect() || Effect == SPELL_EFFECT_APPLY_AURA || Effect == SPELL_EFFECT_APPLY_AURA_ON_PET;
}
int32 SpellEffectInfo::CalcValue(Unit const* caster /*= nullptr*/, int32 const* bp /*= nullptr*/, Unit const* target /*= nullptr*/, float* variance /*= nullptr*/, uint32 castItemId /*= 0*/, int32 itemLevel /*= -1*/) const
@@ -730,7 +731,7 @@ ExpectedStatType SpellEffectInfo::GetScalingExpectedStat() const
case SPELL_EFFECT_APPLY_AREA_AURA_ENEMY:
case SPELL_EFFECT_APPLY_AREA_AURA_OWNER:
case SPELL_EFFECT_APPLY_AURA_ON_PET:
- case SPELL_EFFECT_202:
+ case SPELL_EFFECT_APPLY_AREA_AURA_SUMMONS:
case SPELL_EFFECT_APPLY_AREA_AURA_PARTY_NONRANDOM:
switch (ApplyAuraName)
{
diff --git a/src/server/game/Spells/SpellMgr.cpp b/src/server/game/Spells/SpellMgr.cpp
index 80860ac8b66..60dcee3608f 100644
--- a/src/server/game/Spells/SpellMgr.cpp
+++ b/src/server/game/Spells/SpellMgr.cpp
@@ -2774,7 +2774,7 @@ void SpellMgr::LoadSpellInfoCustomAttributes()
case SPELL_EFFECT_APPLY_AREA_AURA_PET:
case SPELL_EFFECT_APPLY_AREA_AURA_OWNER:
case SPELL_EFFECT_APPLY_AURA_ON_PET:
- case SPELL_EFFECT_202:
+ case SPELL_EFFECT_APPLY_AREA_AURA_SUMMONS:
case SPELL_EFFECT_APPLY_AREA_AURA_PARTY_NONRANDOM:
if (effect->ApplyAuraName == SPELL_AURA_PERIODIC_DAMAGE ||
effect->ApplyAuraName == SPELL_AURA_PERIODIC_DAMAGE_PERCENT ||