From 3f32028e8251ef8b2235a3ec63c2d7e95d438649 Mon Sep 17 00:00:00 2001 From: megamage Date: Thu, 30 Jul 2009 10:17:13 +0800 Subject: [8219] Avoid hunter traps proccing when deleted at replace by another trap. Author: nos4r2zod --HG-- branch : trunk --- src/game/SpellEffects.cpp | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 7523664c8b1..89845a51bd0 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -5873,20 +5873,10 @@ void Spell::EffectSummonObject(uint32 i) default: return; } - uint64 guid = m_caster->m_ObjectSlot[slot]; - if(guid != 0) + if(uint64 guid = m_caster->m_ObjectSlot[slot]) { - GameObject* obj = NULL; - if( m_caster ) - obj = m_caster->GetMap()->GetGameObject(guid); - - if(obj) - { - // Recast case - null spell id to make auras not be removed on object remove from world - if (m_spellInfo->Id == obj->GetSpellId()) - obj->SetSpellId(0); - m_caster->RemoveGameObject(obj, true); - } + if(GameObject* obj = m_caster ? m_caster->GetMap()->GetGameObject(guid) : NULL) + obj->SetLootState(GO_JUST_DEACTIVATED); m_caster->m_ObjectSlot[slot] = 0; } -- cgit v1.2.3