diff options
| author | Shauren <none@none> | 2010-12-26 16:35:29 +0100 |
|---|---|---|
| committer | Shauren <none@none> | 2010-12-26 16:35:29 +0100 |
| commit | 79070ca820e1bd0cf311a9c1a10b145740eb9fd8 (patch) | |
| tree | a123808d614947dc09712213661dc0bde1a5590f /src/server/game/Spells/SpellEffects.cpp | |
| parent | 821c0f6c42efd4d194763a8e55f68b89af463a2d (diff) | |
Scripts/Serpentshrine Cavern: Fixed "The Lurker Above" achievement and removed hacks for the event
--HG--
branch : trunk
Diffstat (limited to 'src/server/game/Spells/SpellEffects.cpp')
| -rwxr-xr-x | src/server/game/Spells/SpellEffects.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 60d3fe5704c..a1406a5ab18 100755 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -2631,12 +2631,19 @@ void Spell::EffectEnergizePct(SpellEffIndex effIndex) void Spell::SendLoot(uint64 guid, LootType loottype) { - Player* player = (Player*)m_caster; + Player* player = m_caster->ToPlayer(); if (!player) return; if (gameObjTarget) { + // special case, already has GossipHello inside so return and avoid calling twice + if (gameObjTarget->GetGoType() == GAMEOBJECT_TYPE_GOOBER) + { + gameObjTarget->Use(m_caster); + return; + } + if (sScriptMgr->OnGossipHello(player, gameObjTarget)) return; @@ -2662,10 +2669,6 @@ void Spell::SendLoot(uint64 guid, LootType loottype) gameObjTarget->TriggeringLinkedGameObject(trapEntry,m_caster); return; - case GAMEOBJECT_TYPE_GOOBER: - gameObjTarget->Use(m_caster); - return; - case GAMEOBJECT_TYPE_CHEST: // TODO: possible must be moved to loot release (in different from linked triggering) if (gameObjTarget->GetGOInfo()->chest.eventId) |
