From 6e1df5b92c1025bcabf4a38b7ebd2420b24dfa31 Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Fri, 23 Nov 2018 22:36:01 +0000 Subject: [PATCH] Check visibility for skill range condition. --- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../model/conditions/ConditionMinDistance.java | 18 ++++++++---------- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- .../OpCheckCastRangeSkillCondition.java | 7 +++++-- 11 files changed, 58 insertions(+), 30 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_5.0_Salvation/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_5.5_EtinasFate/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/conditions/ConditionMinDistance.java b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/conditions/ConditionMinDistance.java index 25880e13fe..c67021380e 100644 --- a/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/conditions/ConditionMinDistance.java +++ b/L2J_Mobius_CT_2.6_HighFive/java/com/l2jmobius/gameserver/model/conditions/ConditionMinDistance.java @@ -16,30 +16,28 @@ */ package com.l2jmobius.gameserver.model.conditions; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.actor.L2Character; import com.l2jmobius.gameserver.model.items.L2Item; import com.l2jmobius.gameserver.model.skills.Skill; /** - * The Class ConditionMinDistance. - * @author Didldak + * @author Mobius */ public class ConditionMinDistance extends Condition { - private final int _sqDistance; + private final int _distance; - /** - * Instantiates a new condition min distance. - * @param sqDistance the sq distance - */ - public ConditionMinDistance(int sqDistance) + public ConditionMinDistance(int distance) { - _sqDistance = sqDistance; + _distance = distance; } @Override 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); } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java index 55b552b6d9..e76d98c3a9 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/dist/game/data/scripts/handlers/skillconditionhandlers/OpCheckCastRangeSkillCondition.java @@ -16,6 +16,7 @@ */ package handlers.skillconditionhandlers; +import com.l2jmobius.gameserver.geoengine.GeoEngine; import com.l2jmobius.gameserver.model.L2Object; import com.l2jmobius.gameserver.model.StatsSet; import com.l2jmobius.gameserver.model.actor.L2Character; @@ -23,7 +24,7 @@ import com.l2jmobius.gameserver.model.skills.ISkillCondition; import com.l2jmobius.gameserver.model.skills.Skill; /** - * @author Sdw + * @author Mobius */ public class OpCheckCastRangeSkillCondition implements ISkillCondition { @@ -37,6 +38,8 @@ public class OpCheckCastRangeSkillCondition implements ISkillCondition @Override public boolean canUse(L2Character caster, Skill skill, L2Object target) { - return (target != null) && (caster.calculateDistance3D(target) /* for some reason this used Sq3D check */ >= _distance); + return (target != null) // + && (caster.calculateDistance3D(target) >= _distance) // + && GeoEngine.getInstance().canSeeTarget(caster, target); } }