From 9a312e21276baf18803603ae6261c7e65b8e869e Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 13:24:50 +0000 Subject: [PATCH] - Added the missing stack description to AF_Fog. --- src/forge/AbilityFactory_Combat.java | 31 ++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/src/forge/AbilityFactory_Combat.java b/src/forge/AbilityFactory_Combat.java index 58985beeb1d..7dfb4c3af86 100644 --- a/src/forge/AbilityFactory_Combat.java +++ b/src/forge/AbilityFactory_Combat.java @@ -13,6 +13,12 @@ public class AbilityFactory_Combat { final AbilityFactory af = AF; + @Override + public String getStackDescription(){ + // when getStackDesc is called, just build exactly what is happening + return fogStackDescription(af, this); + } + public boolean canPlayAI() { return fogCanPlayAI(af, this); @@ -33,6 +39,12 @@ public class AbilityFactory_Combat { final AbilityFactory af = AF; + @Override + public String getStackDescription(){ + // when getStackDesc is called, just build exactly what is happening + return fogStackDescription(af, this); + } + public boolean canPlayAI() { return fogCanPlayAI(af, this); @@ -67,6 +79,25 @@ public class AbilityFactory_Combat { return dbFog; } + public static String fogStackDescription(AbilityFactory af, SpellAbility sa) { + StringBuilder sb = new StringBuilder(); + + if (!(sa instanceof Ability_Sub)) + sb.append(sa.getSourceCard().getName()).append(" - "); + else + sb.append(" "); + + sb.append(sa.getSourceCard().getController()); + sb.append(" prevents all combat damage this turn."); + + Ability_Sub abSub = sa.getSubAbility(); + if (abSub != null){ + sb.append(abSub.getStackDescription()); + } + + return sb.toString(); + } + public static boolean fogCanPlayAI(final AbilityFactory af, SpellAbility sa){ // AI should only activate this during Human's Declare Blockers phase boolean chance = AllZone.Phase.is(Constant.Phase.Combat_Declare_Blockers_InstantAbility, sa.getActivatingPlayer().getOpponent());