From 8bcbc00fc47fe72f3b327b0497be85f6413ffdb8 Mon Sep 17 00:00:00 2001 From: excessum Date: Thu, 1 May 2014 04:10:05 +0000 Subject: [PATCH] - Remove invalid targets after resolved Shroud/Hexproof/Protect from list of threatened objects to prevent duplicate saves --- forge-ai/src/main/java/forge/ai/ComputerUtil.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/forge-ai/src/main/java/forge/ai/ComputerUtil.java b/forge-ai/src/main/java/forge/ai/ComputerUtil.java index 0eb9a2352f4..70f6cd18406 100644 --- a/forge-ai/src/main/java/forge/ai/ComputerUtil.java +++ b/forge-ai/src/main/java/forge/ai/ComputerUtil.java @@ -1339,6 +1339,18 @@ public class ComputerUtil { } } else { objects = topStack.getTargets().getTargets(); + if (tgt != null) { + final ArrayList canBeTargeted = new ArrayList(); + for (Object o : objects) { + if (o instanceof Card) { + final Card c = (Card) o; + if (c.canBeTargetedBy(topStack)) { + canBeTargeted.add(c); + } + } + } + objects = canBeTargeted; + } } // Determine if Defined Objects are "threatened" will be destroyed