mirror of
https://github.com/magefree/mage.git
synced 2026-01-25 20:59:14 -08:00
[filters] Replaced tapped condition with Predicate
This commit is contained in:
parent
5450a65421
commit
fba4e662d0
50 changed files with 179 additions and 117 deletions
|
|
@ -38,17 +38,18 @@ import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
|
|||
import mage.abilities.effects.common.continious.BoostSourceEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Loki
|
||||
*/
|
||||
public class KnotvinePaladin extends CardImpl<KnotvinePaladin> {
|
||||
private static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
|
||||
static {
|
||||
filter.setUseTapped(true);
|
||||
filter.setTapped(false);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -38,6 +38,8 @@ import mage.abilities.costs.common.TapTargetCost;
|
|||
import mage.abilities.effects.common.TapTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
|
@ -49,8 +51,7 @@ public class DiversionaryTactics extends CardImpl<DiversionaryTactics> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public DiversionaryTactics(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -39,6 +39,8 @@ import mage.abilities.effects.OneShotEffect;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.filter.FilterMana;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.players.Player;
|
||||
|
|
@ -80,8 +82,7 @@ class BurnAtTheStakeCost extends CostImpl<BurnAtTheStakeCost> implements Variabl
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
private int amountPaid = 0;
|
||||
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ import mage.filter.common.FilterControlledPermanent;
|
|||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
|
|
@ -63,8 +64,7 @@ public class DevoutChaplain extends CardImpl<DevoutChaplain> {
|
|||
private final static FilterControlledPermanent humanFilter = new FilterControlledPermanent("untapped Human you control");
|
||||
|
||||
static {
|
||||
humanFilter.setTapped(false);
|
||||
humanFilter.setUseTapped(true);
|
||||
humanFilter.add(Predicates.not(new TappedPredicate()));
|
||||
humanFilter.add(new SubtypePredicate("Human"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,9 @@ import mage.abilities.costs.mana.GenericManaCost;
|
|||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.game.permanent.token.SpiritWhiteToken;
|
||||
|
|
@ -57,8 +59,7 @@ public class GallowsAtWillowHill extends CardImpl<GallowsAtWillowHill> {
|
|||
private final static FilterControlledPermanent humanFilter = new FilterControlledPermanent("untapped Human you control");
|
||||
|
||||
static {
|
||||
humanFilter.setTapped(false);
|
||||
humanFilter.setUseTapped(true);
|
||||
humanFilter.add(Predicates.not(new TappedPredicate()));
|
||||
humanFilter.add(new SubtypePredicate("Human"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -45,6 +45,7 @@ import mage.cards.Card;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.command.Emblem;
|
||||
import mage.game.events.GameEvent;
|
||||
|
|
@ -100,8 +101,7 @@ class TappedCreaturesControlledByTargetCount implements DynamicValue {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent();
|
||||
|
||||
static {
|
||||
filter.setTapped(true);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(new TappedPredicate());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -42,6 +42,8 @@ import mage.abilities.effects.common.UntapEnchantedEffect;
|
|||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
|
@ -54,8 +56,7 @@ public class AuraOfDominion extends CardImpl<AuraOfDominion> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -39,7 +39,9 @@ import mage.abilities.costs.common.TapTargetCost;
|
|||
import mage.abilities.effects.common.DrawCardControllerEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -50,8 +52,7 @@ public class AzamiLadyOfScrolls extends CardImpl<AzamiLadyOfScrolls> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Wizard you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Wizard"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,9 @@ import mage.abilities.dynamicvalue.common.PermanentsOnBattlefieldCount;
|
|||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterLandPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetAttackingCreature;
|
||||
|
||||
/**
|
||||
|
|
@ -53,8 +55,7 @@ public class BenBenAkkiHermit extends CardImpl<BenBenAkkiHermit> {
|
|||
private final static FilterLandPermanent filter = new FilterLandPermanent("untapped Mountain you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Mountain"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -39,6 +39,8 @@ import mage.abilities.costs.common.TapTargetCost;
|
|||
import mage.abilities.effects.common.PutLibraryIntoGraveTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPlayer;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
|
@ -51,8 +53,7 @@ public class HairStrungKoto extends CardImpl<HairStrungKoto> {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public HairStrungKoto (UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -40,7 +40,9 @@ import mage.abilities.effects.common.UntapSourceEffect;
|
|||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SupertypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -51,8 +53,7 @@ public class HonorWornShaku extends CardImpl<HonorWornShaku> {
|
|||
private final static FilterControlledPermanent filter = new FilterControlledPermanent("untapped legendary permanent");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SupertypePredicate("Legendary"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,9 @@ import mage.abilities.effects.common.TransformSourceEffect;
|
|||
import mage.abilities.keyword.TransformAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -52,8 +54,7 @@ public class ChosenOfMarkov extends CardImpl<ChosenOfMarkov> {
|
|||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped Vampire you control");
|
||||
|
||||
static {
|
||||
filter.setUseTapped(true);
|
||||
filter.setTapped(false);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Vampire"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -41,9 +41,11 @@ import mage.abilities.effects.common.continious.GainAbilitySourceEffect;
|
|||
import mage.abilities.keyword.ShroudAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.permanent.token.MerfolkToken;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
|
@ -56,8 +58,7 @@ public class Benthicore extends CardImpl<Benthicore> {
|
|||
private final static FilterControlledPermanent filter = new FilterControlledPermanent("untapped Merfolk you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Merfolk"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -41,9 +41,11 @@ import mage.abilities.effects.common.continious.GainAbilitySourceEffect;
|
|||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.permanent.token.KithkinToken;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
|
@ -56,8 +58,7 @@ public class CloudgoatRanger extends CardImpl<CloudgoatRanger> {
|
|||
private final static FilterControlledPermanent filter = new FilterControlledPermanent("untapped Kithkin you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Kithkin"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ import mage.abilities.effects.common.SkipEnchantedUntapEffect;
|
|||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
|
@ -50,7 +51,7 @@ public class GlimmerdustNap extends CardImpl<GlimmerdustNap> {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature");
|
||||
|
||||
static {
|
||||
filter.setTapped(true);
|
||||
filter.add(new TappedPredicate());
|
||||
}
|
||||
|
||||
public GlimmerdustNap(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -34,6 +34,8 @@ import mage.abilities.costs.common.TapTargetCost;
|
|||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
|
@ -46,8 +48,7 @@ public class SpringleafDrum extends CardImpl<SpringleafDrum> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature");
|
||||
|
||||
static {
|
||||
filter.setUseTapped(true);
|
||||
filter.setTapped(false);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public SpringleafDrum(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -36,7 +36,9 @@ import mage.abilities.effects.common.CreateTokenEffect;
|
|||
import mage.abilities.effects.common.ReturnToHandSourceEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.permanent.token.MerfolkToken;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
|
|
@ -51,8 +53,7 @@ public class SummonTheSchool extends CardImpl<SummonTheSchool> {
|
|||
private final static FilterControlledPermanent filter = new FilterControlledPermanent("untapped Merfolk you control");
|
||||
|
||||
static {
|
||||
filter.setUseTapped(true);
|
||||
filter.setTapped(false);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Merfolk"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ import mage.abilities.effects.common.SkipEnchantedUntapEffect;
|
|||
import mage.abilities.keyword.EnchantAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
|
@ -50,7 +51,7 @@ public class EntanglingVines extends CardImpl<EntanglingVines> {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature");
|
||||
|
||||
static {
|
||||
filter.setTapped(true);
|
||||
filter.add(new TappedPredicate());
|
||||
}
|
||||
|
||||
public EntanglingVines(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -41,7 +41,9 @@ import mage.abilities.effects.OneShotEffect;
|
|||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent.EventType;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
|
@ -92,8 +94,7 @@ class MasterOfTheWildHuntEffect extends OneShotEffect<MasterOfTheWildHuntEffect>
|
|||
|
||||
static {
|
||||
filter.add(new SubtypePredicate("Wolf"));
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public MasterOfTheWildHuntEffect() {
|
||||
|
|
|
|||
|
|
@ -46,7 +46,9 @@ import mage.abilities.effects.common.continious.BoostControlledEffect;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
|
@ -64,8 +66,7 @@ public class CaptivatingVampire extends CardImpl<CaptivatingVampire> {
|
|||
static {
|
||||
filter1.add(new SubtypePredicate("Vampire"));
|
||||
filter2.add(new SubtypePredicate("Vampire"));
|
||||
filter2.setTapped(false);
|
||||
filter2.setUseTapped(true);
|
||||
filter2.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public CaptivatingVampire(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -42,8 +42,10 @@ import mage.cards.Card;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.NamePredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.players.Player;
|
||||
|
|
@ -62,8 +64,7 @@ public class ArachnusSpinner extends CardImpl<ArachnusSpinner> {
|
|||
|
||||
static {
|
||||
filter.add(new SubtypePredicate("Spider"));
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public ArachnusSpinner(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -39,7 +39,9 @@ import mage.abilities.effects.common.BasicManaEffect;
|
|||
import mage.abilities.mana.SimpleManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -51,8 +53,7 @@ public class HeritageDruid extends CardImpl<HeritageDruid> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Elves you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Elf"));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -40,6 +40,8 @@ import mage.abilities.keyword.ChangelingAbility;
|
|||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -50,8 +52,7 @@ public class MothdustChangeling extends CardImpl<MothdustChangeling> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public MothdustChangeling(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ import mage.filter.common.FilterControlledCreaturePermanent;
|
|||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetSpell;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
|
@ -56,8 +57,7 @@ public class SigilTracer extends CardImpl<SigilTracer> {
|
|||
private static final FilterSpell filterInstorSorc = new FilterSpell("instant or sorcery spell");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Wizard"));
|
||||
filterInstorSorc.add(Predicates.or(
|
||||
new CardTypePredicate(CardType.INSTANT),
|
||||
|
|
|
|||
|
|
@ -39,7 +39,9 @@ import mage.abilities.effects.common.continious.BoostSourceEffect;
|
|||
import mage.abilities.keyword.TrampleAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -50,8 +52,7 @@ public class LodestoneMyr extends CardImpl<LodestoneMyr> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped artifact you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new CardTypePredicate(CardType.ARTIFACT));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@ import mage.filter.FilterPermanent;
|
|||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
|
@ -54,8 +55,7 @@ public class GlareOfSubdual extends CardImpl<GlareOfSubdual> {
|
|||
private final static FilterPermanent filterTarget = new FilterPermanent("artifact or creature");
|
||||
|
||||
static {
|
||||
filterCost.setTapped(false);
|
||||
filterCost.setUseTapped(true);
|
||||
filterCost.add(Predicates.not(new TappedPredicate()));
|
||||
filterTarget.add(Predicates.or(
|
||||
new CardTypePredicate(CardType.ARTIFACT),
|
||||
new CardTypePredicate(CardType.CREATURE)));
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ import mage.filter.FilterPermanent;
|
|||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
|
@ -55,8 +56,7 @@ public class NullmageShepherd extends CardImpl<NullmageShepherd> {
|
|||
private final static FilterPermanent filterTarget = new FilterPermanent("artifact or enchantment");
|
||||
|
||||
static {
|
||||
filterCost.setTapped(false);
|
||||
filterCost.setUseTapped(true);
|
||||
filterCost.add(Predicates.not(new TappedPredicate()));
|
||||
filterTarget.add(Predicates.or(
|
||||
new CardTypePredicate(CardType.ARTIFACT),
|
||||
new CardTypePredicate(CardType.ENCHANTMENT)));
|
||||
|
|
|
|||
|
|
@ -39,6 +39,8 @@ import mage.abilities.costs.common.TapTargetCost;
|
|||
import mage.abilities.effects.common.TapTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
|
|
@ -51,8 +53,7 @@ public class Sandsower extends CardImpl<Sandsower> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public Sandsower(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -41,6 +41,8 @@ import mage.abilities.costs.mana.GenericManaCost;
|
|||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.permanent.token.SaprolingToken;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
|
@ -53,8 +55,7 @@ public class SelesnyaEvangel extends CardImpl<SelesnyaEvangel> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public SelesnyaEvangel(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -45,6 +45,7 @@ import mage.abilities.effects.common.PreventAllDamageSourceEffect;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.game.permanent.token.Token;
|
||||
|
|
@ -60,8 +61,7 @@ public class GideonJura extends CardImpl<GideonJura> {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature");
|
||||
|
||||
static {
|
||||
filter.setUseTapped(true);
|
||||
filter.setTapped(true);
|
||||
filter.add(new TappedPredicate());
|
||||
}
|
||||
|
||||
public GideonJura(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -34,6 +34,8 @@ import mage.abilities.costs.common.TapTargetCost;
|
|||
import mage.abilities.effects.common.DrawCardControllerEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -45,8 +47,7 @@ public class SharedDiscovery extends CardImpl<SharedDiscovery> {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public SharedDiscovery(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -55,8 +55,10 @@ import mage.abilities.mana.ManaAbility;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.mageobject.ColorPredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
import mage.target.TargetPermanent;
|
||||
|
|
@ -141,8 +143,7 @@ class GrandArchitectManaAbility extends ManaAbility<GrandArchitectManaAbility> {
|
|||
|
||||
static {
|
||||
filter.add(new ColorPredicate(ObjectColor.BLUE));
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
GrandArchitectManaAbility ( ) {
|
||||
|
|
|
|||
|
|
@ -46,7 +46,9 @@ import mage.abilities.effects.common.CreateTokenEffect;
|
|||
import mage.abilities.effects.common.continious.BoostSourceEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.game.events.GameEvent;
|
||||
import mage.game.events.GameEvent.EventType;
|
||||
|
|
@ -89,8 +91,7 @@ class MyrBattlesphereAbility extends TriggeredAbilityImpl<MyrBattlesphereAbility
|
|||
|
||||
static {
|
||||
filter.add(new SubtypePredicate("Myr"));
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public MyrBattlesphereAbility() {
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ import mage.abilities.keyword.FlyingAbility;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
@ -48,8 +49,7 @@ public class SunblastAngel extends CardImpl<SunblastAngel> {
|
|||
private static final FilterPermanent tappedFilter = new FilterCreaturePermanent("tapped creatures");
|
||||
|
||||
static {
|
||||
tappedFilter.setUseTapped(true);
|
||||
tappedFilter.setTapped(true);
|
||||
tappedFilter.add(new TappedPredicate());
|
||||
}
|
||||
|
||||
public SunblastAngel (UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ import mage.cards.CardImpl;
|
|||
import mage.filter.FilterPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
|
||||
/**
|
||||
*
|
||||
|
|
@ -47,7 +48,7 @@ public class ToilToRenown extends CardImpl<ToilToRenown> {
|
|||
private static final FilterPermanent filter = new FilterPermanent("tapped artifact, creature, and land you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(true);
|
||||
filter.add(new TappedPredicate());
|
||||
filter.add(Predicates.or(
|
||||
new CardTypePredicate(CardType.ARTIFACT),
|
||||
new CardTypePredicate(CardType.CREATURE),
|
||||
|
|
|
|||
|
|
@ -39,8 +39,10 @@ import mage.abilities.effects.common.UntapTargetEffect;
|
|||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.mageobject.SupertypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
import mage.target.common.TargetControlledPermanent;
|
||||
|
||||
|
|
@ -53,8 +55,7 @@ public class Earthcraft extends CardImpl<Earthcraft> {
|
|||
private final static FilterControlledPermanent filterLand = new FilterControlledPermanent("basic land");
|
||||
|
||||
static {
|
||||
filterCreature.setUseTapped(true);
|
||||
filterCreature.setTapped(false);
|
||||
filterCreature.add(Predicates.not(new TappedPredicate()));
|
||||
filterLand.add(new CardTypePredicate(CardType.LAND));
|
||||
filterLand.add(new SupertypePredicate("Basic"));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -39,6 +39,8 @@ import mage.abilities.effects.common.continious.GainAbilitySourceEffect;
|
|||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -49,8 +51,7 @@ public class Telethopter extends CardImpl<Telethopter> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public Telethopter(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -41,6 +41,8 @@ import mage.abilities.effects.common.ReturnToHandTargetEffect;
|
|||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.TargetPermanent;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
||||
|
|
@ -52,8 +54,7 @@ public class TradewindRider extends CardImpl<TradewindRider> {
|
|||
private final static FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creatures you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
}
|
||||
|
||||
public TradewindRider(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ import mage.Constants.Rarity;
|
|||
import mage.abilities.effects.common.DestroyTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -45,8 +46,7 @@ public class Assassinate extends CardImpl<Assassinate> {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature");
|
||||
|
||||
static {
|
||||
filter.setTapped(true);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(new TappedPredicate());
|
||||
}
|
||||
|
||||
public Assassinate(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@ import mage.abilities.costs.common.TapSourceCost;
|
|||
import mage.abilities.effects.common.DestroyTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -50,8 +51,7 @@ public class RoyalAssassin extends CardImpl<RoyalAssassin> {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature");
|
||||
|
||||
static {
|
||||
filter.setUseTapped(true);
|
||||
filter.setTapped(true);
|
||||
filter.add(new TappedPredicate());
|
||||
}
|
||||
|
||||
public RoyalAssassin(UUID ownerId){
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ import mage.cards.CardImpl;
|
|||
import mage.filter.common.FilterControlledPermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.CardTypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
|
@ -47,13 +48,11 @@ import java.util.UUID;
|
|||
*/
|
||||
public class MaraxusOfKeld extends CardImpl<MaraxusOfKeld> {
|
||||
|
||||
private static final FilterControlledPermanent filterUntapped = new FilterControlledPermanent("untapped artifacts, creatures, and lands you control");
|
||||
private static final FilterControlledPermanent filter = new FilterControlledPermanent("untapped artifacts, creatures, and lands you control");
|
||||
|
||||
static {
|
||||
filterUntapped.setUseTapped(true);
|
||||
filterUntapped.setTapped(false);
|
||||
|
||||
filterUntapped.add(Predicates.or(
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(Predicates.or(
|
||||
new CardTypePredicate(CardType.ARTIFACT),
|
||||
new CardTypePredicate(CardType.CREATURE),
|
||||
new CardTypePredicate(CardType.LAND)));
|
||||
|
|
@ -71,7 +70,7 @@ public class MaraxusOfKeld extends CardImpl<MaraxusOfKeld> {
|
|||
this.toughness = new MageInt(0);
|
||||
|
||||
// Maraxus of Keld's power and toughness are each equal to the number of untapped artifacts, creatures, and lands you control.
|
||||
this.addAbility(new SimpleStaticAbility(Constants.Zone.ALL, new SetPowerToughnessSourceEffect(new PermanentsOnBattlefieldCount(filterUntapped), Constants.Duration.EndOfGame)));
|
||||
this.addAbility(new SimpleStaticAbility(Constants.Zone.ALL, new SetPowerToughnessSourceEffect(new PermanentsOnBattlefieldCount(filter), Constants.Duration.EndOfGame)));
|
||||
}
|
||||
|
||||
public MaraxusOfKeld(final MaraxusOfKeld card) {
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
|||
import mage.abilities.effects.common.ReturnToHandTargetEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
||||
/**
|
||||
|
|
@ -47,7 +48,7 @@ public class SurrakarBanisher extends CardImpl<SurrakarBanisher> {
|
|||
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("tapped creature");
|
||||
|
||||
static {
|
||||
filter.setTapped(true);
|
||||
filter.add(new TappedPredicate());
|
||||
}
|
||||
|
||||
public SurrakarBanisher(UUID ownerId) {
|
||||
|
|
|
|||
|
|
@ -37,7 +37,9 @@ import mage.abilities.effects.OneShotEffect;
|
|||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledCreaturePermanent;
|
||||
import mage.filter.predicate.Predicates;
|
||||
import mage.filter.predicate.mageobject.SubtypePredicate;
|
||||
import mage.filter.predicate.permanent.TappedPredicate;
|
||||
import mage.game.Game;
|
||||
import mage.players.Player;
|
||||
import mage.target.common.TargetControlledCreaturePermanent;
|
||||
|
|
@ -52,8 +54,7 @@ public class BloodTribute extends CardImpl<BloodTribute> {
|
|||
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped Vampire you control");
|
||||
|
||||
static {
|
||||
filter.setTapped(false);
|
||||
filter.setUseTapped(true);
|
||||
filter.add(Predicates.not(new TappedPredicate()));
|
||||
filter.add(new SubtypePredicate("Vampire"));
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue