L2JMobius
Free Users => Shares/Contributions => Committed User Contributions => Topic started by: LLiuKe on October 01, 2021, 05:48:41 PM
-
diff --git a/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/Fan.java b/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/Fan.java
index 137d9d8..09e8761 100644
--- a/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/Fan.java
+++ b/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/Fan.java
@@ -29,6 +29,7 @@
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.model.skills.targets.AffectScope;
+import org.l2jmobius.gameserver.model.skills.targets.TargetType;
import org.l2jmobius.gameserver.util.Util;
/**
@@ -48,6 +49,7 @@
final double fanHalfAngle = fanAngle / 2; // Half left and half right.
final int affectLimit = skill.getAffectLimit();
// Target checks.
+ final TargetType targetType = skill.getTargetType();
final AtomicInteger affected = new AtomicInteger(0);
final Predicate<Creature> filter = c ->
{
@@ -55,7 +57,7 @@
{
return false;
}
- if (c.isDead())
+ if (c.isDead() && (targetType != TargetType.NPC_BODY) && (targetType != TargetType.PC_BODY))
{
return false;
}
@@ -63,7 +65,7 @@
{
return false;
}
- if ((affectObject != null) && !affectObject.checkAffectedObject(creature, c))
+ if ((c != target) && (affectObject != null) && !affectObject.checkAffectedObject(creature, c))
{
return false;
}
diff --git a/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/Square.java b/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/Square.java
index 5119ede..d3080e5 100644
--- a/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/Square.java
+++ b/L2J_Mobius_8.0_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/Square.java
@@ -29,6 +29,7 @@
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.skills.Skill;
import org.l2jmobius.gameserver.model.skills.targets.AffectScope;
+import org.l2jmobius.gameserver.model.skills.targets.TargetType;
import org.l2jmobius.gameserver.util.Util;
/**
@@ -54,6 +55,7 @@
final double sin = Math.sin(-heading);
// Target checks.
+ final TargetType targetType = skill.getTargetType();
final AtomicInteger affected = new AtomicInteger(0);
final Predicate<Creature> filter = c ->
{
@@ -61,7 +63,7 @@
{
return false;
}
- if (c.isDead())
+ if (c.isDead() && (targetType != TargetType.NPC_BODY) && (targetType != TargetType.PC_BODY))
{
return false;
}
@@ -73,7 +75,7 @@
final int yr = (int) (creature.getY() + (xp * sin) + (yp * cos));
if ((xr > rectX) && (xr < (rectX + squareLength)) && (yr > rectY) && (yr < (rectY + squareWidth)))
{
- if ((affectObject != null) && !affectObject.checkAffectedObject(creature, c))
+ if ((c != target) && (affectObject != null) && !affectObject.checkAffectedObject(creature, c))
{
return false;
}
-
So it should give damage to non-flagged?
-
Yes , when you use forceattack it should .
-
aoes who can be used without target doesn't do damage to non flagged chars. Aoes who need target to use like multiple arrow, do damage to non flagged
-
aoes who can be used without target doesn't do damage to non flagged chars. Aoes who need target to use like multiple arrow, do damage to non flagged
Is just when you use force attack . When you don't use force attack will not do damage to non flagged people .
-
Committed with https://bitbucket.org/MobiusDev/l2j_mobius/commits/b211ff79610d579690e52ff51843bc80032bff0f
Thanks :D