mirror of
https://github.com/correl/mage.git
synced 2025-01-13 19:11:33 +00:00
* Auriok Champion and Mystic Crusader - Fixed protection ability not working correctly.
This commit is contained in:
parent
9c8d36ee8a
commit
e389645927
5 changed files with 20 additions and 23 deletions
|
@ -49,8 +49,7 @@ public class AuriokChampion extends CardImpl<AuriokChampion> {
|
|||
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) {
|
||||
|
|
|
@ -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<BaneslayerAngel> {
|
||||
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<BaneslayerAngel> {
|
|||
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) {
|
||||
|
|
|
@ -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<AkromasMemorial> {
|
||||
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<AkromasMemorial> {
|
|||
@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"))));
|
||||
}
|
||||
|
||||
|
|
|
@ -54,10 +54,9 @@ import mage.filter.predicate.mageobject.ColorPredicate;
|
|||
public class MysticCrusader extends CardImpl<MysticCrusader> {
|
||||
|
||||
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) {
|
||||
|
|
|
@ -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<AkromaAngelOfWrath> {
|
||||
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<AkromaAngelOfWrath> {
|
|||
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) {
|
||||
|
|
Loading…
Reference in a new issue