aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
authorariel- <ariel-@users.noreply.github.com>2018-01-13 20:38:32 -0300
committerariel- <ariel-@users.noreply.github.com>2018-01-13 20:49:43 -0300
commit3b01cccd7eafaff9f3b8236a544e4fa46818926c (patch)
tree3050d54bb7ec0171d2407c180cc713bd5ccfb929 /src/server/game
parent31a3a6f0c5249d7d7547cb7732547dce21c1be0c (diff)
Core/Spell: SpellValueOverrides encapsulation
- No sense to let scripts use SpellValueOverrides, we already have modifiers in CastSpellExtraArgs struct
Diffstat (limited to 'src/server/game')
-rw-r--r--src/server/game/Entities/Pet/Pet.cpp2
-rw-r--r--src/server/game/Entities/Player/Player.cpp4
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp4
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp24
-rw-r--r--src/server/game/Spells/Auras/SpellAuras.cpp18
-rw-r--r--src/server/game/Spells/SpellDefines.h15
-rw-r--r--src/server/game/Spells/SpellEffects.cpp22
7 files changed, 44 insertions, 45 deletions
diff --git a/src/server/game/Entities/Pet/Pet.cpp b/src/server/game/Entities/Pet/Pet.cpp
index 29c275a0922..df32c680c09 100644
--- a/src/server/game/Entities/Pet/Pet.cpp
+++ b/src/server/game/Entities/Pet/Pet.cpp
@@ -1880,7 +1880,7 @@ void Pet::CastPetAura(PetAura const* aura)
args.TriggerFlags = TRIGGERED_FULL_MASK;
if (auraId == 35696) // Demonic Knowledge
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, CalculatePct(aura->GetDamage(), GetStat(STAT_STAMINA) + GetStat(STAT_INTELLECT)));
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, CalculatePct(aura->GetDamage(), GetStat(STAT_STAMINA) + GetStat(STAT_INTELLECT)));
CastSpell(this, auraId, args);
}
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index b98daee4fd3..e70f8d626cc 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -8024,7 +8024,7 @@ void Player::CastItemCombatSpell(DamageInfo const& damageInfo, Item* item, ItemT
for (uint8 i = 0; i < MAX_SPELL_EFFECTS; ++i)
{
if (spellInfo->Effects[i].IsEffect())
- args.SpellValueOverrides.AddMod(static_cast<SpellValueMod>(SPELLVALUE_BASE_POINT0 + i), CalculatePct(spellInfo->Effects[i].CalcValue(this), effectPct));
+ args.AddSpellMod(static_cast<SpellValueMod>(SPELLVALUE_BASE_POINT0 + i), CalculatePct(spellInfo->Effects[i].CalcValue(this), effectPct));
}
}
CastSpell(target, spellInfo->Id, args);
@@ -13685,7 +13685,7 @@ void Player::ApplyEnchantment(Item* item, EnchantmentSlot slot, bool apply, bool
// Cast custom spell vs all equal basepoints got from enchant_amount
if (basepoints)
for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
- args.SpellValueOverrides.AddMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), basepoints);
+ args.AddSpellMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), basepoints);
CastSpell(this, enchant_spell_id, args);
}
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 5020baa928f..620cbc31555 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -13278,7 +13278,7 @@ bool Unit::HandleSpellClick(Unit* clicker, int8 seatId)
{
CastSpellExtraArgs args(flags);
args.OriginalCaster = origCasterGUID;
- args.SpellValueOverrides.AddMod(SpellValueMod(SPELLVALUE_BASE_POINT0+i), seatId+1);
+ args.AddSpellMod(SpellValueMod(SPELLVALUE_BASE_POINT0+i), seatId+1);
caster->CastSpell(target, itr->second.spellId, args);
}
else // This can happen during Player::_LoadAuras
@@ -13312,7 +13312,7 @@ bool Unit::HandleSpellClick(Unit* clicker, int8 seatId)
void Unit::EnterVehicle(Unit* base, int8 seatId)
{
CastSpellExtraArgs args(TRIGGERED_IGNORE_CASTER_MOUNTED_OR_ON_VEHICLE);
- args.SpellValueOverrides.AddBP0(seatId + 1);
+ args.AddSpellBP0(seatId + 1);
CastSpell(base, VEHICLE_SPELL_RIDE_HARDCODED, args);
}
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index f093b2cc508..a7969a265c8 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -1174,7 +1174,7 @@ void AuraEffect::HandleShapeshiftBoosts(Unit* target, bool apply) const
if (aurEff->GetSpellInfo()->SpellIconID == 240 && aurEff->GetMiscValue() == 3)
{
CastSpellExtraArgs args(this);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount() / 2); // For each 2% Intelligence, you get 1% stamina and 1% attack power.
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount() / 2); // For each 2% Intelligence, you get 1% stamina and 1% attack power.
target->CastSpell(target, HotWSpellId, args);
break;
@@ -1206,7 +1206,7 @@ void AuraEffect::HandleShapeshiftBoosts(Unit* target, bool apply) const
if (AuraEffect const* aurEff = target->GetDummyAuraEffect(SPELLFAMILY_GENERIC, 2851, 0))
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount());
target->CastSpell(target, 48420, args);
}
break;
@@ -1216,14 +1216,14 @@ void AuraEffect::HandleShapeshiftBoosts(Unit* target, bool apply) const
if (AuraEffect const* aurEff = target->GetDummyAuraEffect(SPELLFAMILY_GENERIC, 2851, 0))
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount());
target->CastSpell(target, 48418, args);
}
// Survival of the Fittest
if (AuraEffect const* aurEff = target->GetAuraEffect(SPELL_AURA_MOD_TOTAL_STAT_PERCENTAGE, SPELLFAMILY_DRUID, 961, 0))
{
CastSpellExtraArgs args(this);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, aurEff->GetSpellInfo()->Effects[EFFECT_2].CalcValue());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, aurEff->GetSpellInfo()->Effects[EFFECT_2].CalcValue());
target->CastSpell(target, 62069, args);
}
break;
@@ -1232,7 +1232,7 @@ void AuraEffect::HandleShapeshiftBoosts(Unit* target, bool apply) const
if (AuraEffect const* aurEff = target->GetDummyAuraEffect(SPELLFAMILY_GENERIC, 2851, 0))
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount());
target->CastSpell(target, 48421, args);
}
break;
@@ -1241,7 +1241,7 @@ void AuraEffect::HandleShapeshiftBoosts(Unit* target, bool apply) const
if (AuraEffect const* aurEff = target->GetDummyAuraEffect(SPELLFAMILY_GENERIC, 2851, 0))
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, aurEff->GetAmount());
target->CastSpell(target, 48422, args);
}
break;
@@ -1721,7 +1721,7 @@ void AuraEffect::HandleAuraModShapeshift(AuraApplication const* aurApp, uint8 mo
case FORM_CAT:
{
CastSpellExtraArgs args(this);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, std::min(oldPower, FurorChance));
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, std::min(oldPower, FurorChance));
target->SetPower(POWER_ENERGY, 0);
target->CastSpell(target, 17099, args);
break;
@@ -4885,7 +4885,7 @@ void AuraEffect::HandleAuraLinked(AuraApplication const* aurApp, uint8 mode, boo
CastSpellExtraArgs args(this);
if (GetAmount()) // If amount avalible cast with basepoints (Crypt Fever for example)
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, GetAmount());
caster->CastSpell(target, triggeredSpellId, args);
}
@@ -5058,7 +5058,7 @@ void AuraEffect::HandlePeriodicTriggerSpellWithValueAuraTick(Unit* target, Unit*
{
CastSpellExtraArgs args(this);
for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
- args.SpellValueOverrides.AddMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), GetAmount());
+ args.AddSpellMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), GetAmount());
triggerCaster->CastSpell(target, triggerSpellId, args);
TC_LOG_DEBUG("spells", "AuraEffect::HandlePeriodicTriggerSpellWithValueAuraTick: Spell %u Trigger %u", GetId(), triggeredSpellInfo->Id);
}
@@ -5491,7 +5491,7 @@ void AuraEffect::HandlePeriodicManaLeechAuraTick(Unit* target, Unit* caster) con
int32 feedAmount = CalculatePct(gainedAmount, manaFeedVal);
CastSpellExtraArgs args(this);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, feedAmount);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, feedAmount);
caster->CastSpell(caster, 32554, args);
}
}
@@ -5661,7 +5661,7 @@ void AuraEffect::HandleProcTriggerSpellWithValueAuraProc(AuraApplication* aurApp
if (SpellInfo const* triggeredSpellInfo = sSpellMgr->GetSpellInfo(triggerSpellId))
{
CastSpellExtraArgs args(this);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, GetAmount());
triggerCaster->CastSpell(triggerTarget, triggerSpellId, args);
TC_LOG_DEBUG("spells", "AuraEffect::HandleProcTriggerSpellWithValueAuraProc: Triggering spell %u with value %d from aura %u proc", triggeredSpellInfo->Id, GetAmount(), GetId());
}
@@ -5761,7 +5761,7 @@ void AuraEffect::HandleRaidProcFromChargeWithValueAuraProc(AuraApplication* aurA
CastSpellExtraArgs args(this);
args.OriginalCaster = GetCasterGUID();
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, GetAmount());
// next target selection
if (jumps > 0)
diff --git a/src/server/game/Spells/Auras/SpellAuras.cpp b/src/server/game/Spells/Auras/SpellAuras.cpp
index 5d34233fc00..3c5ea6ab08e 100644
--- a/src/server/game/Spells/Auras/SpellAuras.cpp
+++ b/src/server/game/Spells/Auras/SpellAuras.cpp
@@ -1303,7 +1303,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
if (caster->HasAura(64760))
{
CastSpellExtraArgs args(GetEffect(EFFECT_0));
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, GetEffect(EFFECT_0)->GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, GetEffect(EFFECT_0)->GetAmount());
caster->CastSpell(target, 64801, args);
}
}
@@ -1342,7 +1342,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
{
// Refresh or add visual aura
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_AURA_STACK, sSpellMgr->AssertSpellInfo(74396)->StackAmount);
+ args.AddSpellMod(SPELLVALUE_AURA_STACK, sSpellMgr->AssertSpellInfo(74396)->StackAmount);
target->CastSpell(nullptr, 74396, args);
break;
}
@@ -1369,8 +1369,8 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
CastSpellExtraArgs args(devouringPlague), args2(devouringPlague);
int32 basepoints0 = CalculatePct(devouringPlague->GetTotalTicks() * static_cast<int32>(damage), aurEff->GetAmount());
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, basepoints0);
- args2.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, CalculatePct(basepoints0, 15));
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, basepoints0);
+ args2.AddSpellMod(SPELLVALUE_BASE_POINT0, CalculatePct(basepoints0, 15));
caster->CastSpell(target, 63675, args);
caster->CastSpell(nullptr, 75999, args2);
}
@@ -1384,7 +1384,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
// instantly heal m_amount% of the absorb-value
int32 heal = glyph->GetAmount() * GetEffect(0)->GetAmount()/100;
CastSpellExtraArgs args(GetEffect(0));
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, heal);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, heal);
caster->CastSpell(GetUnitOwner(), 56160, args);
}
}
@@ -1526,7 +1526,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
{
int32 basepoints0 = aurEff->GetAmount() * caster->GetCreateMana() / 100;
CastSpellExtraArgs args(GetEffect(0));
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, basepoints0);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, basepoints0);
caster->CastSpell(caster, 64103, args);
}
}
@@ -1560,7 +1560,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
multiplier += 0.5f;
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddBP0(CalculatePct(caster->GetMaxPower(POWER_MANA), multiplier));
+ args.AddSpellBP0(CalculatePct(caster->GetMaxPower(POWER_MANA), multiplier));
caster->CastSpell(caster, 47755, args);
}
// effect on aura target
@@ -1575,7 +1575,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
case POWER_MANA:
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddBP0(CalculatePct(target->GetMaxPower(POWER_MANA), 2));
+ args.AddSpellBP0(CalculatePct(target->GetMaxPower(POWER_MANA), 2));
caster->CastSpell(target, 63654, args);
break;
}
@@ -1669,7 +1669,7 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
target->RemoveAurasDueToSpell(31666);
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddBP0(aurEff->GetAmount());
+ args.AddSpellBP0(aurEff->GetAmount());
target->CastSpell(target, 31665, args);
}
}
diff --git a/src/server/game/Spells/SpellDefines.h b/src/server/game/Spells/SpellDefines.h
index 9adb83d87e3..2a38f1627e7 100644
--- a/src/server/game/Spells/SpellDefines.h
+++ b/src/server/game/Spells/SpellDefines.h
@@ -171,7 +171,7 @@ struct TC_GAME_API CastSpellExtraArgs
CastSpellExtraArgs& SetTriggeringAura(AuraEffect const* triggeringAura) { TriggeringAura = triggeringAura; return *this; }
CastSpellExtraArgs& SetOriginalCaster(ObjectGuid const& guid) { OriginalCaster = guid; return *this; }
CastSpellExtraArgs& AddSpellMod(SpellValueMod mod, int32 val) { SpellValueOverrides.AddMod(mod, val); return *this; }
- CastSpellExtraArgs& AddSpellBP0(int32 val) { SpellValueOverrides.AddBP0(val); return *this; }
+ CastSpellExtraArgs& AddSpellBP0(int32 val) { return AddSpellMod(SPELLVALUE_BASE_POINT0, val); } // because i don't want to type SPELLVALUE_BASE_POINT0 300 times
TriggerCastFlags TriggerFlags = TRIGGERED_NONE;
Item* CastItem = nullptr;
@@ -179,17 +179,16 @@ struct TC_GAME_API CastSpellExtraArgs
ObjectGuid OriginalCaster = ObjectGuid::Empty;
struct
{
- public:
- void AddMod(SpellValueMod mod, int32 val) { data.push_back({ mod, val }); }
- void AddBP0(int32 bp0) { AddMod(SPELLVALUE_BASE_POINT0, bp0); } // because i don't want to type SPELLVALUE_BASE_POINT0 300 times
+ friend struct CastSpellExtraArgs;
+ friend class Unit;
private:
- auto begin() const { return data.cbegin(); }
- auto end() const { return data.cend(); }
+ void AddMod(SpellValueMod mod, int32 val) { data.push_back({ mod, val }); }
- std::vector<std::pair<SpellValueMod, int32>> data;
+ auto begin() const { return data.cbegin(); }
+ auto end() const { return data.cend(); }
- friend class Unit;
+ std::vector<std::pair<SpellValueMod, int32>> data;
} SpellValueOverrides;
};
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 2e43d43bd81..11848bf9a93 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -464,7 +464,7 @@ void Spell::EffectSchoolDMG(SpellEffIndex effIndex)
{
int32 bp0 = aurEff->GetId() == 54037 ? 4 : 8;
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, bp0);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, bp0);
m_caster->CastSpell(m_caster, 54425, args);
}
}
@@ -858,7 +858,7 @@ void Spell::EffectTriggerSpell(SpellEffIndex effIndex)
// set basepoints for trigger with value effect
if (m_spellInfo->Effects[effIndex].Effect == SPELL_EFFECT_TRIGGER_SPELL_WITH_VALUE)
for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
- args.SpellValueOverrides.AddMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), damage);
+ args.AddSpellMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), damage);
// original caster guid only for GO cast
m_caster->CastSpell(targets, spellInfo->Id, args);
@@ -902,7 +902,7 @@ void Spell::EffectTriggerMissileSpell(SpellEffIndex effIndex)
// set basepoints for trigger with value effect
if (m_spellInfo->Effects[effIndex].Effect == SPELL_EFFECT_TRIGGER_MISSILE_SPELL_WITH_VALUE)
for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
- args.SpellValueOverrides.AddMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), damage);
+ args.AddSpellMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), damage);
// original caster guid only for GO cast
m_caster->CastSpell(targets, spellInfo->Id, args);
@@ -939,7 +939,7 @@ void Spell::EffectForceCast(SpellEffIndex effIndex)
case 52349: // Overtake
{
CastSpellExtraArgs args(m_originalCasterGUID);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, damage);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, damage);
unitTarget->CastSpell(unitTarget, spellInfo->Id, args);
return;
}
@@ -956,7 +956,7 @@ void Spell::EffectForceCast(SpellEffIndex effIndex)
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
if (m_spellInfo->Effects[effIndex].Effect == SPELL_EFFECT_FORCE_CAST_WITH_VALUE)
for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
- args.SpellValueOverrides.AddMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), damage);
+ args.AddSpellMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + i), damage);
unitTarget->CastSpell(m_caster, spellInfo->Id, args);
}
@@ -2282,7 +2282,7 @@ void Spell::EffectSummonType(SpellEffIndex effIndex)
// if we have small value, it indicates seat position
if (basePoints > 0 && basePoints < MAX_VEHICLE_SEATS)
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, basePoints);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, basePoints);
m_originalCaster->CastSpell(summon, spellId, args);
@@ -2419,7 +2419,7 @@ void Spell::EffectDispel(SpellEffIndex effIndex)
if (m_spellInfo->SpellFamilyName == SPELLFAMILY_WARLOCK && m_spellInfo->GetCategory() == SPELLCATEGORY_DEVOUR_MAGIC)
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, m_spellInfo->Effects[EFFECT_1].CalcValue());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, m_spellInfo->Effects[EFFECT_1].CalcValue());
m_caster->CastSpell(m_caster, 19658, args);
// Glyph of Felhunter
if (Unit* owner = m_caster->GetOwner())
@@ -3855,7 +3855,7 @@ void Spell::EffectScriptEffect(SpellEffIndex effIndex)
if (totem && totem->IsTotem())
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, damage);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, damage);
m_caster->CastSpell(totem, 55277, args);
}
}
@@ -3863,7 +3863,7 @@ void Spell::EffectScriptEffect(SpellEffIndex effIndex)
if (AuraEffect* aur = unitTarget->GetAuraEffect(63298, 0))
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, damage * aur->GetAmount());
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, damage * aur->GetAmount());
m_caster->CastSpell(unitTarget, 55277, args);
}
break;
@@ -4292,7 +4292,7 @@ void Spell::EffectFeedPet(SpellEffIndex effIndex)
/// @todo fix crash when a spell has two effects, both pointed at the same item target
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, benefit);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, benefit);
m_caster->CastSpell(pet, m_spellInfo->Effects[effIndex].TriggerSpell, args);
}
@@ -4889,7 +4889,7 @@ void Spell::EffectDestroyAllTotems(SpellEffIndex /*effIndex*/)
if (mana)
{
CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
- args.SpellValueOverrides.AddMod(SPELLVALUE_BASE_POINT0, mana);
+ args.AddSpellMod(SPELLVALUE_BASE_POINT0, mana);
m_caster->CastSpell(m_caster, 39104, args);
}
}