Fixed probable EnemySummon targethandler NPE.

Contributed by Sahar.
This commit is contained in:
MobiusDevelopment
2021-07-23 23:10:58 +00:00
parent f08143fc8d
commit 27dc3eb506
2 changed files with 2 additions and 2 deletions

View File

@@ -32,7 +32,7 @@ public class EnemySummon implements ITargetTypeHandler
@Override @Override
public WorldObject[] getTargetList(Skill skill, Creature creature, boolean onlyFirst, Creature target) public WorldObject[] getTargetList(Skill skill, Creature creature, boolean onlyFirst, Creature target)
{ {
if (target.isSummon()) if ((target != null) && target.isSummon())
{ {
final Summon targetSummon = (Summon) target; final Summon targetSummon = (Summon) target;
if ((creature.isPlayer() && (creature.getSummon() != targetSummon) && !targetSummon.isDead() && ((targetSummon.getOwner().getPvpFlag() != 0) || (targetSummon.getOwner().getKarma() > 0))) || (targetSummon.getOwner().isInsideZone(ZoneId.PVP) && creature.getActingPlayer().isInsideZone(ZoneId.PVP)) || (targetSummon.getOwner().isInDuel() && creature.getActingPlayer().isInDuel() && (targetSummon.getOwner().getDuelId() == creature.getActingPlayer().getDuelId()))) if ((creature.isPlayer() && (creature.getSummon() != targetSummon) && !targetSummon.isDead() && ((targetSummon.getOwner().getPvpFlag() != 0) || (targetSummon.getOwner().getKarma() > 0))) || (targetSummon.getOwner().isInsideZone(ZoneId.PVP) && creature.getActingPlayer().isInsideZone(ZoneId.PVP)) || (targetSummon.getOwner().isInDuel() && creature.getActingPlayer().isInDuel() && (targetSummon.getOwner().getDuelId() == creature.getActingPlayer().getDuelId())))

View File

@@ -32,7 +32,7 @@ public class EnemySummon implements ITargetTypeHandler
@Override @Override
public WorldObject[] getTargetList(Skill skill, Creature creature, boolean onlyFirst, Creature target) public WorldObject[] getTargetList(Skill skill, Creature creature, boolean onlyFirst, Creature target)
{ {
if (target.isSummon()) if ((target != null) && target.isSummon())
{ {
final Summon targetSummon = (Summon) target; final Summon targetSummon = (Summon) target;
if ((creature.isPlayer() && (creature.getSummon() != targetSummon) && !targetSummon.isDead() && ((targetSummon.getOwner().getPvpFlag() != 0) || (targetSummon.getOwner().getKarma() > 0))) || (targetSummon.getOwner().isInsideZone(ZoneId.PVP) && creature.getActingPlayer().isInsideZone(ZoneId.PVP)) || (targetSummon.getOwner().isInDuel() && creature.getActingPlayer().isInDuel() && (targetSummon.getOwner().getDuelId() == creature.getActingPlayer().getDuelId()))) if ((creature.isPlayer() && (creature.getSummon() != targetSummon) && !targetSummon.isDead() && ((targetSummon.getOwner().getPvpFlag() != 0) || (targetSummon.getOwner().getKarma() > 0))) || (targetSummon.getOwner().isInsideZone(ZoneId.PVP) && creature.getActingPlayer().isInsideZone(ZoneId.PVP)) || (targetSummon.getOwner().isInDuel() && creature.getActingPlayer().isInDuel() && (targetSummon.getOwner().getDuelId() == creature.getActingPlayer().getDuelId())))