From 27010a20898efc427fe591a424f07119e8aa5b30 Mon Sep 17 00:00:00 2001 From: magenoxx Date: Sat, 12 Feb 2011 23:50:03 +0300 Subject: [PATCH] previous fix wasn't 100% correct. --- .../src/main/java/mage/player/ai/ComputerPlayer.java | 2 +- .../target/maven-archiver/pom.properties | 2 +- .../mage/target/common/TargetCreatureOrPlayer.java | 12 ++++++++++++ 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java b/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java index 358572660f5..d413c45283f 100644 --- a/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java +++ b/Mage.Server.Plugins/Mage.Player.AI/src/main/java/mage/player/ai/ComputerPlayer.java @@ -279,7 +279,7 @@ public class ComputerPlayer> extends PlayerImpl i targets = threats(opponentId, ((FilterCreatureOrPlayer)t.getFilter()).getCreatureFilter(), game); } for (Permanent permanent: targets) { - if (((TargetPermanent)target).canTarget(playerId, permanent.getId(), source, game)) { + if (t.canTarget(playerId, permanent.getId(), source, game)) { target.addTarget(permanent.getId(), source, game); return true; } diff --git a/Mage.Server.Plugins/Mage.Tournament.BoosterDraft/target/maven-archiver/pom.properties b/Mage.Server.Plugins/Mage.Tournament.BoosterDraft/target/maven-archiver/pom.properties index 2e014c18ee0..d3673d07638 100644 --- a/Mage.Server.Plugins/Mage.Tournament.BoosterDraft/target/maven-archiver/pom.properties +++ b/Mage.Server.Plugins/Mage.Tournament.BoosterDraft/target/maven-archiver/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven -#Sat Feb 12 11:24:53 MSK 2011 +#Sat Feb 12 23:42:53 MSK 2011 version=0.6 groupId=org.mage artifactId=Mage-Tournament-BoosterDraft diff --git a/Mage/src/mage/target/common/TargetCreatureOrPlayer.java b/Mage/src/mage/target/common/TargetCreatureOrPlayer.java index 00fa22362d5..3a126ff9138 100644 --- a/Mage/src/mage/target/common/TargetCreatureOrPlayer.java +++ b/Mage/src/mage/target/common/TargetCreatureOrPlayer.java @@ -107,6 +107,18 @@ public class TargetCreatureOrPlayer extends TargetImpl { return false; } + public boolean canTarget(UUID controllerId, UUID id, Ability source, Game game) { + Permanent permanent = game.getPermanent(id); + if (permanent != null) { + if (source != null) + //TODO: check for replacement effects + return permanent.canBeTargetedBy(game.getObject(source.getSourceId())) && filter.match(permanent, controllerId, game); + else + return filter.match(permanent, controllerId, game); + } + return false; + } + /** * Checks if there are enough {@link Permanent} or {@link Player} that can be chosen. Should only be used * for Ability targets since this checks for protection, shroud etc.