diff --git a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 9f970980fb..b308f872a7 100644 --- a/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_1.0_Ertheia/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -1035,10 +1035,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe // GeoData Los Check here (or dz > 1000) if (!GeoEngine.getInstance().canSeeTarget(this, target)) { - sendPacket(SystemMessageId.CANNOT_SEE_TARGET); - getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); - sendPacket(ActionFailed.STATIC_PACKET); - return; + if (!target.isDoor() || (target.calculateDistance(this, false, false) > 200)) // fix for big door targeting + { + sendPacket(SystemMessageId.CANNOT_SEE_TARGET); + getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); + sendPacket(ActionFailed.STATIC_PACKET); + return; + } } // BOW and CROSSBOW checks diff --git a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 6a2a831efa..a5e0b27ff2 100644 --- a/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_2.5_Underground/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -1039,10 +1039,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe // GeoData Los Check here (or dz > 1000) if (!GeoEngine.getInstance().canSeeTarget(this, target)) { - sendPacket(SystemMessageId.CANNOT_SEE_TARGET); - getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); - sendPacket(ActionFailed.STATIC_PACKET); - return; + if (!target.isDoor() || (target.calculateDistance(this, false, false) > 200)) // fix for big door targeting + { + sendPacket(SystemMessageId.CANNOT_SEE_TARGET); + getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); + sendPacket(ActionFailed.STATIC_PACKET); + return; + } } // BOW and CROSSBOW checks diff --git a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 6a2a831efa..a5e0b27ff2 100644 --- a/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_3.0_Helios/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -1039,10 +1039,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe // GeoData Los Check here (or dz > 1000) if (!GeoEngine.getInstance().canSeeTarget(this, target)) { - sendPacket(SystemMessageId.CANNOT_SEE_TARGET); - getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); - sendPacket(ActionFailed.STATIC_PACKET); - return; + if (!target.isDoor() || (target.calculateDistance(this, false, false) > 200)) // fix for big door targeting + { + sendPacket(SystemMessageId.CANNOT_SEE_TARGET); + getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); + sendPacket(ActionFailed.STATIC_PACKET); + return; + } } // BOW and CROSSBOW checks diff --git a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 6a2a831efa..a5e0b27ff2 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -1039,10 +1039,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe // GeoData Los Check here (or dz > 1000) if (!GeoEngine.getInstance().canSeeTarget(this, target)) { - sendPacket(SystemMessageId.CANNOT_SEE_TARGET); - getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); - sendPacket(ActionFailed.STATIC_PACKET); - return; + if (!target.isDoor() || (target.calculateDistance(this, false, false) > 200)) // fix for big door targeting + { + sendPacket(SystemMessageId.CANNOT_SEE_TARGET); + getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); + sendPacket(ActionFailed.STATIC_PACKET); + return; + } } // BOW and CROSSBOW checks diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java index 6a2a831efa..a5e0b27ff2 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/com/l2jmobius/gameserver/model/actor/L2Character.java @@ -1039,10 +1039,13 @@ public abstract class L2Character extends L2Object implements ISkillsHolder, IDe // GeoData Los Check here (or dz > 1000) if (!GeoEngine.getInstance().canSeeTarget(this, target)) { - sendPacket(SystemMessageId.CANNOT_SEE_TARGET); - getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); - sendPacket(ActionFailed.STATIC_PACKET); - return; + if (!target.isDoor() || (target.calculateDistance(this, false, false) > 200)) // fix for big door targeting + { + sendPacket(SystemMessageId.CANNOT_SEE_TARGET); + getAI().setIntention(CtrlIntention.AI_INTENTION_ACTIVE); + sendPacket(ActionFailed.STATIC_PACKET); + return; + } } // BOW and CROSSBOW checks