aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/SpellEffects.cpp
diff options
context:
space:
mode:
authorjackpoz <giacomopoz@gmail.com>2014-05-03 21:22:12 +0200
committerjackpoz <giacomopoz@gmail.com>2014-05-03 21:22:12 +0200
commit720c3cbbd0f0b34284484d743801afe281e7272d (patch)
treed486e01864e228fb62b190c4b3441ed7d0ce6c52 /src/server/game/Spells/SpellEffects.cpp
parentd7b1405725d2f247776f3586df8c3512416f60cd (diff)
Core/Misc: Fix exploit
Fix exploit that allowed to duplicate stackable splitable items. If the item that cast the spell can't be found anymore, the spell is cancelled. Fixes https://github.com/TrinityCore/TrinityCore/issues/11977
Diffstat (limited to 'src/server/game/Spells/SpellEffects.cpp')
-rw-r--r--src/server/game/Spells/SpellEffects.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 775f6540944..31e0006d9f3 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -2096,6 +2096,7 @@ void Spell::EffectSummonChangeItem(SpellEffIndex effIndex)
m_targets.SetItemTarget(NULL);
m_CastItem = NULL;
+ m_castItemGUID = 0;
player->StoreItem(dest, pNewItem, true);
return;
@@ -2114,6 +2115,7 @@ void Spell::EffectSummonChangeItem(SpellEffIndex effIndex)
m_targets.SetItemTarget(NULL);
m_CastItem = NULL;
+ m_castItemGUID = 0;
player->BankItem(dest, pNewItem, true);
return;
@@ -2136,6 +2138,7 @@ void Spell::EffectSummonChangeItem(SpellEffIndex effIndex)
m_targets.SetItemTarget(NULL);
m_CastItem = NULL;
+ m_castItemGUID = 0;
player->EquipItem(dest, pNewItem, true);
player->AutoUnequipOffhandIfNeed();