From f3548d45d0a74203ef6f5c7282c31ba794ddf7a1 Mon Sep 17 00:00:00 2001 From: ariel- Date: Sat, 27 Jan 2018 03:45:40 -0300 Subject: Core/Spells: rework part 3: spells only handle at most one UnitAura and one DynObjAura during its lifetime Closes #15088 (cherry picked from commit e8d5aa56cc48572d81e1898b7b4ff10cfa6d1957) --- src/server/scripts/Commands/cs_misc.cpp | 5 ++++- src/server/scripts/Spells/spell_dh.cpp | 1 + src/server/scripts/Spells/spell_paladin.cpp | 4 ++-- 3 files changed, 7 insertions(+), 3 deletions(-) (limited to 'src/server/scripts') diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp index 95dcf69e05d..b96b66c0229 100644 --- a/src/server/scripts/Commands/cs_misc.cpp +++ b/src/server/scripts/Commands/cs_misc.cpp @@ -323,7 +323,10 @@ public: if (SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellId, target->GetMap()->GetDifficultyID())) { ObjectGuid castId = ObjectGuid::Create(SPELL_CAST_SOURCE_NORMAL, target->GetMapId(), spellId, target->GetMap()->GenerateLowGuid()); - Aura::TryRefreshStackOrCreate(spellInfo, castId, MAX_EFFECT_MASK, target, target, target->GetMap()->GetDifficultyID()); + AuraCreateInfo createInfo(castId, spellInfo, target->GetMap()->GetDifficultyID(), MAX_EFFECT_MASK, target); + createInfo.SetCaster(target); + + Aura::TryRefreshStackOrCreate(createInfo); } return true; diff --git a/src/server/scripts/Spells/spell_dh.cpp b/src/server/scripts/Spells/spell_dh.cpp index 406456513e8..e76618661fc 100644 --- a/src/server/scripts/Spells/spell_dh.cpp +++ b/src/server/scripts/Spells/spell_dh.cpp @@ -25,6 +25,7 @@ #include "SpellAuraEffects.h" #include "SpellMgr.h" #include "SpellScript.h" +#include "Unit.h" enum DemonHunterSpells { diff --git a/src/server/scripts/Spells/spell_paladin.cpp b/src/server/scripts/Spells/spell_paladin.cpp index 59eea2cc385..b7bf9fbbdbd 100644 --- a/src/server/scripts/Spells/spell_paladin.cpp +++ b/src/server/scripts/Spells/spell_paladin.cpp @@ -813,8 +813,8 @@ class spell_pal_light_s_beacon : public SpellScriptLoader { if ((*itr)->GetId() == SPELL_PALADIN_BEACON_OF_LIGHT) { - std::list applications; - (*itr)->GetApplicationList(applications); + std::vector applications; + (*itr)->GetApplicationVector(applications); if (!applications.empty()) { CastSpellExtraArgs args(aurEff); -- cgit v1.2.3