GeoEngine check for minimum distance condition.

This commit is contained in:
MobiusDev
2019-01-06 00:28:23 +00:00
parent 873b13cc60
commit 5f96def70d
10 changed files with 80 additions and 100 deletions

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }

View File

@@ -16,30 +16,28 @@
*/ */
package com.l2jmobius.gameserver.model.conditions; package com.l2jmobius.gameserver.model.conditions;
import com.l2jmobius.gameserver.geoengine.GeoEngine;
import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.actor.L2Character;
import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.items.L2Item;
import com.l2jmobius.gameserver.model.skills.Skill; import com.l2jmobius.gameserver.model.skills.Skill;
/** /**
* The Class ConditionMinDistance. * @author Mobius
* @author Didldak
*/ */
public class ConditionMinDistance extends Condition public class ConditionMinDistance extends Condition
{ {
private final int _sqDistance; private final int _distance;
/** public ConditionMinDistance(int distance)
* Instantiates a new condition min distance.
* @param sqDistance the sq distance
*/
public ConditionMinDistance(int sqDistance)
{ {
_sqDistance = sqDistance; _distance = distance;
} }
@Override @Override
public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item) public boolean testImpl(L2Character effector, L2Character effected, Skill skill, L2Item item)
{ {
return (effected != null) && (effector.calculateDistanceSq3D(effected) >= _sqDistance); return (effected != null) //
&& (effector.calculateDistance3D(effected) >= _distance) //
&& GeoEngine.getInstance().canSeeTarget(effector, effected);
} }
} }