Fixed checks for Disarm Trap, thanks to Spp.
--HG-- branch : trunk
This commit is contained in:
+2
-1
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user