From 5967cd7be19abf2317e534daa569b067d0795f07 Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Tue, 4 Sep 2018 03:33:48 +0000 Subject: [PATCH] Fixed PointBlank handler targeting dead characters. --- .../targethandlers/affectscope/PointBlank.java | 12 +++++++++--- .../targethandlers/affectscope/PointBlank.java | 12 +++++++++--- .../targethandlers/affectscope/PointBlank.java | 12 +++++++++--- .../targethandlers/affectscope/PointBlank.java | 12 +++++++++--- .../targethandlers/affectscope/PointBlank.java | 12 +++++++++--- .../targethandlers/affectscope/PointBlank.java | 12 +++++++++--- .../targethandlers/affectscope/PointBlank.java | 12 +++++++++--- 7 files changed, 63 insertions(+), 21 deletions(-) diff --git a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java index 2f7568dd13..b4cef901a2 100644 --- a/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java +++ b/L2J_Mobius_1.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java @@ -54,10 +54,16 @@ public class PointBlank implements IAffectScopeHandler { return false; } - // XXX : Find a proper way to fix, if it's not proper. - if ((affectObject != null) && (!c.isDead() || (skill.getAffectObject() == AffectObject.OBJECT_DEAD_NPC_BODY)) && !affectObject.checkAffectedObject(activeChar, c)) + if (affectObject != null) { - return false; + if (c.isDead() && (skill.getAffectObject() != AffectObject.OBJECT_DEAD_NPC_BODY)) + { + return false; + } + if (!affectObject.checkAffectedObject(activeChar, c)) + { + return false; + } } if (!GeoEngine.getInstance().canSeeTarget(target, c)) { diff --git a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java index 2f7568dd13..b4cef901a2 100644 --- a/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java +++ b/L2J_Mobius_2.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java @@ -54,10 +54,16 @@ public class PointBlank implements IAffectScopeHandler { return false; } - // XXX : Find a proper way to fix, if it's not proper. - if ((affectObject != null) && (!c.isDead() || (skill.getAffectObject() == AffectObject.OBJECT_DEAD_NPC_BODY)) && !affectObject.checkAffectedObject(activeChar, c)) + if (affectObject != null) { - return false; + if (c.isDead() && (skill.getAffectObject() != AffectObject.OBJECT_DEAD_NPC_BODY)) + { + return false; + } + if (!affectObject.checkAffectedObject(activeChar, c)) + { + return false; + } } if (!GeoEngine.getInstance().canSeeTarget(target, c)) { diff --git a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java index 2f7568dd13..b4cef901a2 100644 --- a/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java +++ b/L2J_Mobius_3.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java @@ -54,10 +54,16 @@ public class PointBlank implements IAffectScopeHandler { return false; } - // XXX : Find a proper way to fix, if it's not proper. - if ((affectObject != null) && (!c.isDead() || (skill.getAffectObject() == AffectObject.OBJECT_DEAD_NPC_BODY)) && !affectObject.checkAffectedObject(activeChar, c)) + if (affectObject != null) { - return false; + if (c.isDead() && (skill.getAffectObject() != AffectObject.OBJECT_DEAD_NPC_BODY)) + { + return false; + } + if (!affectObject.checkAffectedObject(activeChar, c)) + { + return false; + } } if (!GeoEngine.getInstance().canSeeTarget(target, c)) { diff --git a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java index 2f7568dd13..b4cef901a2 100644 --- a/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java +++ b/L2J_Mobius_4.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java @@ -54,10 +54,16 @@ public class PointBlank implements IAffectScopeHandler { return false; } - // XXX : Find a proper way to fix, if it's not proper. - if ((affectObject != null) && (!c.isDead() || (skill.getAffectObject() == AffectObject.OBJECT_DEAD_NPC_BODY)) && !affectObject.checkAffectedObject(activeChar, c)) + if (affectObject != null) { - return false; + if (c.isDead() && (skill.getAffectObject() != AffectObject.OBJECT_DEAD_NPC_BODY)) + { + return false; + } + if (!affectObject.checkAffectedObject(activeChar, c)) + { + return false; + } } if (!GeoEngine.getInstance().canSeeTarget(target, c)) { diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java index 2f7568dd13..b4cef901a2 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java @@ -54,10 +54,16 @@ public class PointBlank implements IAffectScopeHandler { return false; } - // XXX : Find a proper way to fix, if it's not proper. - if ((affectObject != null) && (!c.isDead() || (skill.getAffectObject() == AffectObject.OBJECT_DEAD_NPC_BODY)) && !affectObject.checkAffectedObject(activeChar, c)) + if (affectObject != null) { - return false; + if (c.isDead() && (skill.getAffectObject() != AffectObject.OBJECT_DEAD_NPC_BODY)) + { + return false; + } + if (!affectObject.checkAffectedObject(activeChar, c)) + { + return false; + } } if (!GeoEngine.getInstance().canSeeTarget(target, c)) { diff --git a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java index 2f7568dd13..b4cef901a2 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java +++ b/L2J_Mobius_Classic_2.1_Zaken/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java @@ -54,10 +54,16 @@ public class PointBlank implements IAffectScopeHandler { return false; } - // XXX : Find a proper way to fix, if it's not proper. - if ((affectObject != null) && (!c.isDead() || (skill.getAffectObject() == AffectObject.OBJECT_DEAD_NPC_BODY)) && !affectObject.checkAffectedObject(activeChar, c)) + if (affectObject != null) { - return false; + if (c.isDead() && (skill.getAffectObject() != AffectObject.OBJECT_DEAD_NPC_BODY)) + { + return false; + } + if (!affectObject.checkAffectedObject(activeChar, c)) + { + return false; + } } if (!GeoEngine.getInstance().canSeeTarget(target, c)) { diff --git a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java index 2f7568dd13..b4cef901a2 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java +++ b/L2J_Mobius_Classic_2.2_Antharas/dist/game/data/scripts/handlers/targethandlers/affectscope/PointBlank.java @@ -54,10 +54,16 @@ public class PointBlank implements IAffectScopeHandler { return false; } - // XXX : Find a proper way to fix, if it's not proper. - if ((affectObject != null) && (!c.isDead() || (skill.getAffectObject() == AffectObject.OBJECT_DEAD_NPC_BODY)) && !affectObject.checkAffectedObject(activeChar, c)) + if (affectObject != null) { - return false; + if (c.isDead() && (skill.getAffectObject() != AffectObject.OBJECT_DEAD_NPC_BODY)) + { + return false; + } + if (!affectObject.checkAffectedObject(activeChar, c)) + { + return false; + } } if (!GeoEngine.getInstance().canSeeTarget(target, c)) {