From 555b2d40ecc22eb0ea4bf913b534ffa7197fa6fe Mon Sep 17 00:00:00 2001 From: Shauren Date: Sun, 3 Oct 2021 16:36:39 +0200 Subject: Core/Spells: Send OriginalCastId in SMSG_SPELL_START and SMSG_SPELL_GO for triggered spells in 'game' project --- src/server/game/Entities/Unit/Unit.cpp | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) (limited to 'src/server/game/Entities/Unit') diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 6fc02b4f74d..e86156cc3bf 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -1885,7 +1885,7 @@ void Unit::HandleEmoteCommand(uint32 anim_id, Trinity::IteratorPairGetSpellInfo(), (*itr)->GetBase()->GetSpellVisual(), damageInfo.GetSchoolMask(), (*itr)->GetBase()->GetCastGUID()); + SpellNonMeleeDamage log(damageInfo.GetAttacker(), caster, (*itr)->GetSpellInfo(), (*itr)->GetBase()->GetSpellVisual(), damageInfo.GetSchoolMask(), (*itr)->GetBase()->GetCastId()); CleanDamage cleanDamage = CleanDamage(splitDamage, 0, BASE_ATTACK, MELEE_HIT_NORMAL); Unit::DealDamage(damageInfo.GetAttacker(), caster, splitDamage, &cleanDamage, DIRECT_DAMAGE, damageInfo.GetSchoolMask(), (*itr)->GetSpellInfo(), false); log.damage = splitDamage; @@ -2025,10 +2025,7 @@ void Unit::AttackerStateUpdate(Unit* victim, WeaponAttackType attType, bool extr } else { - CastSpellExtraArgs args; - args.TriggerFlags = TRIGGERED_FULL_MASK; - args.TriggeringAura = meleeAttackAuraEffect; - CastSpell(victim, meleeAttackSpellId, args); + CastSpell(victim, meleeAttackSpellId, meleeAttackAuraEffect); uint32 hitInfo = HITINFO_AFFECTS_VICTIM | HITINFO_NO_ANIMATION; if (attType == OFF_ATTACK) @@ -3370,7 +3367,7 @@ void Unit::_RemoveNoStackAurasDueToAura(Aura* aura) { Unit* caster = aura->GetCaster(); if (caster && caster->GetTypeId() == TYPEID_PLAYER) - Spell::SendCastResult(caster->ToPlayer(), aura->GetSpellInfo(), aura->GetSpellVisual(), aura->GetCastGUID(), SPELL_FAILED_AURA_BOUNCED); + Spell::SendCastResult(caster->ToPlayer(), aura->GetSpellInfo(), aura->GetSpellVisual(), aura->GetCastId(), SPELL_FAILED_AURA_BOUNCED); } aura->Remove(); @@ -3737,7 +3734,7 @@ void Unit::RemoveAurasDueToSpellBySteal(uint32 spellId, ObjectGuid casterGUID, W if (aura->IsSingleTarget()) aura->UnregisterSingleTarget(); - AuraCreateInfo createInfo(aura->GetCastGUID(), aura->GetSpellInfo(), aura->GetCastDifficulty(), effMask, unitStealer); + AuraCreateInfo createInfo(aura->GetCastId(), aura->GetSpellInfo(), aura->GetCastDifficulty(), effMask, unitStealer); createInfo .SetCasterGUID(aura->GetCasterGUID()) .SetBaseAmount(baseDamage); @@ -9029,10 +9026,7 @@ void Unit::TriggerOnPowerChangeAuras(Powers power, int32 oldVal, int32 newVal) break; } - CastSpellExtraArgs args; - args.TriggerFlags = TRIGGERED_FULL_MASK; - args.TriggeringAura = effect; - CastSpell(this, triggerSpell, args); + CastSpell(this, triggerSpell, effect); } } } -- cgit v1.2.3