diff --git a/src/forge/CardFactory_Sorceries.java b/src/forge/CardFactory_Sorceries.java index e59888915cd..1b9bd728114 100644 --- a/src/forge/CardFactory_Sorceries.java +++ b/src/forge/CardFactory_Sorceries.java @@ -7616,6 +7616,7 @@ public class CardFactory_Sorceries { card.addSpellAbility(spell); }//*************** END ************ END ************************** + //*************** START *********** START ************************** else if(cardName.equals("Reanimate")) { final SpellAbility spell = new Spell(card) { @@ -7635,11 +7636,6 @@ public class CardFactory_Sorceries { AllZone.GameAction.getPlayerLife(c.getController()).subtractLife(cmc,card); }//resolve() - @Override - public boolean canPlayAI() { - return getCreatures().size() > 0; - } - @Override public boolean canPlay() { return super.canPlay() && getCreatures().size() > 0; @@ -7647,17 +7643,12 @@ public class CardFactory_Sorceries { public CardList getCreatures() { CardList creatures = AllZoneUtil.getCardsInGraveyard(); - creatures.filter(new CardListFilter() { - public boolean addCard(Card c) { - return CardFactoryUtil.canTarget(card, c) - && c.getType().contains("Creature") - /* && !c.getKeyword().contains("At the beginning of the end step, sacrifice CARDNAME.") */ ; - } - }); - // The keyword filter above does not work, the one below does work. - creatures = creatures.getNotKeyword("At the beginning of the end step, sacrifice CARDNAME."); + creatures.filter(AllZoneUtil.creatures); + if (card.getController().equals("Computer")) { + creatures = creatures.getNotKeyword("At the beginning of the end step, sacrifice CARDNAME."); + } return creatures; - }//getCreatures() + } @Override public void chooseTargetAI() { @@ -7693,6 +7684,7 @@ public class CardFactory_Sorceries { spell.setBeforePayMana(target); }//*************** END ************ END ************************** + //*************** START *********** START ************************** else if(cardName.equals("Recall")) { /*