From 8c7dcf275e9e68c18d691f58689c19daa5819a11 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Tue, 25 Mar 2014 23:55:08 +0100 Subject: [PATCH] * Player Hexproof - Fixed that the Player Hexproof prevented that the player could be attacked. --- .../src/mage/target/common/TargetDefender.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/Mage/src/mage/target/common/TargetDefender.java b/Mage/src/mage/target/common/TargetDefender.java index fd61cf41651..28c0ffc39f3 100644 --- a/Mage/src/mage/target/common/TargetDefender.java +++ b/Mage/src/mage/target/common/TargetDefender.java @@ -88,15 +88,17 @@ public class TargetDefender extends TargetImpl { Player player = game.getPlayer(playerId); if (player != null && player.canBeTargetedBy(targetSource, game) && filter.match(player, game)) { count++; - if (count >= this.minNumberOfTargets) + if (count >= this.minNumberOfTargets) { return true; + } } } for (Permanent permanent: game.getBattlefield().getActivePermanents(new FilterPlaneswalkerPermanent(), sourceControllerId, game)) { if (permanent.canBeTargetedBy(targetSource, sourceControllerId, game) && filter.match(permanent, game)) { count++; - if (count >= this.minNumberOfTargets) + if (count >= this.minNumberOfTargets) { return true; + } } } return false; @@ -109,15 +111,17 @@ public class TargetDefender extends TargetImpl { Player player = game.getPlayer(playerId); if (player != null && filter.match(player, game)) { count++; - if (count >= this.minNumberOfTargets) + if (count >= this.minNumberOfTargets) { return true; + } } } for (Permanent permanent: game.getBattlefield().getActivePermanents(new FilterPlaneswalkerPermanent(), sourceControllerId, game)) { if (filter.match(permanent, game)) { count++; - if (count >= this.minNumberOfTargets) + if (count >= this.minNumberOfTargets) { return true; + } } } return false; @@ -125,7 +129,7 @@ public class TargetDefender extends TargetImpl { @Override public Set possibleTargets(UUID sourceId, UUID sourceControllerId, Game game) { - Set possibleTargets = new HashSet(); + Set possibleTargets = new HashSet<>(); MageObject targetSource = game.getObject(sourceId); for (UUID playerId: game.getPlayer(sourceControllerId).getInRange()) { Player player = game.getPlayer(playerId); @@ -143,7 +147,7 @@ public class TargetDefender extends TargetImpl { @Override public Set possibleTargets(UUID sourceControllerId, Game game) { - Set possibleTargets = new HashSet(); + Set possibleTargets = new HashSet<>(); for (UUID playerId: game.getPlayer(sourceControllerId).getInRange()) { Player player = game.getPlayer(playerId); if (player != null && filter.match(player, game)) { @@ -192,7 +196,7 @@ public class TargetDefender extends TargetImpl { Player player = game.getPlayer(id); MageObject targetSource = game.getObject(attackerId); if (player != null) { - return player.canBeTargetedBy(targetSource, game) && filter.match(player, game); + return notTarget || (player.canBeTargetedBy(targetSource, game) && filter.match(player, game)); } Permanent permanent = game.getPermanent(id); if (permanent != null) {