aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2021-10-03 14:58:35 +0200
committerShauren <shauren.trinity@gmail.com>2021-10-03 14:58:35 +0200
commit3af9be830d736506ed4544a922699ed0f7a7ecd4 (patch)
treec334a35bfa68b5a1fc8a2549d0766e982fb82e5f /src/server/game
parent4449b1396ca3bdea1d856bc991903358e33d2000 (diff)
Core/Spells: Removed CastSpellExtraArgs constructors accepting ObjectGuid, they would become ambiguous with future changes
Diffstat (limited to 'src/server/game')
-rw-r--r--src/server/game/Entities/Player/Player.cpp6
-rw-r--r--src/server/game/Spells/Auras/SpellAuras.cpp3
-rw-r--r--src/server/game/Spells/Spell.cpp6
-rw-r--r--src/server/game/Spells/SpellDefines.h2
-rw-r--r--src/server/game/Spells/SpellEffects.cpp21
5 files changed, 24 insertions, 14 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index ef6f2dc147e..587ce00f1d0 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -14793,7 +14793,8 @@ void Player::OnGossipSelect(WorldObject* source, uint32 optionIndex, uint32 menu
break;
case GOSSIP_OPTION_SPIRITHEALER:
if (isDead())
- source->ToCreature()->CastSpell(source->ToCreature(), 17251, GetGUID());
+ source->ToCreature()->CastSpell(source->ToCreature(), 17251, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(GetGUID()));
break;
case GOSSIP_OPTION_QUESTGIVER:
PrepareQuestMenu(guid);
@@ -25590,7 +25591,8 @@ void Player::ResurrectUsingRequestDataImpl()
SetPower(POWER_LUNAR_POWER, 0);
if (uint32 aura = resurrectAura)
- CastSpell(this, aura, resurrectGUID);
+ CastSpell(this, aura, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(resurrectGUID));
SpawnCorpseBones();
}
diff --git a/src/server/game/Spells/Auras/SpellAuras.cpp b/src/server/game/Spells/Auras/SpellAuras.cpp
index f17f44377e7..31593ced080 100644
--- a/src/server/game/Spells/Auras/SpellAuras.cpp
+++ b/src/server/game/Spells/Auras/SpellAuras.cpp
@@ -1364,7 +1364,8 @@ void Aura::HandleAuraSpecificMods(AuraApplication const* aurApp, Unit* caster, b
if (*itr < 0)
target->RemoveAurasDueToSpell(-(*itr));
else if (removeMode != AURA_REMOVE_BY_DEATH)
- target->CastSpell(target, *itr, GetCasterGUID());
+ target->CastSpell(target, *itr, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(GetCasterGUID()));
}
}
if (std::vector<int32> const* spellTriggered = sSpellMgr->GetSpellLinked(GetId() + SPELL_LINK_AURA))
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index cf324178003..7dde366b5bd 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -2961,7 +2961,8 @@ void Spell::DoTriggersOnSpellHit(Unit* unit, uint32 effMask)
if (*i < 0)
unit->RemoveAurasDueToSpell(-(*i));
else
- unit->CastSpell(unit, *i, m_caster->GetGUID());
+ unit->CastSpell(unit, *i, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(m_caster->GetGUID()));
}
}
}
@@ -5778,7 +5779,8 @@ SpellCastResult Spell::CheckCast(bool strict, uint32* param1 /*= nullptr*/, uint
{
if (strict) //starting cast, trigger pet stun (cast by pet so it doesn't attack player)
if (Pet* pet = unitCaster->ToPlayer()->GetPet())
- pet->CastSpell(pet, 32752, pet->GetGUID());
+ pet->CastSpell(pet, 32752, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(pet->GetGUID()));
}
else if (!m_spellInfo->HasAttribute(SPELL_ATTR1_DISMISS_PET))
return SPELL_FAILED_ALREADY_HAVE_SUMMON;
diff --git a/src/server/game/Spells/SpellDefines.h b/src/server/game/Spells/SpellDefines.h
index 907e867480e..d26f0e5ab7e 100644
--- a/src/server/game/Spells/SpellDefines.h
+++ b/src/server/game/Spells/SpellDefines.h
@@ -258,8 +258,6 @@ struct TC_GAME_API CastSpellExtraArgs
CastSpellExtraArgs(TriggerCastFlags trigger) : TriggerFlags(trigger) {}
CastSpellExtraArgs(Item* item) : TriggerFlags(TRIGGERED_FULL_MASK), CastItem(item) {}
CastSpellExtraArgs(AuraEffect const* eff) : TriggerFlags(TRIGGERED_FULL_MASK), TriggeringAura(eff) {}
- CastSpellExtraArgs(ObjectGuid const& origCaster) : TriggerFlags(TRIGGERED_FULL_MASK), OriginalCaster(origCaster) {}
- CastSpellExtraArgs(AuraEffect const* eff, ObjectGuid const& origCaster) : TriggerFlags(TRIGGERED_FULL_MASK), TriggeringAura(eff), OriginalCaster(origCaster) {}
CastSpellExtraArgs(Difficulty castDifficulty) : CastDifficulty(castDifficulty) {}
CastSpellExtraArgs(SpellValueMod mod, int32 val) { SpellValueOverrides.AddMod(mod, val); }
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index cb330f5ca44..d44352c5cd1 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -686,7 +686,8 @@ void Spell::EffectTriggerSpell()
}
}
- CastSpellExtraArgs args(m_originalCasterGUID);
+ CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
+ args.SetOriginalCaster(m_originalCasterGUID);
// set basepoints for trigger with value effect
if (effectInfo->Effect == SPELL_EFFECT_TRIGGER_SPELL_WITH_VALUE)
for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
@@ -733,7 +734,8 @@ void Spell::EffectTriggerMissileSpell()
targets.SetGOTarget(go);
}
- CastSpellExtraArgs args(m_originalCasterGUID);
+ CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
+ args.SetOriginalCaster(m_originalCasterGUID);
// set basepoints for trigger with value effect
if (effectInfo->Effect == SPELL_EFFECT_TRIGGER_MISSILE_SPELL_WITH_VALUE)
for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
@@ -773,7 +775,8 @@ void Spell::EffectForceCast()
case 52463: // Hide In Mine Car
case 52349: // Overtake
{
- CastSpellExtraArgs args(m_originalCasterGUID);
+ CastSpellExtraArgs args(TRIGGERED_FULL_MASK);
+ args.SetOriginalCaster(m_originalCasterGUID);
args.AddSpellMod(SPELLVALUE_BASE_POINT0, damage);
unitTarget->CastSpell(unitTarget, spellInfo->Id, args);
return;
@@ -784,7 +787,8 @@ void Spell::EffectForceCast()
switch (spellInfo->Id)
{
case 72298: // Malleable Goo Summon
- unitTarget->CastSpell(unitTarget, spellInfo->Id, m_originalCasterGUID);
+ unitTarget->CastSpell(unitTarget, spellInfo->Id, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(m_originalCasterGUID));
return;
}
@@ -3323,7 +3327,8 @@ void Spell::EffectScriptEffect()
// proc a spellcast
if (Aura* chargesAura = m_caster->ToCreature()->GetAura(59907))
{
- m_caster->CastSpell(unitTarget, spell_heal, m_caster->ToCreature()->ToTempSummon()->GetSummonerGUID());
+ m_caster->CastSpell(unitTarget, spell_heal, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(m_caster->ToCreature()->ToTempSummon()->GetSummonerGUID()));
if (chargesAura->ModCharges(-1))
m_caster->ToCreature()->ToTempSummon()->UnSummon();
}
@@ -4130,7 +4135,8 @@ void Spell::EffectCharge()
unitCaster->Attack(unitTarget, true);
if (effectInfo->TriggerSpell)
- m_caster->CastSpell(unitTarget, effectInfo->TriggerSpell, m_originalCasterGUID);
+ m_caster->CastSpell(unitTarget, effectInfo->TriggerSpell, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(m_originalCasterGUID));
}
}
@@ -4158,7 +4164,8 @@ void Spell::EffectChargeDest()
else if (effectHandleMode == SPELL_EFFECT_HANDLE_HIT)
{
if (effectInfo->TriggerSpell)
- m_caster->CastSpell(*destTarget, effectInfo->TriggerSpell, m_originalCasterGUID);
+ m_caster->CastSpell(*destTarget, effectInfo->TriggerSpell, CastSpellExtraArgs(TRIGGERED_FULL_MASK)
+ .SetOriginalCaster(m_originalCasterGUID));
}
}