diff options
| author | Shauren <shauren.trinity@gmail.com> | 2022-02-08 21:36:31 +0100 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2022-02-08 21:36:31 +0100 |
| commit | 8e2d1e328ebec60c76d65651b268ec3ad2ce26fc (patch) | |
| tree | cebc7c310a12d3983151000e766e96a510a8a2d4 /src/server/game/Entities | |
| parent | d3fc34a203d97ca0aa076bc939286d601629fe70 (diff) | |
Core/Spells: Pass cast item level to triggered spells
* Fixes value on trinkets like Ignition Mage's Fuse
Diffstat (limited to 'src/server/game/Entities')
| -rw-r--r-- | src/server/game/Entities/Object/Object.cpp | 3 | ||||
| -rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/server/game/Entities/Object/Object.cpp b/src/server/game/Entities/Object/Object.cpp index 5b167621aec..5eadfac5f24 100644 --- a/src/server/game/Entities/Object/Object.cpp +++ b/src/server/game/Entities/Object/Object.cpp @@ -2734,6 +2734,9 @@ SpellCastResult WorldObject::CastSpell(CastSpellTargetArg const& targets, uint32 spell->SetSpellValue(pair.first, pair.second); spell->m_CastItem = args.CastItem; + if (args.OriginalCastItemLevel) + spell->m_castItemLevel = *args.OriginalCastItemLevel; + return spell->prepare(*targets.Targets, args.TriggeringAura); } diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 0116dea0f61..bc725a0a529 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -8119,8 +8119,8 @@ void Player::ApplyArtifactPowerRank(Item* artifact, ArtifactPowerRankEntry const else if (apply) { CastSpellExtraArgs args; - args.TriggerFlags = TRIGGERED_FULL_MASK; - args.CastItem = artifact; + args.SetTriggerFlags(TRIGGERED_FULL_MASK); + args.SetCastItem(artifact); if (artifactPowerRank->AuraPointsOverride) for (SpellEffectInfo const& spellEffectInfo : spellInfo->GetEffects()) args.AddSpellMod(SpellValueMod(SPELLVALUE_BASE_POINT0 + spellEffectInfo.EffectIndex), artifactPowerRank->AuraPointsOverride); |
