diff --git a/res/cardsfolder/r/reverent_mantra.txt b/res/cardsfolder/r/reverent_mantra.txt index 5e11c527b6f..63921381124 100644 --- a/res/cardsfolder/r/reverent_mantra.txt +++ b/res/cardsfolder/r/reverent_mantra.txt @@ -5,7 +5,7 @@ SVar:AltCost:Cost$ ExileFromHand<1/Card.White> | Description$ You may exile a wh A:SP$ ChooseColor | Cost$ 3 W | Defined$ You | SubAbility$ ProtectAll | AILogic$ MostProminentHumanControls | StackDescription$ SpellDescription | SpellDescription$ Choose a color. All creatures gain protection from the chosen color until end of turn. SVar:ProtectAll:DB$ Effect | StaticAbilities$ ProtectionChosen SVar:ProtectionChosen:Mode$ Continuous | EffectZone$ Command | Affected$ Creature | AffectedZone$ Battlefield | AddKeyword$ Protection:Card.ChosenColor:Protection from the chosen color | Description$ All creatures gain protection from the chosen color until end of turn. -SVar:PlayMain1:TRUE +SVar:RemAIDeck:True SVar:Picture:http://www.wizards.com/global/images/magic/general/reverent_mantra.jpg SetInfo:MMQ|Rare|http://magiccards.info/scans/en/mm/44.jpg Oracle:You may exile a white card from your hand rather than pay Reverent Mantra's mana cost.\nChoose a color. All creatures gain protection from the chosen color until end of turn. diff --git a/src/main/java/forge/card/ability/ai/AttachAi.java b/src/main/java/forge/card/ability/ai/AttachAi.java index d9110e95fb1..f8623031015 100644 --- a/src/main/java/forge/card/ability/ai/AttachAi.java +++ b/src/main/java/forge/card/ability/ai/AttachAi.java @@ -801,7 +801,7 @@ public class AttachAi extends SpellAbilityAi { prefList = CardLists.filter(prefList, Predicates.not(Presets.ENCHANTED)); } - if (!grantingAbilities) { + if (!grantingAbilities && keywords.isEmpty()) { // Probably prefer to Enchant Creatures that Can Attack // Filter out creatures that can't Attack or have Defender prefList = CardLists.filter(prefList, new Predicate() { @@ -1063,6 +1063,10 @@ public class AttachAi extends SpellAbilityAi { if (!CombatUtil.canBlock(card, true) || card.hasKeyword("CARDNAME can block any number of creatures.")) { return false; } + } else if (keyword.equals("CARDNAME can attack as though it didn't have defender.")) { + if (!card.hasKeyword("Defender") || card.hasKeyword("CARDNAME can attack as though it didn't have defender.")) { + return false; + } } else if (keyword.equals("Shroud") || keyword.equals("Hexproof")) { if (card.hasKeyword("Shroud") || card.hasKeyword("Hexproof")) { return false; diff --git a/src/main/java/forge/game/phase/Upkeep.java b/src/main/java/forge/game/phase/Upkeep.java index c60178f46ec..451c7113917 100644 --- a/src/main/java/forge/game/phase/Upkeep.java +++ b/src/main/java/forge/game/phase/Upkeep.java @@ -249,6 +249,7 @@ public class Upkeep extends Phase { }; slowtrip.setStackDescription(card + " - Draw a card."); slowtrip.setDescription(card + " - Draw a card."); + slowtrip.setActivatingPlayer(player); game.getStack().addSimultaneousStackEntry(slowtrip);