From a9fcc58256dafef68dfb498f7dd8fc981b49c359 Mon Sep 17 00:00:00 2001 From: Sloth Date: Thu, 20 Oct 2011 12:03:57 +0000 Subject: [PATCH] - Fixed the property "blockedBySource". - Fine tuning of the mustBlock trigger AI. --- src/main/java/forge/Card.java | 2 +- .../forge/card/abilityFactory/AbilityFactory_Combat.java | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/forge/Card.java b/src/main/java/forge/Card.java index d6b15833c9b..bb9b0b8d70c 100644 --- a/src/main/java/forge/Card.java +++ b/src/main/java/forge/Card.java @@ -5224,7 +5224,7 @@ public class Card extends GameEntity implements Comparable { if (!isBlocking(source)) return false; } else if (Property.startsWith("notblocking")) { if (isBlocking()) return false; - } else if (Property.startsWith("blocked")) { + } else if (Property.equals("blocked")) { if (!AllZone.getCombat().isBlocked(this)) return false; } else if (Property.startsWith("blockedBySource")) { if (!isBlockedBy(source)) return false; diff --git a/src/main/java/forge/card/abilityFactory/AbilityFactory_Combat.java b/src/main/java/forge/card/abilityFactory/AbilityFactory_Combat.java index f5b76ec5dde..1872a08080e 100644 --- a/src/main/java/forge/card/abilityFactory/AbilityFactory_Combat.java +++ b/src/main/java/forge/card/abilityFactory/AbilityFactory_Combat.java @@ -847,8 +847,8 @@ public final class AbilityFactory_Combat { return false; } - //only use on creatures that attack - if (!source.isAttacking()) + //only use on creatures that can attack + if (!AllZone.getPhase().isBefore(Constant.Phase.Main2)) return false; boolean chance = false; @@ -862,9 +862,9 @@ public final class AbilityFactory_Combat { public boolean addCard(Card c) { if (!CombatUtil.canBlock(source, c)) return false; - if (CombatUtil.canDestroyAttacker(source, c, AllZone.getCombat(), false)) + if (CombatUtil.canDestroyAttacker(source, c, null, false)) return false; - if (!CombatUtil.canDestroyBlocker(c, source, AllZone.getCombat(), false)) + if (!CombatUtil.canDestroyBlocker(c, source, null, false)) return false; return true; }