diff options
-rw-r--r-- | src/game/Spell.cpp | 3 | ||||
-rw-r--r-- | src/game/SpellEffects.cpp | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index c54bba6b867..5b60e58b49f 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -5071,7 +5071,8 @@ SpellCastResult Spell::CheckCast(bool strict) (!m_targets.getItemTarget() || !m_targets.getItemTarget()->GetProto()->LockID || m_targets.getItemTarget()->GetOwner() != m_caster)) return SPELL_FAILED_BAD_TARGETS; - if (m_spellInfo->Id != 1842 && m_targets.getGOTarget() && m_targets.getGOTarget()->GetGOInfo()->type != GAMEOBJECT_TYPE_TRAP) // disarm trap should not be affected + if (m_spellInfo->Id != 1842 || m_targets.getGOTarget() && + m_targets.getGOTarget()->GetGOInfo()->type != GAMEOBJECT_TYPE_TRAP) if (m_caster->ToPlayer()->InBattleGround() && // In BattleGround players can use only flags and banners !m_caster->ToPlayer()->CanUseBattleGroundObject()) return SPELL_FAILED_TRY_AGAIN; diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 0c779050db0..81a01592eca 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -3398,7 +3398,7 @@ void Spell::EffectOpenLock(uint32 effIndex) bg->EventPlayerClickedOnFlag(player, gameObjTarget); return; } - }else if (gameObjTarget->GetGOInfo()->type == GAMEOBJECT_TYPE_TRAP && gameObjTarget->GetOwner()) + }else if (m_spellInfo->Id == 1842 && gameObjTarget->GetGOInfo()->type == GAMEOBJECT_TYPE_TRAP && gameObjTarget->GetOwner()) { gameObjTarget->SetLootState(GO_JUST_DEACTIVATED); return; |