From 75ed3ffbca73c66a74aa31101e6f9fe4d5ceae6b Mon Sep 17 00:00:00 2001
From: LevelX2 <ludwig.hirth@online.de>
Date: Tue, 18 Aug 2015 12:43:54 +0200
Subject: [PATCH] * AI target selection - Fixed a problem with
 TargetSpellOrPermanent (could cause e.g. a bug if AI casts Venser, Shaper
 Savant).

---
 .../src/main/java/mage/player/ai/ComputerPlayer.java          | 4 ++--
 1 file changed, 2 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 9670c6f17f..f0cda34d2a 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
@@ -702,6 +702,7 @@ public class ComputerPlayer extends PlayerImpl implements Player {
             return false;
         }
         if (target instanceof TargetSpellOrPermanent) {
+            // TODO: Also check if a spell should be selected
             List<Permanent> targets;
             boolean outcomeTargets = true;
             if (outcome.isGood()) {
@@ -713,10 +714,9 @@ public class ComputerPlayer extends PlayerImpl implements Player {
                 targets = threats(null, source == null ? null : source.getSourceId(), ((TargetSpellOrPermanent) target).getPermanentFilter(), game, target.getTargets());
                 Collections.reverse(targets);
                 outcomeTargets = false;
-                //targets = game.getBattlefield().getActivePermanents(((TargetPermanent)target).getFilter(), playerId, game);
             }
             for (Permanent permanent : targets) {
-                if (((TargetPermanent) target).canTarget(abilityControllerId, permanent.getId(), source, game)) {
+                if (((TargetSpellOrPermanent) target).canTarget(abilityControllerId, permanent.getId(), source, game)) {
                     target.addTarget(permanent.getId(), source, game);
                     if (!outcomeTargets || target.getMaxNumberOfTargets() <= target.getTargets().size()) {
                         return true;