refactored TappedPredicate to use single enum for both conditions

This commit is contained in:
Evan Kranzler 2021-05-11 09:33:45 -04:00
parent 59f02ad17a
commit a673ebffc5
282 changed files with 307 additions and 513 deletions

View file

@ -20,7 +20,7 @@ public class UntapLandsEffect extends OneShotEffect {
private static final FilterLandPermanent filter = new FilterLandPermanent("land(s) to untap");
static {
filter.add(TappedPredicate.instance);
filter.add(TappedPredicate.TAPPED);
}
private final int amount;
private final boolean upTo;

View file

@ -16,7 +16,6 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SharesColorWithSourcePredicate;
import mage.filter.predicate.permanent.TappedPredicate;
import mage.game.Game;
@ -52,7 +51,7 @@ public class ConspireAbility extends StaticAbility implements OptionalAdditional
protected static final String CONSPIRE_ACTIVATION_KEY = "ConspireActivation";
static {
filter.add(Predicates.not(TappedPredicate.instance));
filter.add(TappedPredicate.UNTAPPED);
filter.add(new SharesColorWithSourcePredicate());
filter.add(CardType.CREATURE.getPredicate());
}

View file

@ -73,7 +73,7 @@ public class ConvokeAbility extends SimpleStaticAbility implements AlternateMana
private static final FilterControlledCreaturePermanent filterUntapped = new FilterControlledCreaturePermanent();
static {
filterUntapped.add(Predicates.not(TappedPredicate.instance));
filterUntapped.add(TappedPredicate.UNTAPPED);
}
public ConvokeAbility() {
@ -112,7 +112,7 @@ public class ConvokeAbility extends SimpleStaticAbility implements AlternateMana
// create filter for possible creatures to tap
FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent();
filter.add(Predicates.not(TappedPredicate.instance));
filter.add(TappedPredicate.UNTAPPED);
if (unpaid.getMana().getGeneric() == 0) {
List<ColorPredicate> colorPredicates = new ArrayList<>();
if (unpaid.getMana().getBlack() > 0) {

View file

@ -14,7 +14,6 @@ import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.permanent.TappedPredicate;
import mage.game.Game;
import mage.game.events.GameEvent;
@ -61,7 +60,7 @@ class CrewCost extends CostImpl {
private static final FilterControlledCreaturePermanent filter = new FilterControlledCreaturePermanent("untapped creature you control");
static {
filter.add(Predicates.not(TappedPredicate.instance));
filter.add(TappedPredicate.UNTAPPED);
}
private final int value;

View file

@ -17,7 +17,6 @@ import mage.constants.ManaType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.common.FilterControlledArtifactPermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.permanent.TappedPredicate;
import mage.game.Game;
import mage.game.permanent.Permanent;
@ -48,7 +47,7 @@ public class ImproviseAbility extends SimpleStaticAbility implements AlternateMa
private static final FilterControlledArtifactPermanent filterUntapped = new FilterControlledArtifactPermanent("untapped artifact you control");
static {
filterUntapped.add(Predicates.not(TappedPredicate.instance));
filterUntapped.add(TappedPredicate.UNTAPPED);
}
private static final DynamicValue untappedCount = new PermanentsOnBattlefieldCount(filterUntapped);