From 0f26b634e37f2ec3e5c4ce48fc7ae8a4a89c532c Mon Sep 17 00:00:00 2001 From: Jelle Meeus Date: Thu, 5 Jun 2025 22:08:38 +0200 Subject: [PATCH] refactor(Core/Player): revert equip item aura duration core fix with a spell correction (#22167) --- src/server/game/Entities/Player/Player.cpp | 3 +-- src/server/game/Spells/SpellInfoCorrections.cpp | 6 ++++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 0a920e70e..397af904b 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -7176,8 +7176,7 @@ void Player::ApplyEquipSpell(SpellInfo const* spellInfo, Item* item, bool apply, LOG_DEBUG("entities.player", "WORLD: cast {} Equip spellId - {}", (item ? "item" : "itemset"), spellInfo->Id); - //Ignore spellInfo->DurationEntry, cast with -1 duration - CastCustomSpell(spellInfo->Id, SPELLVALUE_AURA_DURATION, -1, this, true, item); + CastSpell(this, spellInfo, true, item); } else { diff --git a/src/server/game/Spells/SpellInfoCorrections.cpp b/src/server/game/Spells/SpellInfoCorrections.cpp index e6009000a..a61c81b02 100644 --- a/src/server/game/Spells/SpellInfoCorrections.cpp +++ b/src/server/game/Spells/SpellInfoCorrections.cpp @@ -5131,6 +5131,12 @@ void SpellMgr::LoadSpellInfoCorrections() spellInfo->ChannelInterruptFlags &= ~AURA_INTERRUPT_FLAG_TURNING; }); + // The Green Tower + ApplySpellFix({ 18097 }, [](SpellInfo* spellInfo) + { + spellInfo->DurationEntry = sSpellDurationStore.LookupEntry(21); // -1 + }); + for (uint32 i = 0; i < GetSpellInfoStoreSize(); ++i) { SpellInfo* spellInfo = mSpellInfoMap[i];