diff --git a/Mage.Sets/src/mage/sets/fifthdawn/AuriokChampion.java b/Mage.Sets/src/mage/sets/fifthdawn/AuriokChampion.java index fbc95b702a7..23cdb0a0db7 100644 --- a/Mage.Sets/src/mage/sets/fifthdawn/AuriokChampion.java +++ b/Mage.Sets/src/mage/sets/fifthdawn/AuriokChampion.java @@ -49,8 +49,7 @@ public class AuriokChampion extends CardImpl { static final FilterCard filter = new FilterCard("black and from red"); static { - filter.add(Predicates.and(new ColorPredicate(ObjectColor.BLACK), - new ColorPredicate(ObjectColor.RED))); + filter.add(Predicates.or(new ColorPredicate(ObjectColor.BLACK),new ColorPredicate(ObjectColor.RED))); } public AuriokChampion(UUID ownerId) { diff --git a/Mage.Sets/src/mage/sets/magic2010/BaneslayerAngel.java b/Mage.Sets/src/mage/sets/magic2010/BaneslayerAngel.java index f60ddc137e8..cc60edb58b1 100644 --- a/Mage.Sets/src/mage/sets/magic2010/BaneslayerAngel.java +++ b/Mage.Sets/src/mage/sets/magic2010/BaneslayerAngel.java @@ -39,6 +39,7 @@ import mage.abilities.keyword.ProtectionAbility; import mage.cards.CardImpl; import mage.filter.FilterPermanent; import mage.filter.common.FilterCreaturePermanent; +import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.SubtypePredicate; /** @@ -46,12 +47,11 @@ import mage.filter.predicate.mageobject.SubtypePredicate; * @author BetaSteward_at_googlemail.com */ public class BaneslayerAngel extends CardImpl { - private static final FilterPermanent filter1 = new FilterCreaturePermanent("Demons"); - private static final FilterPermanent filter2 = new FilterCreaturePermanent("Dragons"); + + private static final FilterPermanent filter = new FilterCreaturePermanent("Demons and from Dragons"); static { - filter1.add(new SubtypePredicate("Demon")); - filter2.add(new SubtypePredicate("Dragon")); + filter.add(Predicates.or(new SubtypePredicate("Demon"), new SubtypePredicate("Dragon"))); } public BaneslayerAngel(UUID ownerId) { @@ -62,11 +62,11 @@ public class BaneslayerAngel extends CardImpl { this.power = new MageInt(5); this.toughness = new MageInt(5); + // Flying, first strike, lifelink, protection from Demons and from Dragons this.addAbility(FlyingAbility.getInstance()); this.addAbility(FirstStrikeAbility.getInstance()); this.addAbility(LifelinkAbility.getInstance()); - this.addAbility(new ProtectionAbility(filter1)); - this.addAbility(new ProtectionAbility(filter2)); + this.addAbility(new ProtectionAbility(filter)); } public BaneslayerAngel(final BaneslayerAngel card) { diff --git a/Mage.Sets/src/mage/sets/magic2013/AkromasMemorial.java b/Mage.Sets/src/mage/sets/magic2013/AkromasMemorial.java index 044514da645..8c0c30f29f2 100644 --- a/Mage.Sets/src/mage/sets/magic2013/AkromasMemorial.java +++ b/Mage.Sets/src/mage/sets/magic2013/AkromasMemorial.java @@ -42,19 +42,20 @@ import mage.filter.common.FilterControlledCreaturePermanent; import mage.filter.predicate.mageobject.ColorPredicate; import java.util.UUID; +import mage.filter.predicate.Predicates; /** * @author Loki, noxx */ public class AkromasMemorial extends CardImpl { - private static final FilterCard filterBlack = new FilterCard("Black"); - private static final FilterCard filterRed = new FilterCard("Red"); + + private static final FilterCard protectionFilter = new FilterCard("black and from red"); static { - filterBlack.add(new ColorPredicate(ObjectColor.BLACK)); - filterRed.add(new ColorPredicate(ObjectColor.RED)); + protectionFilter.add(Predicates.or(new ColorPredicate(ObjectColor.BLACK),new ColorPredicate(ObjectColor.RED))); } + public AkromasMemorial(UUID ownerId) { super(ownerId, 200, "Akroma's Memorial", Rarity.MYTHIC, new CardType[]{CardType.ARTIFACT}, "{7}"); this.expansionSetCode = "M13"; @@ -64,7 +65,7 @@ public class AkromasMemorial extends CardImpl { @Override public void build() { // Creatures you control have flying, first strike, vigilance, trample, haste, and protection from black and from red. - CompoundAbility compoundAbilities = new CompoundAbility(FlyingAbility.getInstance(), FirstStrikeAbility.getInstance(), VigilanceAbility.getInstance(), TrampleAbility.getInstance(), HasteAbility.getInstance(), new ProtectionAbility(filterBlack), new ProtectionAbility(filterRed)); + CompoundAbility compoundAbilities = new CompoundAbility(FlyingAbility.getInstance(), FirstStrikeAbility.getInstance(), VigilanceAbility.getInstance(), TrampleAbility.getInstance(), HasteAbility.getInstance(), new ProtectionAbility(protectionFilter)); this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(compoundAbilities, Duration.WhileOnBattlefield, new FilterControlledCreaturePermanent("Creatures")))); } diff --git a/Mage.Sets/src/mage/sets/odyssey/MysticCrusader.java b/Mage.Sets/src/mage/sets/odyssey/MysticCrusader.java index b2a1232cf46..20aaf9c2618 100644 --- a/Mage.Sets/src/mage/sets/odyssey/MysticCrusader.java +++ b/Mage.Sets/src/mage/sets/odyssey/MysticCrusader.java @@ -54,10 +54,9 @@ import mage.filter.predicate.mageobject.ColorPredicate; public class MysticCrusader extends CardImpl { static final FilterCard filter = new FilterCard("black and from red"); - + static { - filter.add(Predicates.and(new ColorPredicate(ObjectColor.BLACK), - new ColorPredicate(ObjectColor.RED))); + filter.add(Predicates.or(new ColorPredicate(ObjectColor.BLACK),new ColorPredicate(ObjectColor.RED))); } public MysticCrusader(UUID ownerId) { diff --git a/Mage.Sets/src/mage/sets/timeshifted/AkromaAngelOfWrath.java b/Mage.Sets/src/mage/sets/timeshifted/AkromaAngelOfWrath.java index 51606d4e175..f4bd4ed384a 100644 --- a/Mage.Sets/src/mage/sets/timeshifted/AkromaAngelOfWrath.java +++ b/Mage.Sets/src/mage/sets/timeshifted/AkromaAngelOfWrath.java @@ -35,6 +35,7 @@ import mage.ObjectColor; import mage.abilities.keyword.*; import mage.cards.CardImpl; import mage.filter.FilterCard; +import mage.filter.predicate.Predicates; import mage.filter.predicate.mageobject.ColorPredicate; /** @@ -42,13 +43,11 @@ import mage.filter.predicate.mageobject.ColorPredicate; * @author Loki */ public class AkromaAngelOfWrath extends CardImpl { - private static final FilterCard filter = new FilterCard("Black"); - private static final FilterCard filter2 = new FilterCard("Red"); + + private static final FilterCard protectionFilter = new FilterCard("black and from red"); static { - filter.add(new ColorPredicate(ObjectColor.BLACK)); - - filter2.add(new ColorPredicate(ObjectColor.RED)); + protectionFilter.add(Predicates.or(new ColorPredicate(ObjectColor.BLACK),new ColorPredicate(ObjectColor.RED))); } public AkromaAngelOfWrath(UUID ownerId) { @@ -67,8 +66,7 @@ public class AkromaAngelOfWrath extends CardImpl { this.addAbility(TrampleAbility.getInstance()); this.addAbility(HasteAbility.getInstance()); // protection from black and from red - this.addAbility(new ProtectionAbility(filter)); - this.addAbility(new ProtectionAbility(filter2)); + this.addAbility(new ProtectionAbility(protectionFilter)); } public AkromaAngelOfWrath(final AkromaAngelOfWrath card) {