diff --git a/Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/src/mage/game/CanadianHighlanderDuelMatch.java b/Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/src/mage/game/CanadianHighlanderDuelMatch.java
index 42d53366607..5a852383b14 100644
--- a/Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/src/mage/game/CanadianHighlanderDuelMatch.java
+++ b/Mage.Server.Plugins/Mage.Game.CanadianHighlanderDuel/src/mage/game/CanadianHighlanderDuelMatch.java
@@ -4,8 +4,7 @@ package mage.game;
import mage.game.match.MatchImpl;
import mage.game.match.MatchOptions;
import mage.game.mulligan.Mulligan;
-
-import static mage.game.mulligan.MulliganType.CANADIAN_HIGHLANDER;
+import mage.game.mulligan.MulliganType;
/**
*
@@ -20,7 +19,7 @@ public class CanadianHighlanderDuelMatch extends MatchImpl {
@Override
public void startGame() throws GameException {
int startLife = 20;
- Mulligan mulligan = options.getMulliganType().orDefault(CANADIAN_HIGHLANDER).getMulligan(options.getFreeMulligans());
+ Mulligan mulligan = options.getMulliganType().orDefault(MulliganType.CANADIAN_HIGHLANDER).getMulligan(options.getFreeMulligans());
CanadianHighlanderDuel game = new CanadianHighlanderDuel(options.getAttackOption(), options.getRange(), mulligan, startLife);
game.setStartMessage(this.createGameStartMessage());
initGame(game);
diff --git a/Mage.Sets/src/mage/cards/a/AbsoluteGrace.java b/Mage.Sets/src/mage/cards/a/AbsoluteGrace.java
index f9e97615697..d20fcb1c779 100644
--- a/Mage.Sets/src/mage/cards/a/AbsoluteGrace.java
+++ b/Mage.Sets/src/mage/cards/a/AbsoluteGrace.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -24,7 +24,7 @@ public final class AbsoluteGrace extends CardImpl {
// All creatures have protection from black.
Ability ability = ProtectionAbility.from(ObjectColor.BLACK);
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ability, Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES, false)));
+ this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ability, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES, false)));
}
private AbsoluteGrace(final AbsoluteGrace card) {
diff --git a/Mage.Sets/src/mage/cards/a/AbsoluteLaw.java b/Mage.Sets/src/mage/cards/a/AbsoluteLaw.java
index 3fff1ba6134..49fde70a207 100644
--- a/Mage.Sets/src/mage/cards/a/AbsoluteLaw.java
+++ b/Mage.Sets/src/mage/cards/a/AbsoluteLaw.java
@@ -12,7 +12,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -24,7 +24,7 @@ public final class AbsoluteLaw extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{W}");
Ability ability = ProtectionAbility.from(ObjectColor.RED);
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ability, Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES, false)));
+ this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(ability, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES, false)));
}
private AbsoluteLaw(final AbsoluteLaw card) {
diff --git a/Mage.Sets/src/mage/cards/a/AerieMystics.java b/Mage.Sets/src/mage/cards/a/AerieMystics.java
index 0fa148effe0..179e22e43e0 100644
--- a/Mage.Sets/src/mage/cards/a/AerieMystics.java
+++ b/Mage.Sets/src/mage/cards/a/AerieMystics.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -31,7 +31,7 @@ public final class AerieMystics extends CardImpl {
this.toughness = new MageInt(3);
this.addAbility(FlyingAbility.getInstance());
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
- new GainAbilityControlledEffect(ShroudAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES), new ManaCostsImpl<>("{1}{G}{U}")));
+ new GainAbilityControlledEffect(ShroudAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES), new ManaCostsImpl<>("{1}{G}{U}")));
}
private AerieMystics(final AerieMystics card) {
diff --git a/Mage.Sets/src/mage/cards/a/AetherBurst.java b/Mage.Sets/src/mage/cards/a/AetherBurst.java
index eb7b2481da9..60487cfba91 100644
--- a/Mage.Sets/src/mage/cards/a/AetherBurst.java
+++ b/Mage.Sets/src/mage/cards/a/AetherBurst.java
@@ -8,6 +8,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.FilterCard;
+import mage.filter.StaticFilters;
import mage.filter.predicate.mageobject.NamePredicate;
import mage.game.Game;
import mage.players.Player;
@@ -17,8 +18,6 @@ import mage.target.targetadjustment.TargetAdjuster;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
-
/**
* @author magenoxx_at_gmail.com
*/
@@ -73,7 +72,7 @@ enum AetherBurstAdjuster implements TargetAdjuster {
class DynamicTargetCreaturePermanent extends TargetPermanent {
public DynamicTargetCreaturePermanent() {
- super(FILTER_PERMANENT_CREATURES);
+ super(StaticFilters.FILTER_PERMANENT_CREATURES);
}
public DynamicTargetCreaturePermanent(final DynamicTargetCreaturePermanent target) {
diff --git a/Mage.Sets/src/mage/cards/a/AltarOfBone.java b/Mage.Sets/src/mage/cards/a/AltarOfBone.java
index 824e0bf34c1..9ae9aece907 100644
--- a/Mage.Sets/src/mage/cards/a/AltarOfBone.java
+++ b/Mage.Sets/src/mage/cards/a/AltarOfBone.java
@@ -7,7 +7,6 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.StaticFilters;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
import mage.target.common.TargetCardInLibrary;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -21,7 +20,7 @@ public final class AltarOfBone extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{G}{W}");
// As an additional cost to cast Altar of Bone, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Search your library for a creature card, reveal that card, and put it into your hand. Then shuffle your library.
this.getSpellAbility().addEffect(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(StaticFilters.FILTER_CARD_CREATURE), true));
}
diff --git a/Mage.Sets/src/mage/cards/a/AltarOfDementia.java b/Mage.Sets/src/mage/cards/a/AltarOfDementia.java
index 46a995e36e4..61c146caa84 100644
--- a/Mage.Sets/src/mage/cards/a/AltarOfDementia.java
+++ b/Mage.Sets/src/mage/cards/a/AltarOfDementia.java
@@ -12,7 +12,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.TargetPlayer;
@@ -28,7 +28,7 @@ public final class AltarOfDementia extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// Sacrifice a creature: Target player puts a number of cards equal to the sacrificed creature's power from the top of their library into their graveyard.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AltarOfDementiaEffect(), new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AltarOfDementiaEffect(), new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/a/AnimalBoneyard.java b/Mage.Sets/src/mage/cards/a/AnimalBoneyard.java
index 6ffab126b3b..cf46f4acee8 100644
--- a/Mage.Sets/src/mage/cards/a/AnimalBoneyard.java
+++ b/Mage.Sets/src/mage/cards/a/AnimalBoneyard.java
@@ -16,7 +16,7 @@ import mage.abilities.keyword.EnchantAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.TargetPermanent;
@@ -41,7 +41,7 @@ public final class AnimalBoneyard extends CardImpl {
this.addAbility(ability);
// Enchanted land has "{T}, Sacrifice a creature: You gain life equal to that creature's toughness."
Ability gainedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AnimalBoneyardEffect(), new TapSourceCost());
- gainedAbility.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ gainedAbility.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
Effect effect = new GainAbilityAttachedEffect(gainedAbility, AttachmentType.AURA, Duration.WhileOnBattlefield,
"Enchanted land has \"{T}, Sacrifice a creature: You gain life equal to that creature's toughness.\"");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
diff --git a/Mage.Sets/src/mage/cards/a/ArchonOfValorsReach.java b/Mage.Sets/src/mage/cards/a/ArchonOfValorsReach.java
index 193ad45cdad..42149989237 100644
--- a/Mage.Sets/src/mage/cards/a/ArchonOfValorsReach.java
+++ b/Mage.Sets/src/mage/cards/a/ArchonOfValorsReach.java
@@ -19,8 +19,6 @@ import mage.game.events.GameEvent;
import java.util.Arrays;
import java.util.UUID;
-import static mage.game.events.GameEvent.EventType.CAST_SPELL;
-
/**
* @author TheElk801
*/
@@ -92,7 +90,7 @@ class ArchonOfValorsReachReplacementEffect extends ContinuousRuleModifyingEffect
@Override
public boolean checksEventType(GameEvent event, Game game) {
- return event.getType() == CAST_SPELL;
+ return event.getType() == GameEvent.EventType.CAST_SPELL;
}
@Override
diff --git a/Mage.Sets/src/mage/cards/a/Asceticism.java b/Mage.Sets/src/mage/cards/a/Asceticism.java
index 41aaa31eeba..bfaeb5c5c1d 100644
--- a/Mage.Sets/src/mage/cards/a/Asceticism.java
+++ b/Mage.Sets/src/mage/cards/a/Asceticism.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.target.common.TargetCreaturePermanent;
/**
@@ -27,7 +27,7 @@ public final class Asceticism extends CardImpl {
// Creatures you control have hexproof.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
- new GainAbilityControlledEffect(HexproofAbility.getInstance(), Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES)));
+ new GainAbilityControlledEffect(HexproofAbility.getInstance(), Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES)));
// {1}{G}: Regenerate target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl<>("{1}{G}"));
ability.addTarget(new TargetCreaturePermanent());
diff --git a/Mage.Sets/src/mage/cards/a/AshnodsAltar.java b/Mage.Sets/src/mage/cards/a/AshnodsAltar.java
index 513dd4068eb..3716f3ef244 100644
--- a/Mage.Sets/src/mage/cards/a/AshnodsAltar.java
+++ b/Mage.Sets/src/mage/cards/a/AshnodsAltar.java
@@ -11,7 +11,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -24,7 +24,7 @@ public final class AshnodsAltar extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}");
// Sacrifice a creature: Add {C}{C}.
- SacrificeTargetCost cost = new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
+ SacrificeTargetCost cost = new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT);
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD,
new BasicManaEffect(Mana.ColorlessMana(2), CreaturesYouControlCount.instance),
cost));
diff --git a/Mage.Sets/src/mage/cards/a/AvatarOfSlaughter.java b/Mage.Sets/src/mage/cards/a/AvatarOfSlaughter.java
index 9cb4ee5a170..7785ff2e6e3 100644
--- a/Mage.Sets/src/mage/cards/a/AvatarOfSlaughter.java
+++ b/Mage.Sets/src/mage/cards/a/AvatarOfSlaughter.java
@@ -15,7 +15,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.watchers.common.AttackedThisTurnWatcher;
/**
@@ -31,10 +31,10 @@ public final class AvatarOfSlaughter extends CardImpl {
this.toughness = new MageInt(8);
// All creatures have double strike and attack each turn if able.
- Effect effect = new GainAbilityAllEffect(DoubleStrikeAbility.getInstance(), Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES);
+ Effect effect = new GainAbilityAllEffect(DoubleStrikeAbility.getInstance(), Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES);
effect.setText("All creatures have double strike");
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
- effect = new AttacksIfAbleAllEffect(FILTER_PERMANENT_CREATURES);
+ effect = new AttacksIfAbleAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES);
effect.setText("and attack each combat if able");
ability.addEffect(effect);
this.addAbility(ability, new AttackedThisTurnWatcher());
diff --git a/Mage.Sets/src/mage/cards/b/BarrageOfBoulders.java b/Mage.Sets/src/mage/cards/b/BarrageOfBoulders.java
index 949cade1723..b1e8f553c28 100644
--- a/Mage.Sets/src/mage/cards/b/BarrageOfBoulders.java
+++ b/Mage.Sets/src/mage/cards/b/BarrageOfBoulders.java
@@ -15,8 +15,6 @@ import mage.filter.StaticFilters;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
-
/**
* @author LevelX2
*/
@@ -30,7 +28,7 @@ public final class BarrageOfBoulders extends CardImpl {
// Ferocious - If you control a creature with power 4 or greater, creatures can't block this turn
Effect effect = new ConditionalRestrictionEffect(
Duration.EndOfTurn,
- new CantBlockAllEffect(FILTER_PERMANENT_CREATURES, Duration.EndOfTurn),
+ new CantBlockAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES, Duration.EndOfTurn),
new LockedInCondition(FerociousCondition.instance), null);
effect.setText("
Ferocious — If you control a creature with power 4 or greater, creatures can't block this turn");
this.getSpellAbility().addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/b/BarrageOfExpendables.java b/Mage.Sets/src/mage/cards/b/BarrageOfExpendables.java
index 33616bc04c6..1d721deb475 100644
--- a/Mage.Sets/src/mage/cards/b/BarrageOfExpendables.java
+++ b/Mage.Sets/src/mage/cards/b/BarrageOfExpendables.java
@@ -11,7 +11,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -26,7 +26,7 @@ public final class BarrageOfExpendables extends CardImpl {
// {R}, Sacrifice a creature: Barrage of Expendables deals 1 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{R}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/b/BehindTheScenes.java b/Mage.Sets/src/mage/cards/b/BehindTheScenes.java
index 3d3d2ed33c6..fcb2ccf536e 100644
--- a/Mage.Sets/src/mage/cards/b/BehindTheScenes.java
+++ b/Mage.Sets/src/mage/cards/b/BehindTheScenes.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -26,11 +26,11 @@ public final class BehindTheScenes extends CardImpl {
// Creatures you control have skulk.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
- new GainAbilityControlledEffect(new SkulkAbility(), Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES)));
+ new GainAbilityControlledEffect(new SkulkAbility(), Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES)));
// {4}{W}: Creatures you control get +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
- new BoostControlledEffect(1, 1, Duration.EndOfTurn, FILTER_PERMANENT_CREATURES),
+ new BoostControlledEffect(1, 1, Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES),
new ManaCostsImpl<>("{4}{W}")));
}
diff --git a/Mage.Sets/src/mage/cards/b/BindingMummy.java b/Mage.Sets/src/mage/cards/b/BindingMummy.java
index 8e6c2e0622e..c9ef6c8b18a 100644
--- a/Mage.Sets/src/mage/cards/b/BindingMummy.java
+++ b/Mage.Sets/src/mage/cards/b/BindingMummy.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_ARTIFACT_OR_CREATURE;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.predicate.mageobject.AnotherPredicate;
import mage.target.TargetPermanent;
@@ -38,7 +38,7 @@ public final class BindingMummy extends CardImpl {
// Whenever another Zombie enters the battlefield under your control, you may tap target artifact or creature.
Ability ability = new EntersBattlefieldAllTriggeredAbility(Zone.BATTLEFIELD, new TapTargetEffect(), filter, true, null, true);
- ability.addTarget(new TargetPermanent(FILTER_PERMANENT_ARTIFACT_OR_CREATURE));
+ ability.addTarget(new TargetPermanent(StaticFilters.FILTER_PERMANENT_ARTIFACT_OR_CREATURE));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/b/BlackCarriage.java b/Mage.Sets/src/mage/cards/b/BlackCarriage.java
index fee00bb8ab0..cc08447ea89 100644
--- a/Mage.Sets/src/mage/cards/b/BlackCarriage.java
+++ b/Mage.Sets/src/mage/cards/b/BlackCarriage.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.PhaseStep;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -39,7 +39,7 @@ public final class BlackCarriage extends CardImpl {
// Sacrifice a creature: Untap Black Carriage. Activate this ability only during your upkeep.
this.addAbility(new ConditionalActivatedAbility(Zone.BATTLEFIELD,
- new UntapSourceEffect(), new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)),
+ new UntapSourceEffect(), new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT),
new IsStepCondition(PhaseStep.UPKEEP), "Sacrifice a creature: Untap {this}. Activate only during your upkeep."));
}
diff --git a/Mage.Sets/src/mage/cards/b/BlastingStation.java b/Mage.Sets/src/mage/cards/b/BlastingStation.java
index 95bc9414b18..c37507a7412 100644
--- a/Mage.Sets/src/mage/cards/b/BlastingStation.java
+++ b/Mage.Sets/src/mage/cards/b/BlastingStation.java
@@ -13,7 +13,6 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -29,7 +28,7 @@ public final class BlastingStation extends CardImpl {
// {tap}, Sacrifice a creature: Blasting Station deals 1 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/b/BlightedShaman.java b/Mage.Sets/src/mage/cards/b/BlightedShaman.java
index 62080443f39..785ea1d5789 100644
--- a/Mage.Sets/src/mage/cards/b/BlightedShaman.java
+++ b/Mage.Sets/src/mage/cards/b/BlightedShaman.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledPermanent;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetControlledPermanent;
@@ -47,7 +47,7 @@ public final class BlightedShaman extends CardImpl {
// {tap}, Sacrifice a creature: Target creature gets +2/+2 until end of turn.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(2, 2, Duration.EndOfTurn), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/b/BlindingFog.java b/Mage.Sets/src/mage/cards/b/BlindingFog.java
index 5a2c5290734..3149e68fc18 100644
--- a/Mage.Sets/src/mage/cards/b/BlindingFog.java
+++ b/Mage.Sets/src/mage/cards/b/BlindingFog.java
@@ -11,8 +11,6 @@ import mage.filter.StaticFilters;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURE;
-
/**
* @author LevelX2
*/
@@ -25,7 +23,7 @@ public final class BlindingFog extends CardImpl {
this.getSpellAbility().addEffect(new PreventAllDamageToAllEffect(Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES));
// Creatures you control gain hexproof until end of turn.
- this.getSpellAbility().addEffect(new GainAbilityControlledEffect(HexproofAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURE, false));
+ this.getSpellAbility().addEffect(new GainAbilityControlledEffect(HexproofAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURE, false));
}
private BlindingFog(final BlindingFog card) {
diff --git a/Mage.Sets/src/mage/cards/b/BloodDivination.java b/Mage.Sets/src/mage/cards/b/BloodDivination.java
index d53de3049a7..28bd23d1d18 100644
--- a/Mage.Sets/src/mage/cards/b/BloodDivination.java
+++ b/Mage.Sets/src/mage/cards/b/BloodDivination.java
@@ -6,7 +6,7 @@ import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -19,9 +19,7 @@ public final class BloodDivination extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{B}");
// As an additional cost to cast this spell, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(
- new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
- ));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Draw three cards.
this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(3));
diff --git a/Mage.Sets/src/mage/cards/b/BloodForBones.java b/Mage.Sets/src/mage/cards/b/BloodForBones.java
index 20532cf4c5f..3207e51c1b2 100644
--- a/Mage.Sets/src/mage/cards/b/BloodForBones.java
+++ b/Mage.Sets/src/mage/cards/b/BloodForBones.java
@@ -10,6 +10,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.FilterCard;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreatureCard;
import mage.game.Game;
import mage.players.Player;
@@ -18,8 +19,6 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author TheElk801
*/
@@ -29,9 +28,7 @@ public final class BloodForBones extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{B}");
// As an additional cost to cast this spell, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(
- new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
- ));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Return a creature card from your graveyard to the battlefield, then return another creature card from your graveyard to your hand.
this.getSpellAbility().addEffect(new BloodForBonesEffect());
@@ -88,4 +85,4 @@ class BloodForBonesEffect extends OneShotEffect {
}
return true;
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/b/BloodFunnel.java b/Mage.Sets/src/mage/cards/b/BloodFunnel.java
index c008eac6f5b..37b45e7845a 100644
--- a/Mage.Sets/src/mage/cards/b/BloodFunnel.java
+++ b/Mage.Sets/src/mage/cards/b/BloodFunnel.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.filter.FilterSpell;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.predicate.Predicates;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -39,7 +39,7 @@ public final class BloodFunnel extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 2)));
// Whenever you cast a noncreature spell, counter that spell unless you sacrifice a creature.
- Effect effect = new CounterUnlessPaysEffect(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ Effect effect = new CounterUnlessPaysEffect(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
effect.setText("counter that spell unless you sacrifice a creature");
this.addAbility(new SpellCastControllerTriggeredAbility(Zone.BATTLEFIELD,
effect,
diff --git a/Mage.Sets/src/mage/cards/b/BloodRites.java b/Mage.Sets/src/mage/cards/b/BloodRites.java
index 7350518d30d..64a84beb038 100644
--- a/Mage.Sets/src/mage/cards/b/BloodRites.java
+++ b/Mage.Sets/src/mage/cards/b/BloodRites.java
@@ -11,7 +11,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -24,7 +24,7 @@ public final class BloodRites extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{R}{R}");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{1}{R}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/b/BloodflowConnoisseur.java b/Mage.Sets/src/mage/cards/b/BloodflowConnoisseur.java
index def660f4333..a7af6d3bff2 100644
--- a/Mage.Sets/src/mage/cards/b/BloodflowConnoisseur.java
+++ b/Mage.Sets/src/mage/cards/b/BloodflowConnoisseur.java
@@ -12,12 +12,11 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.counters.CounterType;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author noxx
*/
@@ -31,9 +30,7 @@ public final class BloodflowConnoisseur extends CardImpl {
this.toughness = new MageInt(1);
// Sacrifice a creature: Put a +1/+1 counter on Bloodflow Connoisseur.
- Cost abilityCost = new SacrificeTargetCost(
- new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
- );
+ Cost abilityCost = new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT);
Ability ability = new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new AddCountersSourceEffect(CounterType.P1P1.createInstance()),
diff --git a/Mage.Sets/src/mage/cards/b/BloodshotCyclops.java b/Mage.Sets/src/mage/cards/b/BloodshotCyclops.java
index 64783b451de..c1ab150a888 100644
--- a/Mage.Sets/src/mage/cards/b/BloodshotCyclops.java
+++ b/Mage.Sets/src/mage/cards/b/BloodshotCyclops.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -35,7 +35,7 @@ public final class BloodshotCyclops extends CardImpl {
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new DamageTargetEffect(SacrificeCostCreaturesPower.instance).setText("{this} deals damage equal to the sacrificed creature's power to any target"),
new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/b/BloodthroneVampire.java b/Mage.Sets/src/mage/cards/b/BloodthroneVampire.java
index 6ab900dc126..8c0a6c19b11 100644
--- a/Mage.Sets/src/mage/cards/b/BloodthroneVampire.java
+++ b/Mage.Sets/src/mage/cards/b/BloodthroneVampire.java
@@ -12,7 +12,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -28,7 +28,7 @@ public final class BloodthroneVampire extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private BloodthroneVampire(final BloodthroneVampire card) {
diff --git a/Mage.Sets/src/mage/cards/b/BoneSplinters.java b/Mage.Sets/src/mage/cards/b/BoneSplinters.java
index 040ee7b1b05..e00997608fe 100644
--- a/Mage.Sets/src/mage/cards/b/BoneSplinters.java
+++ b/Mage.Sets/src/mage/cards/b/BoneSplinters.java
@@ -6,7 +6,7 @@ import mage.abilities.effects.common.DestroyTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreaturePermanent;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -21,7 +21,7 @@ public final class BoneSplinters extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{B}");
// As an additional cost to cast Bone Splinters, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Destroy target creature.
this.getSpellAbility().addTarget(new TargetCreaturePermanent().withChooseHint("to destroy"));
this.getSpellAbility().addEffect(new DestroyTargetEffect());
diff --git a/Mage.Sets/src/mage/cards/b/BontusMonument.java b/Mage.Sets/src/mage/cards/b/BontusMonument.java
index fafe54ecb9b..bcf823b7e54 100644
--- a/Mage.Sets/src/mage/cards/b/BontusMonument.java
+++ b/Mage.Sets/src/mage/cards/b/BontusMonument.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.SuperType;
import mage.constants.Zone;
import mage.filter.FilterCard;
-import static mage.filter.StaticFilters.FILTER_SPELL_A_CREATURE;
+import mage.filter.StaticFilters;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.ColorPredicate;
@@ -41,7 +41,7 @@ public final class BontusMonument extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 1)));
// Whenever you cast a creature spell, each opponent loses 1 life and you gain 1 life.
- Ability ability = new SpellCastControllerTriggeredAbility(new LoseLifeOpponentsEffect(1), FILTER_SPELL_A_CREATURE, false);
+ Ability ability = new SpellCastControllerTriggeredAbility(new LoseLifeOpponentsEffect(1), StaticFilters.FILTER_SPELL_A_CREATURE, false);
Effect effect = new GainLifeEffect(1);
effect.setText("and you gain 1 life");
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/b/BrainGorgers.java b/Mage.Sets/src/mage/cards/b/BrainGorgers.java
index 0f9842996af..5338c43803e 100644
--- a/Mage.Sets/src/mage/cards/b/BrainGorgers.java
+++ b/Mage.Sets/src/mage/cards/b/BrainGorgers.java
@@ -15,7 +15,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.stack.Spell;
import mage.players.Player;
@@ -70,7 +70,7 @@ class BrainGorgersCounterSourceEffect extends OneShotEffect {
public boolean apply(Game game, Ability source) {
MageObject sourceObject = source.getSourceObject(game);
if (sourceObject != null) {
- SacrificeTargetCost cost = new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
+ SacrificeTargetCost cost = new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT);
for (UUID playerId : game.getState().getPlayerList(source.getControllerId())) {
cost.clearPaid();
Player player = game.getPlayer(playerId);
diff --git a/Mage.Sets/src/mage/cards/b/BreakingPoint.java b/Mage.Sets/src/mage/cards/b/BreakingPoint.java
index 29efe1f3e33..a5d60c98849 100644
--- a/Mage.Sets/src/mage/cards/b/BreakingPoint.java
+++ b/Mage.Sets/src/mage/cards/b/BreakingPoint.java
@@ -6,6 +6,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.game.stack.Spell;
@@ -14,8 +15,6 @@ import mage.players.Player;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
-
/**
* @author ilcartographer
*/
@@ -78,7 +77,7 @@ class BreakingPointDestroyEffect extends OneShotEffect {
}
}
if (destroyCreatures) {
- for (Permanent permanent : game.getBattlefield().getActivePermanents(FILTER_PERMANENT_CREATURES, source.getControllerId(), source, game)) {
+ for (Permanent permanent : game.getBattlefield().getActivePermanents(StaticFilters.FILTER_PERMANENT_CREATURES, source.getControllerId(), source, game)) {
permanent.destroy(source, game, true);
}
}
diff --git a/Mage.Sets/src/mage/cards/b/BrineShaman.java b/Mage.Sets/src/mage/cards/b/BrineShaman.java
index c67730edb5e..22fa0e86aea 100644
--- a/Mage.Sets/src/mage/cards/b/BrineShaman.java
+++ b/Mage.Sets/src/mage/cards/b/BrineShaman.java
@@ -20,8 +20,6 @@ import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author TheElk801
*/
@@ -36,13 +34,13 @@ public final class BrineShaman extends CardImpl {
// {tap}, Sacrifice a creature: Target creature gets +2/+2 until end of turn.
Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(2, 2), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
// {1}{U}{U}, Sacrifice a creature: Counter target creature spell.
ability = new SimpleActivatedAbility(new CounterTargetEffect(), new ManaCostsImpl<>("{1}{U}{U}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_CREATURE));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/b/BroodButcher.java b/Mage.Sets/src/mage/cards/b/BroodButcher.java
index c6f032ccaca..830fc44a07d 100644
--- a/Mage.Sets/src/mage/cards/b/BroodButcher.java
+++ b/Mage.Sets/src/mage/cards/b/BroodButcher.java
@@ -17,7 +17,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.permanent.token.EldraziScionToken;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -42,7 +42,7 @@ public final class BroodButcher extends CardImpl {
// {B}{G}, Sacrifice a creature: Target creature gets -2/-2 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-2, -2, Duration.EndOfTurn), new ManaCostsImpl<>("{B}{G}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/b/BroodOfCockroaches.java b/Mage.Sets/src/mage/cards/b/BroodOfCockroaches.java
index 0f0ba127706..d479b354989 100644
--- a/Mage.Sets/src/mage/cards/b/BroodOfCockroaches.java
+++ b/Mage.Sets/src/mage/cards/b/BroodOfCockroaches.java
@@ -12,14 +12,13 @@ import mage.abilities.effects.common.ReturnToHandTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
+import mage.constants.Outcome;
import mage.constants.SubType;
import mage.game.Game;
import mage.target.targetpointer.FixedTarget;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author mpouedras
*/
@@ -53,7 +52,7 @@ class BroodOfCockroachesEffect extends OneShotEffect {
private static final String effectText = "at the beginning of the next end step, you lose 1 life and return {this} to your hand.";
BroodOfCockroachesEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = effectText;
}
@@ -80,4 +79,4 @@ class BroodOfCockroachesEffect extends OneShotEffect {
public Effect copy() {
return new BroodOfCockroachesEffect(this);
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/b/BubblingCauldron.java b/Mage.Sets/src/mage/cards/b/BubblingCauldron.java
index 560340722e7..21575283e5e 100644
--- a/Mage.Sets/src/mage/cards/b/BubblingCauldron.java
+++ b/Mage.Sets/src/mage/cards/b/BubblingCauldron.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.filter.predicate.mageobject.NamePredicate;
import mage.game.Game;
@@ -38,7 +38,7 @@ public final class BubblingCauldron extends CardImpl {
// {1}, {T}, Sacrifice a creature: You gain 4 life.
Ability ability1 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(4), new ManaCostsImpl<>("{1}"));
ability1.addCost(new TapSourceCost());
- ability1.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability1.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability1);
// {1}, {T}, Sacrifice a creature named Festering Newt: Each opponent loses 4 life. You gain life equal to the life lost this way.
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BubblingCauldronEffect(), new ManaCostsImpl<>("{1}"));
diff --git a/Mage.Sets/src/mage/cards/b/BurntOffering.java b/Mage.Sets/src/mage/cards/b/BurntOffering.java
index d1b4389bbe8..2695188be5f 100644
--- a/Mage.Sets/src/mage/cards/b/BurntOffering.java
+++ b/Mage.Sets/src/mage/cards/b/BurntOffering.java
@@ -9,7 +9,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -22,7 +22,7 @@ public final class BurntOffering extends CardImpl {
super(ownerID, setInfo, new CardType[]{CardType.INSTANT}, "{B}");
//As an additional cost to cast Burnt Offering, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
//Add an amount of {B} and/or {R} equal to the sacrificed creature's converted mana cost.
SacrificeCostConvertedMana xValue = new SacrificeCostConvertedMana("creature");
this.getSpellAbility().addEffect(new AddManaInAnyCombinationEffect(
diff --git a/Mage.Sets/src/mage/cards/c/CabalPatriarch.java b/Mage.Sets/src/mage/cards/c/CabalPatriarch.java
index 2084fd0274a..6665a7a24ae 100644
--- a/Mage.Sets/src/mage/cards/c/CabalPatriarch.java
+++ b/Mage.Sets/src/mage/cards/c/CabalPatriarch.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreatureCard;
import mage.target.common.TargetCardInYourGraveyard;
import mage.target.common.TargetControlledPermanent;
@@ -35,7 +35,7 @@ public final class CabalPatriarch extends CardImpl {
// {2}{B}, Sacrifice a creature: Target creature gets -2/-2 until end of turn.
Ability ability1 = new SimpleActivatedAbility(new BoostTargetEffect(-2, -2), new ManaCostsImpl<>("{2}{B}"));
- ability1.addCost(new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability1.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability1.addTarget(new TargetCreaturePermanent().withChooseHint("gets -2/-2"));
this.addAbility(ability1);
diff --git a/Mage.Sets/src/mage/cards/c/CalixDestinysHand.java b/Mage.Sets/src/mage/cards/c/CalixDestinysHand.java
index 6f4eced6acb..648f0134504 100644
--- a/Mage.Sets/src/mage/cards/c/CalixDestinysHand.java
+++ b/Mage.Sets/src/mage/cards/c/CalixDestinysHand.java
@@ -27,7 +27,6 @@ import mage.target.targetpointer.FixedTarget;
import java.util.UUID;
import java.util.stream.Collectors;
-import static mage.constants.Outcome.Benefit;
import mage.util.CardUtil;
/**
@@ -88,7 +87,7 @@ public final class CalixDestinysHand extends CardImpl {
class CalixDestinysHandExileEffect extends OneShotEffect {
CalixDestinysHandExileEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "Exile target creature or enchantment you don't control "
+ "until target enchantment you control leaves the battlefield.";
}
@@ -172,7 +171,7 @@ class CalixDestinysHandDelayedTriggeredAbility extends DelayedTriggeredAbility {
class CalixDestinysHandReturnEffect extends OneShotEffect {
CalixDestinysHandReturnEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "return all enchantment cards from your graveyard to the battlefield";
}
diff --git a/Mage.Sets/src/mage/cards/c/CallForBlood.java b/Mage.Sets/src/mage/cards/c/CallForBlood.java
index e3a414c7d95..09fec405bde 100644
--- a/Mage.Sets/src/mage/cards/c/CallForBlood.java
+++ b/Mage.Sets/src/mage/cards/c/CallForBlood.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -28,7 +28,7 @@ public final class CallForBlood extends CardImpl {
this.subtype.add(SubType.ARCANE);
// As an additional cost to cast this spell, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Target creature gets -X/-X until end of turn, where X is the sacrificed creature's power.
this.getSpellAbility().addEffect(new BoostTargetEffect(xValue, xValue, Duration.EndOfTurn));
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
diff --git a/Mage.Sets/src/mage/cards/c/Caregiver.java b/Mage.Sets/src/mage/cards/c/Caregiver.java
index 53114640a40..fad906a0c0c 100644
--- a/Mage.Sets/src/mage/cards/c/Caregiver.java
+++ b/Mage.Sets/src/mage/cards/c/Caregiver.java
@@ -15,7 +15,7 @@ import mage.constants.ColoredManaSymbol;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -35,7 +35,7 @@ public final class Caregiver extends CardImpl {
// {W}, Sacrifice a creature: Prevent the next 1 damage that would be dealt to any target this turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventDamageToTargetEffect(Duration.EndOfTurn, 1), new ColoredManaCost(ColoredManaSymbol.W));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/c/CarnageAltar.java b/Mage.Sets/src/mage/cards/c/CarnageAltar.java
index 438780add09..acdc897bb32 100644
--- a/Mage.Sets/src/mage/cards/c/CarnageAltar.java
+++ b/Mage.Sets/src/mage/cards/c/CarnageAltar.java
@@ -10,7 +10,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -23,7 +23,7 @@ public final class CarnageAltar extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new GenericManaCost(3));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/c/Carrion.java b/Mage.Sets/src/mage/cards/c/Carrion.java
index 3451dc0ffcd..8e6b8e54fa1 100644
--- a/Mage.Sets/src/mage/cards/c/Carrion.java
+++ b/Mage.Sets/src/mage/cards/c/Carrion.java
@@ -8,7 +8,7 @@ import mage.abilities.effects.common.CreateTokenEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.permanent.token.CarrionBlackInsectToken;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -22,7 +22,7 @@ public final class Carrion extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{B}{B}");
// As an additional cost to cast Carrion, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Put X 0/1 black Insect creature tokens onto the battlefield, where X is the sacrificed creature's power.
this.getSpellAbility().addEffect(new CreateTokenEffect(new CarrionBlackInsectToken(), SacrificeCostCreaturesPower.instance));
diff --git a/Mage.Sets/src/mage/cards/c/CarrionFeeder.java b/Mage.Sets/src/mage/cards/c/CarrionFeeder.java
index 328cd7545b0..9580cba818b 100644
--- a/Mage.Sets/src/mage/cards/c/CarrionFeeder.java
+++ b/Mage.Sets/src/mage/cards/c/CarrionFeeder.java
@@ -13,7 +13,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -34,7 +34,7 @@ public final class CarrionFeeder extends CardImpl {
// Sacrifice a creature: Put a +1/+1 counter on Carrion Feeder.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
new AddCountersSourceEffect(CounterType.P1P1.createInstance()),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private CarrionFeeder(final CarrionFeeder card) {
diff --git a/Mage.Sets/src/mage/cards/c/CateranOverlord.java b/Mage.Sets/src/mage/cards/c/CateranOverlord.java
index 267e6b26648..7f3d1df4f75 100644
--- a/Mage.Sets/src/mage/cards/c/CateranOverlord.java
+++ b/Mage.Sets/src/mage/cards/c/CateranOverlord.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.ComparisonType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterPermanentCard;
import mage.filter.predicate.mageobject.ManaValuePredicate;
import mage.target.common.TargetCardInLibrary;
@@ -45,7 +45,7 @@ public final class CateranOverlord extends CardImpl {
// Sacrifice a creature: Regenerate Cateran Overlord.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
// {6}, {T}: Search your library for a Mercenary permanent card with converted mana cost 6 or less and put it onto the battlefield. Then shuffle your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
diff --git a/Mage.Sets/src/mage/cards/c/ChandraAcolyteOfFlame.java b/Mage.Sets/src/mage/cards/c/ChandraAcolyteOfFlame.java
index 385c92440c3..8f8533aef66 100644
--- a/Mage.Sets/src/mage/cards/c/ChandraAcolyteOfFlame.java
+++ b/Mage.Sets/src/mage/cards/c/ChandraAcolyteOfFlame.java
@@ -32,8 +32,6 @@ import mage.target.targetpointer.FixedTarget;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -81,7 +79,7 @@ public final class ChandraAcolyteOfFlame extends CardImpl {
class ChandraAcolyteOfFlameEffect extends OneShotEffect {
ChandraAcolyteOfFlameEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "Create two 1/1 red Elemental creature tokens. They gain haste. " +
"Sacrifice them at the beginning of the next end step.";
}
@@ -125,7 +123,7 @@ class ChandraAcolyteOfFlameEffect extends OneShotEffect {
class ChandraAcolyteOfFlameGraveyardEffect extends OneShotEffect {
ChandraAcolyteOfFlameGraveyardEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
this.staticText = "You may cast target instant or sorcery card " +
"with mana value 3 or less from your graveyard this turn. " +
"If that card would be put into your graveyard this turn, exile it instead";
@@ -158,7 +156,7 @@ class ChandraAcolyteOfFlameGraveyardEffect extends OneShotEffect {
class ChandraAcolyteOfFlameCastFromGraveyardEffect extends AsThoughEffectImpl {
ChandraAcolyteOfFlameCastFromGraveyardEffect() {
- super(AsThoughEffectType.PLAY_FROM_NOT_OWN_HAND_ZONE, Duration.EndOfTurn, Benefit);
+ super(AsThoughEffectType.PLAY_FROM_NOT_OWN_HAND_ZONE, Duration.EndOfTurn, Outcome.Benefit);
}
private ChandraAcolyteOfFlameCastFromGraveyardEffect(final ChandraAcolyteOfFlameCastFromGraveyardEffect effect) {
diff --git a/Mage.Sets/src/mage/cards/c/ChasmGuide.java b/Mage.Sets/src/mage/cards/c/ChasmGuide.java
index a1c508eb4b0..9220e9df078 100644
--- a/Mage.Sets/src/mage/cards/c/ChasmGuide.java
+++ b/Mage.Sets/src/mage/cards/c/ChasmGuide.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -29,7 +29,7 @@ public final class ChasmGuide extends CardImpl {
// Rally — Whenever Chasm Guide or another Ally enters the battlefield under your control, creatures you control gain haste until end of turn.
this.addAbility(new AllyEntersBattlefieldTriggeredAbility(
- new GainAbilityControlledEffect(HasteAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES), false));
+ new GainAbilityControlledEffect(HasteAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES), false));
}
private ChasmGuide(final ChasmGuide card) {
diff --git a/Mage.Sets/src/mage/cards/c/ChitteringWitch.java b/Mage.Sets/src/mage/cards/c/ChitteringWitch.java
index b81bce12520..dc17fd5dce9 100644
--- a/Mage.Sets/src/mage/cards/c/ChitteringWitch.java
+++ b/Mage.Sets/src/mage/cards/c/ChitteringWitch.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.permanent.token.RatToken;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -44,7 +44,7 @@ public final class ChitteringWitch extends CardImpl {
// {1}{B}, Sacrifice a creature: Target creature gets -2/-2 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-2, -2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/c/ChokingVines.java b/Mage.Sets/src/mage/cards/c/ChokingVines.java
index 14c313e65b2..f4eb738e9ca 100644
--- a/Mage.Sets/src/mage/cards/c/ChokingVines.java
+++ b/Mage.Sets/src/mage/cards/c/ChokingVines.java
@@ -8,14 +8,13 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.PhaseStep;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.target.common.TargetCreaturePermanent;
import mage.target.targetadjustment.TargetAdjuster;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_ATTACKING_CREATURES;
-
/**
* @author arcox
*/
@@ -53,6 +52,6 @@ enum ChokingVinesAdjuster implements TargetAdjuster {
public void adjustTargets(Ability ability, Game game) {
ability.getTargets().clear();
int x = ability.getManaCostsToPay().getX();
- ability.addTarget(new TargetCreaturePermanent(x, x, FILTER_ATTACKING_CREATURES, false));
+ ability.addTarget(new TargetCreaturePermanent(x, x, StaticFilters.FILTER_ATTACKING_CREATURES, false));
}
}
diff --git a/Mage.Sets/src/mage/cards/c/CollateralDamage.java b/Mage.Sets/src/mage/cards/c/CollateralDamage.java
index 12d16424491..cdae36b13f4 100644
--- a/Mage.Sets/src/mage/cards/c/CollateralDamage.java
+++ b/Mage.Sets/src/mage/cards/c/CollateralDamage.java
@@ -7,7 +7,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -21,7 +21,7 @@ public final class CollateralDamage extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{R}");
// As an additional cost to cast Collateral Damge, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Collateral Damage deals 3 damage to any target.
this.getSpellAbility().addTarget(new TargetAnyTarget());
diff --git a/Mage.Sets/src/mage/cards/c/Contamination.java b/Mage.Sets/src/mage/cards/c/Contamination.java
index 154fcb2d82a..cc96c3eaa06 100644
--- a/Mage.Sets/src/mage/cards/c/Contamination.java
+++ b/Mage.Sets/src/mage/cards/c/Contamination.java
@@ -10,6 +10,7 @@ import mage.abilities.effects.common.SacrificeSourceUnlessPaysEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.ManaEvent;
@@ -19,8 +20,6 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author emerald000
*/
@@ -31,9 +30,7 @@ public final class Contamination extends CardImpl {
// At the beginning of your upkeep, sacrifice Contamination unless you sacrifice a creature.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(
- new SacrificeSourceUnlessPaysEffect(new SacrificeTargetCost(
- new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
- )), TargetController.YOU, false)
+ new SacrificeSourceUnlessPaysEffect(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)), TargetController.YOU, false)
);
// If a land is tapped for mana, it produces {B} instead of any other type and amount.
diff --git a/Mage.Sets/src/mage/cards/c/CorpseHarvester.java b/Mage.Sets/src/mage/cards/c/CorpseHarvester.java
index 414d5560230..f16d137cb50 100644
--- a/Mage.Sets/src/mage/cards/c/CorpseHarvester.java
+++ b/Mage.Sets/src/mage/cards/c/CorpseHarvester.java
@@ -12,6 +12,7 @@ import mage.cards.*;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterCard;
+import mage.filter.StaticFilters;
import mage.filter.predicate.Predicates;
import mage.game.Game;
import mage.target.common.TargetCardInLibrary;
@@ -19,8 +20,6 @@ import mage.target.common.TargetControlledPermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author jeffwadsworth
*/
@@ -40,7 +39,7 @@ public final class CorpseHarvester extends CardImpl {
new CorpseHarvesterTarget(), true
).setText(ruleText), new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/c/CorpseTraders.java b/Mage.Sets/src/mage/cards/c/CorpseTraders.java
index f6d66debc8e..adb4cf5a3ca 100644
--- a/Mage.Sets/src/mage/cards/c/CorpseTraders.java
+++ b/Mage.Sets/src/mage/cards/c/CorpseTraders.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetOpponent;
@@ -33,7 +33,7 @@ public final class CorpseTraders extends CardImpl {
// {2}{B}, Sacrifice a creature: Target opponent reveals their hand. You choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery.
Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardCardYouChooseTargetEffect(), new ManaCostsImpl<>("{2}{B}"));
ability.addTarget(new TargetOpponent());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/c/CorruptedHarvester.java b/Mage.Sets/src/mage/cards/c/CorruptedHarvester.java
index 3b190689edc..9b702150a05 100644
--- a/Mage.Sets/src/mage/cards/c/CorruptedHarvester.java
+++ b/Mage.Sets/src/mage/cards/c/CorruptedHarvester.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -30,7 +30,7 @@ public final class CorruptedHarvester extends CardImpl {
this.power = new MageInt(6);
this.toughness = new MageInt(3);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/c/CullingDais.java b/Mage.Sets/src/mage/cards/c/CullingDais.java
index 83d1bc04a62..db0c24ba315 100644
--- a/Mage.Sets/src/mage/cards/c/CullingDais.java
+++ b/Mage.Sets/src/mage/cards/c/CullingDais.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
@@ -31,7 +31,7 @@ public final class CullingDais extends CardImpl {
public CullingDais(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CullingDaisEffect(), new GenericManaCost(1));
ability.addCost(new SacrificeSourceCost());
diff --git a/Mage.Sets/src/mage/cards/c/CullingTheWeak.java b/Mage.Sets/src/mage/cards/c/CullingTheWeak.java
index 2b75d11044e..61e1dbbeb66 100644
--- a/Mage.Sets/src/mage/cards/c/CullingTheWeak.java
+++ b/Mage.Sets/src/mage/cards/c/CullingTheWeak.java
@@ -8,7 +8,7 @@ import mage.abilities.effects.mana.BasicManaEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -21,7 +21,7 @@ public final class CullingTheWeak extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{B}");
// As an additional cost to cast Culling the Weak, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Add {B}{B}{B}{B}.
this.getSpellAbility().addEffect(new BasicManaEffect(Mana.BlackMana(4)));
diff --git a/Mage.Sets/src/mage/cards/c/CurtainsCall.java b/Mage.Sets/src/mage/cards/c/CurtainsCall.java
index 389964ef2b0..8b9c310c7b4 100644
--- a/Mage.Sets/src/mage/cards/c/CurtainsCall.java
+++ b/Mage.Sets/src/mage/cards/c/CurtainsCall.java
@@ -7,7 +7,6 @@ import mage.abilities.keyword.UndauntedAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
import mage.target.common.TargetCreaturePermanent;
/**
@@ -23,7 +22,7 @@ public final class CurtainsCall extends CardImpl {
this.addAbility(new UndauntedAbility());
// Destroy two target creatures.
this.getSpellAbility().addEffect(new DestroyTargetEffect());
- this.getSpellAbility().addTarget(new TargetCreaturePermanent(2, 2, FILTER_PERMANENT_CREATURES, false));
+ this.getSpellAbility().addTarget(new TargetCreaturePermanent(2));
}
private CurtainsCall(final CurtainsCall card) {
diff --git a/Mage.Sets/src/mage/cards/d/Damn.java b/Mage.Sets/src/mage/cards/d/Damn.java
index 896049062cb..3f556e82b5e 100644
--- a/Mage.Sets/src/mage/cards/d/Damn.java
+++ b/Mage.Sets/src/mage/cards/d/Damn.java
@@ -7,12 +7,11 @@ import mage.abilities.keyword.OverloadAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
+import mage.filter.StaticFilters;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
-
/**
* @author jmharmon
*/
@@ -30,7 +29,7 @@ public final class Damn extends CardImpl {
// Overload {2}{W}{W} (You may cast this spell for its overload cost. If you do, change its text by replacing all instances of “target” with “each.”)
this.addAbility(new OverloadAbility(
this,
- new DestroyAllEffect(FILTER_PERMANENT_CREATURES, true),
+ new DestroyAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES, true),
new ManaCostsImpl<>("{2}{W}{W}")
));
}
diff --git a/Mage.Sets/src/mage/cards/d/Damnation.java b/Mage.Sets/src/mage/cards/d/Damnation.java
index 4cb387ac160..b3fdc21718b 100644
--- a/Mage.Sets/src/mage/cards/d/Damnation.java
+++ b/Mage.Sets/src/mage/cards/d/Damnation.java
@@ -6,7 +6,7 @@ import mage.abilities.effects.common.DestroyAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -18,7 +18,7 @@ public final class Damnation extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{B}{B}");
// Destroy all creatures. They can't be regenerated.
- this.getSpellAbility().addEffect(new DestroyAllEffect(FILTER_PERMANENT_CREATURES, true));
+ this.getSpellAbility().addEffect(new DestroyAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES, true));
}
private Damnation(final Damnation card) {
diff --git a/Mage.Sets/src/mage/cards/d/DarkPrivilege.java b/Mage.Sets/src/mage/cards/d/DarkPrivilege.java
index 25cf81aac62..3364b9edb8e 100644
--- a/Mage.Sets/src/mage/cards/d/DarkPrivilege.java
+++ b/Mage.Sets/src/mage/cards/d/DarkPrivilege.java
@@ -20,7 +20,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -46,7 +46,7 @@ public final class DarkPrivilege extends CardImpl {
// Sacrifice a creature: Regenerate enchanted creature.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAttachedEffect(AttachmentType.AURA),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
diff --git a/Mage.Sets/src/mage/cards/d/DarkTriumph.java b/Mage.Sets/src/mage/cards/d/DarkTriumph.java
index e56bed8f9c1..7d927411ce6 100644
--- a/Mage.Sets/src/mage/cards/d/DarkTriumph.java
+++ b/Mage.Sets/src/mage/cards/d/DarkTriumph.java
@@ -12,12 +12,11 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.FilterPermanent;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author TheElk801
*/
@@ -32,9 +31,7 @@ public final class DarkTriumph extends CardImpl {
// If you control a Swamp, you may sacrifice a creature rather than pay Dark Triumph's mana cost.
this.addAbility(new AlternativeCostSourceAbility(
- new SacrificeTargetCost(
- new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
- ), condition
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT), condition
));
// Creatures you control get +2/+0 until end of turn.
diff --git a/Mage.Sets/src/mage/cards/d/DawnglareInvoker.java b/Mage.Sets/src/mage/cards/d/DawnglareInvoker.java
index bf0df0e9c07..69308dc999a 100644
--- a/Mage.Sets/src/mage/cards/d/DawnglareInvoker.java
+++ b/Mage.Sets/src/mage/cards/d/DawnglareInvoker.java
@@ -12,7 +12,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.target.TargetPlayer;
/**
@@ -31,7 +31,7 @@ public final class DawnglareInvoker extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
- new TapAllTargetPlayerControlsEffect(FILTER_PERMANENT_CREATURES),
+ new TapAllTargetPlayerControlsEffect(StaticFilters.FILTER_PERMANENT_CREATURES),
new ManaCostsImpl<>("{8}"));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/d/DemonOfCatastrophes.java b/Mage.Sets/src/mage/cards/d/DemonOfCatastrophes.java
index a3689db58b7..928e32f6a24 100644
--- a/Mage.Sets/src/mage/cards/d/DemonOfCatastrophes.java
+++ b/Mage.Sets/src/mage/cards/d/DemonOfCatastrophes.java
@@ -9,7 +9,7 @@ import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -26,7 +26,7 @@ public final class DemonOfCatastrophes extends CardImpl {
this.toughness = new MageInt(6);
// As an additional cost to cast this spell, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Flying
this.addAbility(FlyingAbility.getInstance());
diff --git a/Mage.Sets/src/mage/cards/d/DemonmailHauberk.java b/Mage.Sets/src/mage/cards/d/DemonmailHauberk.java
index 4bc19d2f04a..b099c80ef19 100644
--- a/Mage.Sets/src/mage/cards/d/DemonmailHauberk.java
+++ b/Mage.Sets/src/mage/cards/d/DemonmailHauberk.java
@@ -12,7 +12,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -31,7 +31,7 @@ public final class DemonmailHauberk extends CardImpl {
// Equip - Sacrifice a creature.
this.addAbility(new EquipAbility(
Outcome.AddAbility,
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)),
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT),
false));
}
diff --git a/Mage.Sets/src/mage/cards/d/DevouringStrossus.java b/Mage.Sets/src/mage/cards/d/DevouringStrossus.java
index b43ed0486ec..f08b8caec45 100644
--- a/Mage.Sets/src/mage/cards/d/DevouringStrossus.java
+++ b/Mage.Sets/src/mage/cards/d/DevouringStrossus.java
@@ -17,7 +17,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.TargetController;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -44,7 +44,7 @@ public final class DevouringStrossus extends CardImpl {
this.addAbility(ability);
// Sacrifice a creature: Regenerate Devouring Strossus.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private DevouringStrossus(final DevouringStrossus card) {
diff --git a/Mage.Sets/src/mage/cards/d/DevouringSwarm.java b/Mage.Sets/src/mage/cards/d/DevouringSwarm.java
index a7122ed05c5..b3fe66628cd 100644
--- a/Mage.Sets/src/mage/cards/d/DevouringSwarm.java
+++ b/Mage.Sets/src/mage/cards/d/DevouringSwarm.java
@@ -13,7 +13,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -29,7 +29,7 @@ public final class DevouringSwarm extends CardImpl {
this.toughness = new MageInt(1);
this.addAbility(FlyingAbility.getInstance());
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private DevouringSwarm(final DevouringSwarm card) {
diff --git a/Mage.Sets/src/mage/cards/d/DiabolicIntent.java b/Mage.Sets/src/mage/cards/d/DiabolicIntent.java
index b76965f727b..a9b2910df56 100644
--- a/Mage.Sets/src/mage/cards/d/DiabolicIntent.java
+++ b/Mage.Sets/src/mage/cards/d/DiabolicIntent.java
@@ -7,7 +7,7 @@ import mage.abilities.effects.common.search.SearchLibraryPutInHandEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetCardInLibrary;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -21,7 +21,7 @@ public final class DiabolicIntent extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{B}");
// As an additional cost to cast Diabolic Intent, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Search your library for a card and put that card into your hand. Then shuffle your library.
this.getSpellAbility().addEffect(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(), false, true));
diff --git a/Mage.Sets/src/mage/cards/d/DiamondValley.java b/Mage.Sets/src/mage/cards/d/DiamondValley.java
index 08b5919c856..b280048c6ea 100644
--- a/Mage.Sets/src/mage/cards/d/DiamondValley.java
+++ b/Mage.Sets/src/mage/cards/d/DiamondValley.java
@@ -13,7 +13,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -28,7 +28,7 @@ public final class DiamondValley extends CardImpl {
Effect effect = new GainLifeEffect(SacrificeCostCreaturesToughness.instance);
effect.setText("You gain life equal to the sacrificed creature's toughness");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/d/DimirHouseGuard.java b/Mage.Sets/src/mage/cards/d/DimirHouseGuard.java
index 743f4244993..bce301e67b9 100644
--- a/Mage.Sets/src/mage/cards/d/DimirHouseGuard.java
+++ b/Mage.Sets/src/mage/cards/d/DimirHouseGuard.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -32,7 +32,7 @@ public final class DimirHouseGuard extends CardImpl {
this.addAbility(FearAbility.getInstance());
// Sacrifice a creature: Regenerate Dimir House Guard.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
// Transmute {1}{B}{B}
this.addAbility(new TransmuteAbility("{1}{B}{B}"));
}
diff --git a/Mage.Sets/src/mage/cards/d/DiscipleOfGriselbrand.java b/Mage.Sets/src/mage/cards/d/DiscipleOfGriselbrand.java
index c6625df4c06..7c85f8b0b1f 100644
--- a/Mage.Sets/src/mage/cards/d/DiscipleOfGriselbrand.java
+++ b/Mage.Sets/src/mage/cards/d/DiscipleOfGriselbrand.java
@@ -15,7 +15,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -36,7 +36,7 @@ public final class DiscipleOfGriselbrand extends CardImpl {
// {1}, Sacrifice a creature: You gain life equal to the sacrificed creature's toughness.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DiscipleOfGriselbrandEffect(), new GenericManaCost(1));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/d/DivergentTransformations.java b/Mage.Sets/src/mage/cards/d/DivergentTransformations.java
index a9dcaae9237..d092653d8b2 100644
--- a/Mage.Sets/src/mage/cards/d/DivergentTransformations.java
+++ b/Mage.Sets/src/mage/cards/d/DivergentTransformations.java
@@ -10,7 +10,6 @@ import mage.cards.*;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
@@ -29,7 +28,7 @@ public final class DivergentTransformations extends CardImpl {
this.addAbility(new UndauntedAbility());
// Exile two target creatures. For each of those creatures, its controller reveals cards from the top of their library until they reveal a creature card, puts that card onto the battlefield, then shuffles the rest into their library.
this.getSpellAbility().addEffect(new DivergentTransformationsEffect());
- this.getSpellAbility().addTarget(new TargetCreaturePermanent(2, 2, FILTER_PERMANENT_CREATURES, false));
+ this.getSpellAbility().addTarget(new TargetCreaturePermanent(2));
}
diff --git a/Mage.Sets/src/mage/cards/d/DrogskolShieldmate.java b/Mage.Sets/src/mage/cards/d/DrogskolShieldmate.java
index fd0c1e4a1f7..9246eba3768 100644
--- a/Mage.Sets/src/mage/cards/d/DrogskolShieldmate.java
+++ b/Mage.Sets/src/mage/cards/d/DrogskolShieldmate.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -31,7 +31,7 @@ public final class DrogskolShieldmate extends CardImpl {
// When Drogskol Shieldmate enters the battlefield, other creatures you control get +0/+1 until end of turn.
this.addAbility(new EntersBattlefieldTriggeredAbility(
- new BoostControlledEffect(0, 1, Duration.EndOfTurn, FILTER_PERMANENT_CREATURES, true), false));
+ new BoostControlledEffect(0, 1, Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES, true), false));
}
private DrogskolShieldmate(final DrogskolShieldmate card) {
diff --git a/Mage.Sets/src/mage/cards/d/DrossHopper.java b/Mage.Sets/src/mage/cards/d/DrossHopper.java
index e6e7436661f..7c0b33439ac 100644
--- a/Mage.Sets/src/mage/cards/d/DrossHopper.java
+++ b/Mage.Sets/src/mage/cards/d/DrossHopper.java
@@ -13,7 +13,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -32,7 +32,7 @@ public final class DrossHopper extends CardImpl {
this.toughness = new MageInt(1);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private DrossHopper(final DrossHopper card) {
diff --git a/Mage.Sets/src/mage/cards/d/DrownedRusalka.java b/Mage.Sets/src/mage/cards/d/DrownedRusalka.java
index 29e753afce7..8f39f37789e 100644
--- a/Mage.Sets/src/mage/cards/d/DrownedRusalka.java
+++ b/Mage.Sets/src/mage/cards/d/DrownedRusalka.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -32,7 +32,7 @@ public final class DrownedRusalka extends CardImpl {
// {U}, Sacrifice a creature: Discard a card, then draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DiscardControllerEffect(1), new ManaCostsImpl<>("{U}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addEffect(new DrawCardSourceControllerEffect(1).concatBy(", then"));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/e/EbonPraetor.java b/Mage.Sets/src/mage/cards/e/EbonPraetor.java
index 36c71a96a76..abb2d3b0bbd 100644
--- a/Mage.Sets/src/mage/cards/e/EbonPraetor.java
+++ b/Mage.Sets/src/mage/cards/e/EbonPraetor.java
@@ -18,7 +18,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -47,7 +47,7 @@ public final class EbonPraetor extends CardImpl {
// Sacrifice a creature: Remove a -2/-2 counter from Ebon Praetor. If the sacrificed creature was a Thrull, put a +1/+0 counter on Ebon Praetor. Activate this ability only during your upkeep and only once each turn.
Ability ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new RemoveCounterSourceEffect(CounterType.M2M2.createInstance()),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)), 1, new IsStepCondition(PhaseStep.UPKEEP));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT), 1, new IsStepCondition(PhaseStep.UPKEEP));
ability.addEffect(new EbonPraetorEffect());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/e/ElvishSkysweeper.java b/Mage.Sets/src/mage/cards/e/ElvishSkysweeper.java
index 172b14731a6..5d06355e1dd 100644
--- a/Mage.Sets/src/mage/cards/e/ElvishSkysweeper.java
+++ b/Mage.Sets/src/mage/cards/e/ElvishSkysweeper.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.AbilityPredicate;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -42,7 +42,7 @@ public final class ElvishSkysweeper extends CardImpl {
// {4}{G}, Sacrifice a creature: Destroy target creature with flying.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{4}{G}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/e/EmblemOfTheWarmind.java b/Mage.Sets/src/mage/cards/e/EmblemOfTheWarmind.java
index e579e4134fc..31512115262 100644
--- a/Mage.Sets/src/mage/cards/e/EmblemOfTheWarmind.java
+++ b/Mage.Sets/src/mage/cards/e/EmblemOfTheWarmind.java
@@ -15,7 +15,7 @@ import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.target.TargetPermanent;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -38,7 +38,7 @@ public final class EmblemOfTheWarmind extends CardImpl {
// Creatures you control have haste.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
- new GainAbilityControlledEffect(HasteAbility.getInstance(), Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES)));
+ new GainAbilityControlledEffect(HasteAbility.getInstance(), Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES)));
}
private EmblemOfTheWarmind(final EmblemOfTheWarmind card) {
diff --git a/Mage.Sets/src/mage/cards/e/EndemicPlague.java b/Mage.Sets/src/mage/cards/e/EndemicPlague.java
index 417fdb27acc..9ad5c076d45 100644
--- a/Mage.Sets/src/mage/cards/e/EndemicPlague.java
+++ b/Mage.Sets/src/mage/cards/e/EndemicPlague.java
@@ -18,7 +18,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author TheElk801
@@ -29,7 +29,7 @@ public final class EndemicPlague extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{B}");
// As an additional cost to cast Endemic Plague, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Destroy all creatures that share a creature type with the sacrificed creature. They can't be regenerated.
this.getSpellAbility().addEffect(new EndemicPlagueEffect());
diff --git a/Mage.Sets/src/mage/cards/e/Ensnare.java b/Mage.Sets/src/mage/cards/e/Ensnare.java
index 4cc56c84066..9d7941661f8 100644
--- a/Mage.Sets/src/mage/cards/e/Ensnare.java
+++ b/Mage.Sets/src/mage/cards/e/Ensnare.java
@@ -9,7 +9,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledLandPermanent;
import mage.target.common.TargetControlledPermanent;
@@ -34,7 +34,7 @@ public final class Ensnare extends CardImpl {
this.addAbility(ability);
// Tap all creatures.
- this.getSpellAbility().addEffect(new TapAllEffect(FILTER_PERMANENT_CREATURES));
+ this.getSpellAbility().addEffect(new TapAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES));
}
private Ensnare(final Ensnare card) {
diff --git a/Mage.Sets/src/mage/cards/e/EtherealHaze.java b/Mage.Sets/src/mage/cards/e/EtherealHaze.java
index 2278c41d9b7..0437f73c35b 100644
--- a/Mage.Sets/src/mage/cards/e/EtherealHaze.java
+++ b/Mage.Sets/src/mage/cards/e/EtherealHaze.java
@@ -7,11 +7,10 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
+import mage.filter.StaticFilters;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
-
/**
*
* @author LevelX
@@ -23,7 +22,7 @@ public final class EtherealHaze extends CardImpl {
this.subtype.add(SubType.ARCANE);
// Prevent all damage that would be dealt by creatures this turn.
- this.getSpellAbility().addEffect(new PreventAllDamageByAllPermanentsEffect(FILTER_PERMANENT_CREATURES, Duration.EndOfTurn, false));
+ this.getSpellAbility().addEffect(new PreventAllDamageByAllPermanentsEffect(StaticFilters.FILTER_PERMANENT_CREATURES, Duration.EndOfTurn, false));
}
diff --git a/Mage.Sets/src/mage/cards/e/Evacuation.java b/Mage.Sets/src/mage/cards/e/Evacuation.java
index 54b05f6dd4a..9c8c786fbec 100644
--- a/Mage.Sets/src/mage/cards/e/Evacuation.java
+++ b/Mage.Sets/src/mage/cards/e/Evacuation.java
@@ -6,7 +6,7 @@ import mage.abilities.effects.common.ReturnToHandFromBattlefieldAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -18,7 +18,7 @@ public final class Evacuation extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{3}{U}{U}");
// Return all creatures to their owners' hands.
- this.getSpellAbility().addEffect(new ReturnToHandFromBattlefieldAllEffect(FILTER_PERMANENT_CREATURES));
+ this.getSpellAbility().addEffect(new ReturnToHandFromBattlefieldAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES));
}
private Evacuation(final Evacuation card) {
diff --git a/Mage.Sets/src/mage/cards/e/EvolutionaryLeap.java b/Mage.Sets/src/mage/cards/e/EvolutionaryLeap.java
index f7990030e27..c0ff7cd952d 100644
--- a/Mage.Sets/src/mage/cards/e/EvolutionaryLeap.java
+++ b/Mage.Sets/src/mage/cards/e/EvolutionaryLeap.java
@@ -14,8 +14,6 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author fireshoes
*/
@@ -28,7 +26,7 @@ public final class EvolutionaryLeap extends CardImpl {
Ability ability = new SimpleActivatedAbility(new RevealCardsFromLibraryUntilEffect(
StaticFilters.FILTER_CARD_CREATURE, PutCards.HAND, PutCards.BOTTOM_RANDOM
), new ManaCostsImpl<>("{G}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/e/EyeOfYawgmoth.java b/Mage.Sets/src/mage/cards/e/EyeOfYawgmoth.java
index 85c47275aab..d8af4db2083 100644
--- a/Mage.Sets/src/mage/cards/e/EyeOfYawgmoth.java
+++ b/Mage.Sets/src/mage/cards/e/EyeOfYawgmoth.java
@@ -18,7 +18,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.FilterCard;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.TargetCard;
@@ -36,7 +36,7 @@ public final class EyeOfYawgmoth extends CardImpl {
// {3}, {T}, Sacrifice a creature: Reveal a number of cards from the top of your library equal to the sacrificed creature's power. Put one into your hand and exile the rest.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new EyeOfYawgmothEffect(), new GenericManaCost(3));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/f/FalkenrathAristocrat.java b/Mage.Sets/src/mage/cards/f/FalkenrathAristocrat.java
index 6404d047dce..7d0d7fc0a8f 100644
--- a/Mage.Sets/src/mage/cards/f/FalkenrathAristocrat.java
+++ b/Mage.Sets/src/mage/cards/f/FalkenrathAristocrat.java
@@ -20,7 +20,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author North
@@ -40,7 +40,7 @@ public final class FalkenrathAristocrat extends CardImpl {
// If the sacrificed creature was a Human, put a +1/+1 counter on Falkenrath Aristocrat.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new GainAbilitySourceEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addEffect(new FalkenrathAristocratEffect());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/f/FalkenrathTorturer.java b/Mage.Sets/src/mage/cards/f/FalkenrathTorturer.java
index 8ac7ef9a085..5bba56d4557 100644
--- a/Mage.Sets/src/mage/cards/f/FalkenrathTorturer.java
+++ b/Mage.Sets/src/mage/cards/f/FalkenrathTorturer.java
@@ -14,7 +14,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -36,7 +36,7 @@ public final class FalkenrathTorturer extends CardImpl {
// If the sacrificed creature was a Human, put a +1/+1 counter on Falkenrath Torturer.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addEffect(new FalkenrathAristocratEffect());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/f/FallenAngel.java b/Mage.Sets/src/mage/cards/f/FallenAngel.java
index 7a27b0ad000..0117a6ade04 100644
--- a/Mage.Sets/src/mage/cards/f/FallenAngel.java
+++ b/Mage.Sets/src/mage/cards/f/FallenAngel.java
@@ -13,7 +13,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -33,7 +33,7 @@ public final class FallenAngel extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// Sacrifice a creature: Fallen Angel gets +2/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 1, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private FallenAngel(final FallenAngel card) {
diff --git a/Mage.Sets/src/mage/cards/f/FallenIdeal.java b/Mage.Sets/src/mage/cards/f/FallenIdeal.java
index 3dd1e9d51d0..4011de1b78f 100644
--- a/Mage.Sets/src/mage/cards/f/FallenIdeal.java
+++ b/Mage.Sets/src/mage/cards/f/FallenIdeal.java
@@ -14,14 +14,13 @@ import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
+import mage.filter.StaticFilters;
import mage.target.TargetPermanent;
import mage.target.common.TargetControlledPermanent;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author fireshoes
*/
@@ -44,7 +43,7 @@ public final class FallenIdeal extends CardImpl {
ability.addEffect(new GainAbilityAttachedEffect(
new SimpleActivatedAbility(
new BoostSourceEffect(2, 1, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
), AttachmentType.AURA, Duration.WhileOnBattlefield
).setText("and \"Sacrifice a creature: This creature gets +2/+1 until end of turn.\""));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/f/FanaticalDevotion.java b/Mage.Sets/src/mage/cards/f/FanaticalDevotion.java
index bf735b27901..acce83e6df3 100644
--- a/Mage.Sets/src/mage/cards/f/FanaticalDevotion.java
+++ b/Mage.Sets/src/mage/cards/f/FanaticalDevotion.java
@@ -10,7 +10,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -26,7 +26,7 @@ public final class FanaticalDevotion extends CardImpl {
// Sacrifice a creature: Regenerate target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new RegenerateTargetEffect(),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/f/Festival.java b/Mage.Sets/src/mage/cards/f/Festival.java
index c67d6faf184..af1b49fd4e0 100644
--- a/Mage.Sets/src/mage/cards/f/Festival.java
+++ b/Mage.Sets/src/mage/cards/f/Festival.java
@@ -10,7 +10,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.PhaseStep;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -26,7 +26,7 @@ public final class Festival extends CardImpl {
"Cast this spell only during an opponent's upkeep"));
// Creatures can't attack this turn.
- this.getSpellAbility().addEffect(new CantAttackAnyPlayerAllEffect(Duration.EndOfTurn, FILTER_PERMANENT_CREATURES));
+ this.getSpellAbility().addEffect(new CantAttackAnyPlayerAllEffect(Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES));
}
diff --git a/Mage.Sets/src/mage/cards/f/FieryBombardment.java b/Mage.Sets/src/mage/cards/f/FieryBombardment.java
index 42264514afd..c7abc4366c0 100644
--- a/Mage.Sets/src/mage/cards/f/FieryBombardment.java
+++ b/Mage.Sets/src/mage/cards/f/FieryBombardment.java
@@ -21,7 +21,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author jeffwadsworth
@@ -34,7 +34,7 @@ public final class FieryBombardment extends CardImpl {
// Chroma - {2}, Sacrifice a creature: Fiery Bombardment deals damage to any target equal to the number of red mana symbols in the sacrificed creature's mana cost.
Effect effect = new FieryBombardmentEffect();
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
ability.setAbilityWord(AbilityWord.CHROMA);
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/f/FieryConclusion.java b/Mage.Sets/src/mage/cards/f/FieryConclusion.java
index 528f3c2b475..a96106f3cbd 100644
--- a/Mage.Sets/src/mage/cards/f/FieryConclusion.java
+++ b/Mage.Sets/src/mage/cards/f/FieryConclusion.java
@@ -7,7 +7,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -21,7 +21,7 @@ public final class FieryConclusion extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{R}");
// As an additional cost to cast Fiery Conclusion, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Fiery Conclusion deals 5 damage to target creature.
this.getSpellAbility().addEffect(new DamageTargetEffect(5));
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
diff --git a/Mage.Sets/src/mage/cards/f/FinalStrike.java b/Mage.Sets/src/mage/cards/f/FinalStrike.java
index 99c41cc9e1a..2a88e8e3607 100644
--- a/Mage.Sets/src/mage/cards/f/FinalStrike.java
+++ b/Mage.Sets/src/mage/cards/f/FinalStrike.java
@@ -9,7 +9,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetOpponentOrPlaneswalker;
@@ -23,7 +23,7 @@ public final class FinalStrike extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{B}{B}");
// As an additional cost to cast Final Strike, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Final Strike deals damage to target opponent equal to the sacrificed creature's power.
Effect effect = new DamageTargetEffect(SacrificeCostCreaturesPower.instance);
diff --git a/Mage.Sets/src/mage/cards/f/FiremantleMage.java b/Mage.Sets/src/mage/cards/f/FiremantleMage.java
index 6baef78378c..54d04e2afdd 100644
--- a/Mage.Sets/src/mage/cards/f/FiremantleMage.java
+++ b/Mage.Sets/src/mage/cards/f/FiremantleMage.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -29,7 +29,7 @@ public final class FiremantleMage extends CardImpl {
// Rally — Whenver Firemantle Mage or another Ally enters the battlefield under your control, creatures you control gain menace until end of turn.
this.addAbility(new AllyEntersBattlefieldTriggeredAbility(
- new GainAbilityControlledEffect(new MenaceAbility(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES), false));
+ new GainAbilityControlledEffect(new MenaceAbility(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES), false));
}
private FiremantleMage(final FiremantleMage card) {
diff --git a/Mage.Sets/src/mage/cards/f/FleshAllergy.java b/Mage.Sets/src/mage/cards/f/FleshAllergy.java
index 88135b15c95..98a3e65984c 100644
--- a/Mage.Sets/src/mage/cards/f/FleshAllergy.java
+++ b/Mage.Sets/src/mage/cards/f/FleshAllergy.java
@@ -13,7 +13,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.WatcherScope;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.events.ZoneChangeEvent;
@@ -34,7 +34,7 @@ public final class FleshAllergy extends CardImpl {
// As an additional cost to cast Flesh Allergy, sacrifice a creature.
// Destroy target creature. Its controller loses life equal to the number of creatures that died this turn.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.getSpellAbility().addEffect(new DestroyTargetEffect());
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
this.getSpellAbility().addEffect(new FleshAllergyEffect());
diff --git a/Mage.Sets/src/mage/cards/f/FleshEaterImp.java b/Mage.Sets/src/mage/cards/f/FleshEaterImp.java
index 2471dcd75b2..a0a0a435985 100644
--- a/Mage.Sets/src/mage/cards/f/FleshEaterImp.java
+++ b/Mage.Sets/src/mage/cards/f/FleshEaterImp.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -33,7 +33,7 @@ public final class FleshEaterImp extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
this.addAbility(InfectAbility.getInstance());
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private FleshEaterImp(final FleshEaterImp card) {
diff --git a/Mage.Sets/src/mage/cards/f/Fling.java b/Mage.Sets/src/mage/cards/f/Fling.java
index 92fb843f8ba..cd4114a5c51 100644
--- a/Mage.Sets/src/mage/cards/f/Fling.java
+++ b/Mage.Sets/src/mage/cards/f/Fling.java
@@ -9,7 +9,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -24,7 +24,7 @@ public final class Fling extends CardImpl {
Effect effect = new DamageTargetEffect(SacrificeCostCreaturesPower.instance);
effect.setText("{this} deals damage equal to the sacrificed creature's power to any target");
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.getSpellAbility().addTarget(new TargetAnyTarget());
this.getSpellAbility().addEffect(effect);
}
diff --git a/Mage.Sets/src/mage/cards/f/FlyingCraneTechnique.java b/Mage.Sets/src/mage/cards/f/FlyingCraneTechnique.java
index 675ec8168f0..038fdd98c59 100644
--- a/Mage.Sets/src/mage/cards/f/FlyingCraneTechnique.java
+++ b/Mage.Sets/src/mage/cards/f/FlyingCraneTechnique.java
@@ -11,7 +11,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -23,11 +23,11 @@ public final class FlyingCraneTechnique extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{3}{U}{R}{W}");
// Untap all creatures you control. They gain flying and double strike until end of turn.
- this.getSpellAbility().addEffect(new UntapAllControllerEffect(FILTER_PERMANENT_CREATURES));
- Effect effect = new GainAbilityControlledEffect(FlyingAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES);
+ this.getSpellAbility().addEffect(new UntapAllControllerEffect(StaticFilters.FILTER_PERMANENT_CREATURES));
+ Effect effect = new GainAbilityControlledEffect(FlyingAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES);
effect.setText("They gain flying");
this.getSpellAbility().addEffect(effect);
- effect = new GainAbilityControlledEffect(DoubleStrikeAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES);
+ effect = new GainAbilityControlledEffect(DoubleStrikeAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES);
effect.setText("and double strike until end of turn");
this.getSpellAbility().addEffect(effect);
}
diff --git a/Mage.Sets/src/mage/cards/f/FodderCannon.java b/Mage.Sets/src/mage/cards/f/FodderCannon.java
index 5e6d7c3c860..3bae8fb9f05 100644
--- a/Mage.Sets/src/mage/cards/f/FodderCannon.java
+++ b/Mage.Sets/src/mage/cards/f/FodderCannon.java
@@ -12,7 +12,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -29,7 +29,7 @@ public final class FodderCannon extends CardImpl {
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(4), new ManaCostsImpl<>("{4}"));
ability.addTarget(new TargetCreaturePermanent());
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/f/Forfend.java b/Mage.Sets/src/mage/cards/f/Forfend.java
index b1c8d6cac1f..05021163b2c 100644
--- a/Mage.Sets/src/mage/cards/f/Forfend.java
+++ b/Mage.Sets/src/mage/cards/f/Forfend.java
@@ -7,7 +7,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -19,7 +19,7 @@ public final class Forfend extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{W}");
// Prevent all damage that would be dealt to creatures this turn.
- this.getSpellAbility().addEffect(new PreventAllDamageToAllEffect(Duration.EndOfTurn, FILTER_PERMANENT_CREATURES));
+ this.getSpellAbility().addEffect(new PreventAllDamageToAllEffect(Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES));
}
private Forfend(final Forfend card) {
diff --git a/Mage.Sets/src/mage/cards/g/GateToPhyrexia.java b/Mage.Sets/src/mage/cards/g/GateToPhyrexia.java
index 8cbf4901bf1..bc05a702f47 100644
--- a/Mage.Sets/src/mage/cards/g/GateToPhyrexia.java
+++ b/Mage.Sets/src/mage/cards/g/GateToPhyrexia.java
@@ -12,7 +12,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.PhaseStep;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetArtifactPermanent;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -27,7 +27,7 @@ public final class GateToPhyrexia extends CardImpl {
// Sacrifice a creature: Destroy target artifact. Activate this ability only during your upkeep and only once each turn.
Ability ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)),
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT),
1, new IsStepCondition(PhaseStep.UPKEEP));
ability.addTarget(new TargetArtifactPermanent());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/g/GhaveGuruOfSpores.java b/Mage.Sets/src/mage/cards/g/GhaveGuruOfSpores.java
index 925427c904a..5ee4e8f6ce2 100644
--- a/Mage.Sets/src/mage/cards/g/GhaveGuruOfSpores.java
+++ b/Mage.Sets/src/mage/cards/g/GhaveGuruOfSpores.java
@@ -19,7 +19,7 @@ import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.Zone;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.game.permanent.token.SaprolingToken;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -51,7 +51,7 @@ public final class GhaveGuruOfSpores extends CardImpl {
// {1}, Sacrifice a creature: Put a +1/+1 counter on target creature.
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new GenericManaCost(1));
- ability2.addCost(new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability2.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability2.addTarget(new TargetCreaturePermanent());
this.addAbility(ability2);
}
diff --git a/Mage.Sets/src/mage/cards/g/GhostCouncilOfOrzhova.java b/Mage.Sets/src/mage/cards/g/GhostCouncilOfOrzhova.java
index b530737d408..5f2520c1a37 100644
--- a/Mage.Sets/src/mage/cards/g/GhostCouncilOfOrzhova.java
+++ b/Mage.Sets/src/mage/cards/g/GhostCouncilOfOrzhova.java
@@ -15,13 +15,12 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.Zone;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetOpponent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author Loki
*/
@@ -46,9 +45,7 @@ public final class GhostCouncilOfOrzhova extends CardImpl {
Zone.BATTLEFIELD,
new ExileReturnBattlefieldOwnerNextEndStepSourceEffect(),
new GenericManaCost(1));
- ability.addCost(new SacrificeTargetCost(
- new TargetControlledCreaturePermanent(
- FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/g/GiftOfDoom.java b/Mage.Sets/src/mage/cards/g/GiftOfDoom.java
index 58e8e7e208d..9ecc9968e06 100644
--- a/Mage.Sets/src/mage/cards/g/GiftOfDoom.java
+++ b/Mage.Sets/src/mage/cards/g/GiftOfDoom.java
@@ -28,8 +28,6 @@ import mage.target.targetadjustment.TargetAdjuster;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -100,7 +98,7 @@ class GiftOfDoomEffect extends OneShotEffect {
}
GiftOfDoomEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "attach it to a creature";
}
diff --git a/Mage.Sets/src/mage/cards/g/GlimpseTheSunGod.java b/Mage.Sets/src/mage/cards/g/GlimpseTheSunGod.java
index b8caf32fe75..6357e6e5788 100644
--- a/Mage.Sets/src/mage/cards/g/GlimpseTheSunGod.java
+++ b/Mage.Sets/src/mage/cards/g/GlimpseTheSunGod.java
@@ -7,14 +7,13 @@ import mage.abilities.effects.keyword.ScryEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.target.common.TargetCreaturePermanent;
import mage.target.targetadjustment.TargetAdjuster;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
-
/**
* @author LevelX2
*/
@@ -46,6 +45,6 @@ enum GlimpseTheSunGodAdjuster implements TargetAdjuster {
public void adjustTargets(Ability ability, Game game) {
ability.getTargets().clear();
int numberToTap = ability.getManaCostsToPay().getX();
- ability.addTarget(new TargetCreaturePermanent(numberToTap, numberToTap, FILTER_PERMANENT_CREATURES, false));
+ ability.addTarget(new TargetCreaturePermanent(numberToTap, numberToTap, StaticFilters.FILTER_PERMANENT_CREATURES, false));
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/g/GnawingZombie.java b/Mage.Sets/src/mage/cards/g/GnawingZombie.java
index 84bfcd43a3f..f45a68a5a1f 100644
--- a/Mage.Sets/src/mage/cards/g/GnawingZombie.java
+++ b/Mage.Sets/src/mage/cards/g/GnawingZombie.java
@@ -17,7 +17,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author LevelX2
@@ -35,7 +35,7 @@ public final class GnawingZombie extends CardImpl {
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(1), new ManaCostsImpl<>("{1}{B}"));
ability.addEffect(new GainLifeEffect(1).concatBy("and"));
ability.addTarget(new TargetPlayer());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/g/GolgariGuildmage.java b/Mage.Sets/src/mage/cards/g/GolgariGuildmage.java
index c765a85134e..9f59f53d69d 100644
--- a/Mage.Sets/src/mage/cards/g/GolgariGuildmage.java
+++ b/Mage.Sets/src/mage/cards/g/GolgariGuildmage.java
@@ -19,8 +19,6 @@ import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author Loki
*/
@@ -34,7 +32,7 @@ public final class GolgariGuildmage extends CardImpl {
this.power = new MageInt(2);
this.toughness = new MageInt(2);
Ability ability = new SimpleActivatedAbility(new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl<>("{4}{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD));
this.addAbility(ability);
ability = new SimpleActivatedAbility(new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{4}{G}"));
diff --git a/Mage.Sets/src/mage/cards/g/GolgariRotwurm.java b/Mage.Sets/src/mage/cards/g/GolgariRotwurm.java
index f59df7a5450..2965e384ad2 100644
--- a/Mage.Sets/src/mage/cards/g/GolgariRotwurm.java
+++ b/Mage.Sets/src/mage/cards/g/GolgariRotwurm.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.TargetPlayer;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -34,7 +34,7 @@ public final class GolgariRotwurm extends CardImpl {
// {B}, Sacrifice a creature: Target player loses 1 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(1), new ColoredManaCost(ColoredManaSymbol.B));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/g/GrandMelee.java b/Mage.Sets/src/mage/cards/g/GrandMelee.java
index 074046131ee..82550b1a17b 100644
--- a/Mage.Sets/src/mage/cards/g/GrandMelee.java
+++ b/Mage.Sets/src/mage/cards/g/GrandMelee.java
@@ -10,7 +10,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.watchers.common.AttackedThisTurnWatcher;
/**
@@ -23,11 +23,11 @@ public final class GrandMelee extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{R}");
// All creatures attack each turn if able.
- Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new AttacksIfAbleAllEffect(FILTER_PERMANENT_CREATURES));
+ Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new AttacksIfAbleAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES));
this.addAbility(ability, new AttackedThisTurnWatcher());
// All creatures block each turn if able.
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BlocksIfAbleAllEffect(FILTER_PERMANENT_CREATURES)));
+ this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BlocksIfAbleAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES)));
}
private GrandMelee(final GrandMelee card) {
diff --git a/Mage.Sets/src/mage/cards/g/GreaterGood.java b/Mage.Sets/src/mage/cards/g/GreaterGood.java
index 607ce80adea..e33d19d9af2 100644
--- a/Mage.Sets/src/mage/cards/g/GreaterGood.java
+++ b/Mage.Sets/src/mage/cards/g/GreaterGood.java
@@ -13,7 +13,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -29,7 +29,7 @@ public final class GreaterGood extends CardImpl {
Effect effect = new DrawCardSourceControllerEffect(SacrificeCostCreaturesPower.instance);
effect.setText("Draw cards equal to the sacrificed creature's power");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect,
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
effect = new DiscardControllerEffect(3);
effect.setText(", then discard three cards");
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/g/GrimBackwoods.java b/Mage.Sets/src/mage/cards/g/GrimBackwoods.java
index 9bda3322c37..fb4c71e6b8d 100644
--- a/Mage.Sets/src/mage/cards/g/GrimBackwoods.java
+++ b/Mage.Sets/src/mage/cards/g/GrimBackwoods.java
@@ -13,7 +13,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -30,7 +30,7 @@ public final class GrimBackwoods extends CardImpl {
// {2}{B}{G}, {tap}, Sacrifice a creature: Draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}{B}{G}"));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/g/GutlessGhoul.java b/Mage.Sets/src/mage/cards/g/GutlessGhoul.java
index 2a3f402c4ae..40f1cde8cc7 100644
--- a/Mage.Sets/src/mage/cards/g/GutlessGhoul.java
+++ b/Mage.Sets/src/mage/cards/g/GutlessGhoul.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -32,7 +32,7 @@ public final class GutlessGhoul extends CardImpl {
// {1}, Sacrifice a creature: You gain 2 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(2), new ManaCostsImpl<>("{1}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/h/HellsCaretaker.java b/Mage.Sets/src/mage/cards/h/HellsCaretaker.java
index 7de49f99068..af297231681 100644
--- a/Mage.Sets/src/mage/cards/h/HellsCaretaker.java
+++ b/Mage.Sets/src/mage/cards/h/HellsCaretaker.java
@@ -16,7 +16,6 @@ import mage.constants.PhaseStep;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.StaticFilters;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
import mage.target.common.TargetCardInYourGraveyard;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -37,7 +36,7 @@ public final class HellsCaretaker extends CardImpl {
new ReturnFromGraveyardToBattlefieldTargetEffect(),
new TapSourceCost(),
new IsStepCondition(PhaseStep.UPKEEP), null);
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/h/HelmOfPossession.java b/Mage.Sets/src/mage/cards/h/HelmOfPossession.java
index 5161c317965..b764dc62e3f 100644
--- a/Mage.Sets/src/mage/cards/h/HelmOfPossession.java
+++ b/Mage.Sets/src/mage/cards/h/HelmOfPossession.java
@@ -14,13 +14,12 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledPermanent;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author fireshoes
*/
@@ -38,7 +37,7 @@ public final class HelmOfPossession extends CardImpl {
"gain control of target creature for as long as you control {this} and {this} remains tapped"
), new GenericManaCost(2));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/h/HiddenStockpile.java b/Mage.Sets/src/mage/cards/h/HiddenStockpile.java
index 5708f76fab6..f5f8e147a96 100644
--- a/Mage.Sets/src/mage/cards/h/HiddenStockpile.java
+++ b/Mage.Sets/src/mage/cards/h/HiddenStockpile.java
@@ -19,7 +19,7 @@ import mage.watchers.common.RevoltWatcher;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author LevelX2
@@ -38,7 +38,7 @@ public final class HiddenStockpile extends CardImpl {
// {1}, Sacrifice a creature: Scry 1.
Ability ability = new SimpleActivatedAbility(new ScryEffect(1, false), new GenericManaCost(1));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/h/HighMarket.java b/Mage.Sets/src/mage/cards/h/HighMarket.java
index b9e34ec31bb..868ce1b2927 100644
--- a/Mage.Sets/src/mage/cards/h/HighMarket.java
+++ b/Mage.Sets/src/mage/cards/h/HighMarket.java
@@ -12,7 +12,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -28,7 +28,7 @@ public final class HighMarket extends CardImpl {
this.addAbility(new ColorlessManaAbility());
// {tap}, Sacrifice a creature: You gain 1 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/h/HolyMantle.java b/Mage.Sets/src/mage/cards/h/HolyMantle.java
index 1d2b3f47d17..13a805e3c80 100644
--- a/Mage.Sets/src/mage/cards/h/HolyMantle.java
+++ b/Mage.Sets/src/mage/cards/h/HolyMantle.java
@@ -17,7 +17,7 @@ import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.target.TargetPermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -41,7 +41,7 @@ public final class HolyMantle extends CardImpl {
// Enchanted creature gets +2/+2 and has protection from creatures.
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
- ability.addEffect(new GainAbilityAttachedEffect(new ProtectionAbility(FILTER_PERMANENT_CREATURES), AttachmentType.AURA, Duration.WhileOnBattlefield));
+ ability.addEffect(new GainAbilityAttachedEffect(new ProtectionAbility(StaticFilters.FILTER_PERMANENT_CREATURES), AttachmentType.AURA, Duration.WhileOnBattlefield));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/h/HostileHostel.java b/Mage.Sets/src/mage/cards/h/HostileHostel.java
index b0ceff1be5a..773128632dc 100644
--- a/Mage.Sets/src/mage/cards/h/HostileHostel.java
+++ b/Mage.Sets/src/mage/cards/h/HostileHostel.java
@@ -21,7 +21,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author LePwnerer
@@ -39,7 +39,7 @@ public final class HostileHostel extends CardImpl {
this.addAbility(new TransformAbility());
Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new HostileHostelEffect(), new ManaCostsImpl<>("{1}"));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/i/IndulgentAristocrat.java b/Mage.Sets/src/mage/cards/i/IndulgentAristocrat.java
index 1c5c409990d..510a85f7caf 100644
--- a/Mage.Sets/src/mage/cards/i/IndulgentAristocrat.java
+++ b/Mage.Sets/src/mage/cards/i/IndulgentAristocrat.java
@@ -18,7 +18,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author fireshoes
@@ -42,7 +42,7 @@ public final class IndulgentAristocrat extends CardImpl {
// {2}, Sacrifice a creature: Put a +1/+1 counter on each Vampire you control.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersAllEffect(CounterType.P1P1.createInstance(), filter), new GenericManaCost(2));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/i/IndulgentTormentor.java b/Mage.Sets/src/mage/cards/i/IndulgentTormentor.java
index 889f199b8b5..f134f9e610f 100644
--- a/Mage.Sets/src/mage/cards/i/IndulgentTormentor.java
+++ b/Mage.Sets/src/mage/cards/i/IndulgentTormentor.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.TargetController;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -74,7 +74,7 @@ class IndulgentTormentorEffect extends OneShotEffect {
public boolean apply(Game game, Ability source) {
Player opponent = game.getPlayer(source.getFirstTarget());
if (opponent != null) {
- Cost cost = new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
+ Cost cost = new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT);
if (cost.canPay(source, source, opponent.getId(), game)
&& opponent.chooseUse(outcome, "Sacrifice a creature to prevent the card draw?", source, game)) {
if (cost.pay(source, game, source, opponent.getId(), false, null)) {
diff --git a/Mage.Sets/src/mage/cards/i/InfernalPlunge.java b/Mage.Sets/src/mage/cards/i/InfernalPlunge.java
index 845c5d59fbd..0902112087a 100644
--- a/Mage.Sets/src/mage/cards/i/InfernalPlunge.java
+++ b/Mage.Sets/src/mage/cards/i/InfernalPlunge.java
@@ -8,7 +8,7 @@ import mage.abilities.effects.mana.BasicManaEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -21,7 +21,7 @@ public final class InfernalPlunge extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{R}");
// As an additional cost to cast Infernal Plunge, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Add {R}{R}{R}.
this.getSpellAbility().addEffect(new BasicManaEffect(Mana.RedMana(3)));
}
diff --git a/Mage.Sets/src/mage/cards/i/InitiatesOfTheEbonHand.java b/Mage.Sets/src/mage/cards/i/InitiatesOfTheEbonHand.java
index bb69c8b6612..13ce0b879c1 100644
--- a/Mage.Sets/src/mage/cards/i/InitiatesOfTheEbonHand.java
+++ b/Mage.Sets/src/mage/cards/i/InitiatesOfTheEbonHand.java
@@ -3,7 +3,7 @@ package mage.cards.i;
import java.util.UUID;
import mage.MageInt;
-import static mage.Mana.BlackMana;
+import mage.Mana;
import mage.abilities.Ability;
import mage.abilities.ActivationInfo;
import mage.abilities.DelayedTriggeredAbility;
@@ -33,7 +33,7 @@ public final class InitiatesOfTheEbonHand extends CardImpl {
this.toughness = new MageInt(1);
// {1}: Add {B}. If this ability has been activated four or more times this turn, sacrifice Initiates of the Ebon Hand at the beginning of the next end step.
- SimpleManaAbility ability = new SimpleManaAbility(Zone.BATTLEFIELD, BlackMana(1), new ManaCostsImpl<>("{1}"));
+ SimpleManaAbility ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.BlackMana(1), new ManaCostsImpl<>("{1}"));
ability.addEffect(new InitiatesOfTheEbonHandEffect());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/i/IntruderAlarm.java b/Mage.Sets/src/mage/cards/i/IntruderAlarm.java
index c2243e5d4b6..95d1a556102 100644
--- a/Mage.Sets/src/mage/cards/i/IntruderAlarm.java
+++ b/Mage.Sets/src/mage/cards/i/IntruderAlarm.java
@@ -12,7 +12,6 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
import mage.filter.StaticFilters;
/**
@@ -25,9 +24,9 @@ public final class IntruderAlarm extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{U}");
// Creatures don't untap during their controllers' untap steps.
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepAllEffect(Duration.WhileOnBattlefield, TargetController.ANY, FILTER_PERMANENT_CREATURES)));
+ this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepAllEffect(Duration.WhileOnBattlefield, TargetController.ANY, StaticFilters.FILTER_PERMANENT_CREATURES)));
// Whenever a creature enters the battlefield, untap all creatures.
- this.addAbility(new EntersBattlefieldAllTriggeredAbility(new UntapAllEffect(FILTER_PERMANENT_CREATURES), StaticFilters.FILTER_PERMANENT_A_CREATURE));
+ this.addAbility(new EntersBattlefieldAllTriggeredAbility(new UntapAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES), StaticFilters.FILTER_PERMANENT_A_CREATURE));
}
private IntruderAlarm(final IntruderAlarm card) {
diff --git a/Mage.Sets/src/mage/cards/i/InvasionPlans.java b/Mage.Sets/src/mage/cards/i/InvasionPlans.java
index d08a9c659eb..ce07be51df9 100644
--- a/Mage.Sets/src/mage/cards/i/InvasionPlans.java
+++ b/Mage.Sets/src/mage/cards/i/InvasionPlans.java
@@ -9,10 +9,10 @@ import mage.abilities.effects.common.combat.BlocksIfAbleAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.players.Player;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
/**
*
@@ -24,7 +24,7 @@ public final class InvasionPlans extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{R}");
// All creatures block each turn if able.
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BlocksIfAbleAllEffect(FILTER_PERMANENT_CREATURES)));
+ this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BlocksIfAbleAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES)));
// The attacking player chooses how each creature blocks each turn.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new InvasionPlansEffect()));
}
diff --git a/Mage.Sets/src/mage/cards/j/JaceWielderOfMysteries.java b/Mage.Sets/src/mage/cards/j/JaceWielderOfMysteries.java
index 52ef5a9baa5..f0abbff5c4a 100644
--- a/Mage.Sets/src/mage/cards/j/JaceWielderOfMysteries.java
+++ b/Mage.Sets/src/mage/cards/j/JaceWielderOfMysteries.java
@@ -9,10 +9,7 @@ import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.common.PutLibraryIntoGraveTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
-import mage.constants.CardType;
-import mage.constants.Duration;
-import mage.constants.SubType;
-import mage.constants.SuperType;
+import mage.constants.*;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.players.Player;
@@ -20,8 +17,6 @@ import mage.target.TargetPlayer;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -60,7 +55,7 @@ public final class JaceWielderOfMysteries extends CardImpl {
class JaceWielderOfMysteriesContinuousEffect extends ReplacementEffectImpl {
JaceWielderOfMysteriesContinuousEffect() {
- super(Duration.WhileOnBattlefield, Benefit);
+ super(Duration.WhileOnBattlefield, Outcome.Benefit);
staticText = "If you would draw a card while your library has no cards in it, you win the game instead";
}
@@ -107,7 +102,7 @@ class JaceWielderOfMysteriesContinuousEffect extends ReplacementEffectImpl {
class JaceWielderOfMysteriesEffect extends OneShotEffect {
JaceWielderOfMysteriesEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "Draw seven cards. Then if your library has no cards in it, you win the game.";
}
@@ -132,4 +127,4 @@ class JaceWielderOfMysteriesEffect extends OneShotEffect {
}
return true;
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/j/JinxedIdol.java b/Mage.Sets/src/mage/cards/j/JinxedIdol.java
index 4d1f5534b59..6802c97f959 100644
--- a/Mage.Sets/src/mage/cards/j/JinxedIdol.java
+++ b/Mage.Sets/src/mage/cards/j/JinxedIdol.java
@@ -11,7 +11,7 @@ import mage.abilities.effects.common.DamageControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.events.GameEvent.EventType;
import mage.game.permanent.Permanent;
@@ -32,7 +32,7 @@ public final class JinxedIdol extends CardImpl {
// Sacrifice a creature: Target opponent gains control of Jinxed Idol.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new JinxedIdolEffect(),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetOpponent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/j/JinxedRing.java b/Mage.Sets/src/mage/cards/j/JinxedRing.java
index d8c54682b69..f79d0fcfd76 100644
--- a/Mage.Sets/src/mage/cards/j/JinxedRing.java
+++ b/Mage.Sets/src/mage/cards/j/JinxedRing.java
@@ -17,7 +17,7 @@ import mage.constants.Outcome;
import mage.constants.SubLayer;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.predicate.permanent.TokenPredicate;
import mage.game.Game;
@@ -45,7 +45,7 @@ public final class JinxedRing extends CardImpl {
// Sacrifice a creature: Target opponent gains control of Jinxed Ring.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new JinxedRingEffect(),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetOpponent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/k/KaronasZealot.java b/Mage.Sets/src/mage/cards/k/KaronasZealot.java
index 3bcea86f579..ab7fac0f35e 100644
--- a/Mage.Sets/src/mage/cards/k/KaronasZealot.java
+++ b/Mage.Sets/src/mage/cards/k/KaronasZealot.java
@@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.TurnedFaceUpSourceTriggeredAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
-import static mage.abilities.effects.RedirectionEffect.UsageType.ACCORDING_DURATION;
+import mage.abilities.effects.RedirectionEffect;
import mage.abilities.effects.common.RedirectDamageFromSourceToTargetEffect;
import mage.abilities.keyword.MorphAbility;
import mage.cards.CardImpl;
@@ -33,7 +33,7 @@ public final class KaronasZealot extends CardImpl {
this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{W}{W}")));
// When Karona's Zealot is turned face up, all damage that would be dealt to it this turn is dealt to target creature instead.
- Ability ability = new TurnedFaceUpSourceTriggeredAbility(new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, Integer.MAX_VALUE, ACCORDING_DURATION)
+ Ability ability = new TurnedFaceUpSourceTriggeredAbility(new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, Integer.MAX_VALUE, RedirectionEffect.UsageType.ACCORDING_DURATION)
.setText("all damage that would be dealt to it this turn is dealt to target creature instead"));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/k/KazuulsFury.java b/Mage.Sets/src/mage/cards/k/KazuulsFury.java
index 9e8913407cc..a60feef3118 100644
--- a/Mage.Sets/src/mage/cards/k/KazuulsFury.java
+++ b/Mage.Sets/src/mage/cards/k/KazuulsFury.java
@@ -14,7 +14,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author JayDi85
@@ -32,7 +32,7 @@ public final class KazuulsFury extends ModalDoubleFacedCard {
// Instant
// As an additional cost to cast this spell, sacrifice a creature.
- this.getLeftHalfCard().getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getLeftHalfCard().getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Kazuul's Fury deals damage equal to the sacrificed creatures power to any target.
this.getLeftHalfCard().getSpellAbility().addEffect(new DamageTargetEffect(SacrificeCostCreaturesPower.instance)
diff --git a/Mage.Sets/src/mage/cards/k/KeldonNecropolis.java b/Mage.Sets/src/mage/cards/k/KeldonNecropolis.java
index caeda37c263..cf46f501f5e 100644
--- a/Mage.Sets/src/mage/cards/k/KeldonNecropolis.java
+++ b/Mage.Sets/src/mage/cards/k/KeldonNecropolis.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -33,7 +33,7 @@ public final class KeldonNecropolis extends CardImpl {
// {4}{R}, {T}, Sacrifice a creature: Keldon Necropolis deals 2 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{4}{R}"));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/k/KiraGreatGlassSpinner.java b/Mage.Sets/src/mage/cards/k/KiraGreatGlassSpinner.java
index 6d243cb217f..efff6a53cce 100644
--- a/Mage.Sets/src/mage/cards/k/KiraGreatGlassSpinner.java
+++ b/Mage.Sets/src/mage/cards/k/KiraGreatGlassSpinner.java
@@ -11,7 +11,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
@@ -40,7 +40,7 @@ public final class KiraGreatGlassSpinner extends CardImpl {
effect.setText("counter that spell or ability");
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
new GainAbilityControlledEffect(new KiraGreatGlassSpinnerAbility(effect), Duration.WhileOnBattlefield,
- FILTER_PERMANENT_CREATURES)),
+ StaticFilters.FILTER_PERMANENT_CREATURES)),
new NumberOfTimesPermanentTargetedATurnWatcher());
}
diff --git a/Mage.Sets/src/mage/cards/k/KolaghanTheStormsFury.java b/Mage.Sets/src/mage/cards/k/KolaghanTheStormsFury.java
index cd9bc8d8278..3c23cee6d9a 100644
--- a/Mage.Sets/src/mage/cards/k/KolaghanTheStormsFury.java
+++ b/Mage.Sets/src/mage/cards/k/KolaghanTheStormsFury.java
@@ -10,7 +10,6 @@ import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
import mage.filter.common.FilterCreaturePermanent;
/**
@@ -38,7 +37,7 @@ public final class KolaghanTheStormsFury extends CardImpl {
// Whenever a Dragon you control attacks, creatures you control get +1/+0 until end of turn.
this.addAbility(new AttacksAllTriggeredAbility(
- new BoostControlledEffect(1, 0, Duration.EndOfTurn, FILTER_PERMANENT_CREATURES, false),
+ new BoostControlledEffect(1, 0, Duration.EndOfTurn),
false, filter, SetTargetPointer.NONE, false));
// Dash {3}{B}{R}
diff --git a/Mage.Sets/src/mage/cards/k/KorBladewhirl.java b/Mage.Sets/src/mage/cards/k/KorBladewhirl.java
index 574fe535fc1..784b0f4d79b 100644
--- a/Mage.Sets/src/mage/cards/k/KorBladewhirl.java
+++ b/Mage.Sets/src/mage/cards/k/KorBladewhirl.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -29,7 +29,7 @@ public final class KorBladewhirl extends CardImpl {
// Rally — Whenever Kor Bladewhirl or another Ally enters the battlefield under your control, creatures you control gain first strike until end of turn.
this.addAbility(new AllyEntersBattlefieldTriggeredAbility(
- new GainAbilityControlledEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES), false));
+ new GainAbilityControlledEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES), false));
}
private KorBladewhirl(final KorBladewhirl card) {
diff --git a/Mage.Sets/src/mage/cards/k/KrovikanHorror.java b/Mage.Sets/src/mage/cards/k/KrovikanHorror.java
index f0795abacd1..1f7e96699a0 100644
--- a/Mage.Sets/src/mage/cards/k/KrovikanHorror.java
+++ b/Mage.Sets/src/mage/cards/k/KrovikanHorror.java
@@ -18,7 +18,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.TargetController;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -46,7 +46,7 @@ public final class KrovikanHorror extends CardImpl {
// {1}, Sacrifice a creature: Krovikan Horror deals 1 damage to any target.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new GenericManaCost(1));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/LancersEnKor.java b/Mage.Sets/src/mage/cards/l/LancersEnKor.java
index df52da3c18f..0daf62a6299 100644
--- a/Mage.Sets/src/mage/cards/l/LancersEnKor.java
+++ b/Mage.Sets/src/mage/cards/l/LancersEnKor.java
@@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.GenericManaCost;
-import static mage.abilities.effects.RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE;
+import mage.abilities.effects.RedirectionEffect;
import mage.abilities.effects.common.RedirectDamageFromSourceToTargetEffect;
import mage.abilities.keyword.TrampleAbility;
import mage.cards.CardImpl;
@@ -34,7 +34,7 @@ public final class LancersEnKor extends CardImpl {
this.addAbility(TrampleAbility.getInstance());
// {0}: The next 1 damage that would be dealt to Lancers en-Kor this turn is dealt to target creature you control instead.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/LaunchParty.java b/Mage.Sets/src/mage/cards/l/LaunchParty.java
index 4143993e1cb..9ed12c97fd9 100644
--- a/Mage.Sets/src/mage/cards/l/LaunchParty.java
+++ b/Mage.Sets/src/mage/cards/l/LaunchParty.java
@@ -8,7 +8,7 @@ import mage.abilities.effects.common.LoseLifeTargetControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -22,7 +22,7 @@ public final class LaunchParty extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{3}{B}");
// As an additional cost to cast Launch Party, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Destroy target creature. Its controller loses 2 life.
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
diff --git a/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java b/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java
index 74046ce6721..e0d7b47658a 100644
--- a/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java
+++ b/Mage.Sets/src/mage/cards/l/LegacyOfTheBeloved.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.ComparisonType;
import mage.constants.Outcome;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreatureCard;
import mage.filter.predicate.mageobject.ManaValuePredicate;
import mage.game.Game;
@@ -33,7 +33,7 @@ public final class LegacyOfTheBeloved extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{G}{G}");
// As an additional cost to cast Legacy of the Beloved, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Search you library for up to two creatures cards that each have a lower converted mana cost that sacrificied creature's converted mana cost, reveal them and put them onto the battlefield, then shuffle you library.
this.getSpellAbility().addEffect(new LegacyOfTheBelovedEffect());
diff --git a/Mage.Sets/src/mage/cards/l/LifeChisel.java b/Mage.Sets/src/mage/cards/l/LifeChisel.java
index 6f5bb51248a..d73ceaa5b4b 100644
--- a/Mage.Sets/src/mage/cards/l/LifeChisel.java
+++ b/Mage.Sets/src/mage/cards/l/LifeChisel.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.PhaseStep;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -32,9 +32,7 @@ public final class LifeChisel extends CardImpl {
Ability ability = new ConditionalActivatedAbility(
Zone.BATTLEFIELD,
new LifeChiselEffect(),
- new SacrificeTargetCost(
- new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
- ),
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT),
new IsStepCondition(PhaseStep.UPKEEP),
null
);
diff --git a/Mage.Sets/src/mage/cards/l/LifesLegacy.java b/Mage.Sets/src/mage/cards/l/LifesLegacy.java
index a10277da4ec..3cc6146c379 100644
--- a/Mage.Sets/src/mage/cards/l/LifesLegacy.java
+++ b/Mage.Sets/src/mage/cards/l/LifesLegacy.java
@@ -10,7 +10,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -25,7 +25,7 @@ public final class LifesLegacy extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{1}{G}");
// As an additional cost to cast Life's Legacy, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Draw cards equal to the sacrificed creature's power.
this.getSpellAbility().addEffect(new LifesLegacyEffect());
diff --git a/Mage.Sets/src/mage/cards/l/LumberingBattlement.java b/Mage.Sets/src/mage/cards/l/LumberingBattlement.java
index 5f370aa09ed..05320c9c291 100644
--- a/Mage.Sets/src/mage/cards/l/LumberingBattlement.java
+++ b/Mage.Sets/src/mage/cards/l/LumberingBattlement.java
@@ -33,8 +33,6 @@ import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -82,7 +80,7 @@ class LumberingBattlementEffect extends OneShotEffect {
}
LumberingBattlementEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "exile any number of other nontoken creatures you control until it leaves the battlefield";
}
diff --git a/Mage.Sets/src/mage/cards/l/LyzoldaTheBloodWitch.java b/Mage.Sets/src/mage/cards/l/LyzoldaTheBloodWitch.java
index cc7216a81c9..3a5d4e69a53 100644
--- a/Mage.Sets/src/mage/cards/l/LyzoldaTheBloodWitch.java
+++ b/Mage.Sets/src/mage/cards/l/LyzoldaTheBloodWitch.java
@@ -21,7 +21,7 @@ import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.predicate.mageobject.ColorPredicate;
import mage.game.Game;
import mage.game.permanent.Permanent;
@@ -62,7 +62,7 @@ public final class LyzoldaTheBloodWitch extends CardImpl {
new SacrificedWasCondition(blackFilter),
"Draw a card if the sacrificed creature was black");
ability.addEffect(effect);
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/m/MalevolentAwakening.java b/Mage.Sets/src/mage/cards/m/MalevolentAwakening.java
index 222e7cdf944..febddfae388 100644
--- a/Mage.Sets/src/mage/cards/m/MalevolentAwakening.java
+++ b/Mage.Sets/src/mage/cards/m/MalevolentAwakening.java
@@ -12,7 +12,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
import mage.filter.FilterCard;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetCardInYourGraveyard;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -35,7 +35,7 @@ public final class MalevolentAwakening extends CardImpl {
// {1}{B}{B}, Sacrifice a creature: Return target creature card from your graveyard to your hand.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl<>("{1}{B}{B}"));
ability.addTarget(new TargetCardInYourGraveyard(filter));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/m/Marjhan.java b/Mage.Sets/src/mage/cards/m/Marjhan.java
index ae853b9e34a..81c532bf0b1 100644
--- a/Mage.Sets/src/mage/cards/m/Marjhan.java
+++ b/Mage.Sets/src/mage/cards/m/Marjhan.java
@@ -22,7 +22,7 @@ import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterAttackingCreature;
import mage.filter.common.FilterLandPermanent;
import mage.filter.predicate.Predicates;
@@ -54,7 +54,7 @@ public final class Marjhan extends CardImpl {
// {U}{U}, Sacrifice a creature: Untap Marjhan. Activate this ability only during your upkeep.
Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD,
new UntapSourceEffect(), new ManaCostsImpl<>("{U}{U}"), new IsStepCondition(PhaseStep.UPKEEP), null);
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
// Marjhan can't attack unless defending player controls an Island.
diff --git a/Mage.Sets/src/mage/cards/m/MartyredRusalka.java b/Mage.Sets/src/mage/cards/m/MartyredRusalka.java
index 6be023f56b9..d76d6f200f5 100644
--- a/Mage.Sets/src/mage/cards/m/MartyredRusalka.java
+++ b/Mage.Sets/src/mage/cards/m/MartyredRusalka.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -32,7 +32,7 @@ public final class MartyredRusalka extends CardImpl {
// {W}, Sacrifice a creature: Target creature can't attack this turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CantAttackTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{W}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/m/MartyrsCause.java b/Mage.Sets/src/mage/cards/m/MartyrsCause.java
index e7c609fc675..ca811a8e76c 100644
--- a/Mage.Sets/src/mage/cards/m/MartyrsCause.java
+++ b/Mage.Sets/src/mage/cards/m/MartyrsCause.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -26,7 +26,7 @@ public final class MartyrsCause extends CardImpl {
// Sacrifice a creature: The next time a source of your choice would deal damage to any target this turn, prevent that damage.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventNextDamageFromChosenSourceToTargetEffect(Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java b/Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java
index 736a43f46b3..a9d50591ad2 100644
--- a/Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java
+++ b/Mage.Sets/src/mage/cards/m/MaskOfTheMimic.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.filter.FilterCard;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.NamePredicate;
import mage.filter.predicate.permanent.TokenPredicate;
@@ -37,7 +37,7 @@ public final class MaskOfTheMimic extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{U}");
// As an additional cost to cast Mask of the Mimic, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Search your library for a card with the same name as target nontoken creature and put that card onto the battlefield. Then shuffle your library.
this.getSpellAbility().addEffect(new MaskOfTheMimicEffect());
diff --git a/Mage.Sets/src/mage/cards/m/MasterOfPearls.java b/Mage.Sets/src/mage/cards/m/MasterOfPearls.java
index 113b096b3a6..56cb3da50e8 100644
--- a/Mage.Sets/src/mage/cards/m/MasterOfPearls.java
+++ b/Mage.Sets/src/mage/cards/m/MasterOfPearls.java
@@ -12,7 +12,6 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
/**
*
@@ -31,7 +30,7 @@ public final class MasterOfPearls extends CardImpl {
// Morph {3}{W}{W}
this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{W}{W}")));
// When Master of Pearls is turned face up, creatures you control get +2/+2 until end of turn.
- this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new BoostControlledEffect(2, 2, Duration.EndOfTurn, FILTER_PERMANENT_CREATURES)));
+ this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new BoostControlledEffect(2, 2, Duration.EndOfTurn)));
}
private MasterOfPearls(final MasterOfPearls card) {
diff --git a/Mage.Sets/src/mage/cards/m/MedomaisProphecy.java b/Mage.Sets/src/mage/cards/m/MedomaisProphecy.java
index 4424a709475..1b68bfba3fa 100644
--- a/Mage.Sets/src/mage/cards/m/MedomaisProphecy.java
+++ b/Mage.Sets/src/mage/cards/m/MedomaisProphecy.java
@@ -18,8 +18,6 @@ import mage.players.Player;
import java.util.UUID;
-import static mage.abilities.effects.common.ChooseACardNameEffect.TypeOfName.ALL;
-
/**
* @author TheElk801
*/
@@ -37,7 +35,7 @@ public final class MedomaisProphecy extends CardImpl {
sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_I, new ScryEffect(2));
// II — Choose a card name.
- sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_II, new ChooseACardNameEffect(ALL));
+ sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_II, new ChooseACardNameEffect(ChooseACardNameEffect.TypeOfName.ALL));
// III — When you cast a spell with the chosen card name for the first time this turn, draw two cards.
sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_III, new MedomaisProphecyTriggerEffect());
@@ -151,4 +149,4 @@ class MedomaisProphecyLookEffect extends OneShotEffect {
));
return true;
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/m/Metamorphosis.java b/Mage.Sets/src/mage/cards/m/Metamorphosis.java
index b834fde58b3..d8a3300b79e 100644
--- a/Mage.Sets/src/mage/cards/m/Metamorphosis.java
+++ b/Mage.Sets/src/mage/cards/m/Metamorphosis.java
@@ -14,7 +14,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -28,7 +28,7 @@ public final class Metamorphosis extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{G}");
// As an additional cost to cast Metamorphosis, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.getSpellAbility().addEffect(new MetamorphosisEffect());
// Add X mana of any one color, where X is one plus the sacrificed creature's converted mana cost. Spend this mana only to cast creature spells.
}
diff --git a/Mage.Sets/src/mage/cards/m/MilaCraftyCompanion.java b/Mage.Sets/src/mage/cards/m/MilaCraftyCompanion.java
index d61185b90c8..a5283caa4ce 100644
--- a/Mage.Sets/src/mage/cards/m/MilaCraftyCompanion.java
+++ b/Mage.Sets/src/mage/cards/m/MilaCraftyCompanion.java
@@ -30,8 +30,6 @@ import mage.target.targetpointer.FixedTarget;
import java.util.Objects;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -133,7 +131,7 @@ class MilaCraftyCompanionTriggeredAbility extends TriggeredAbilityImpl {
class LukkaWaywardBonderDiscardEffect extends OneShotEffect {
LukkaWaywardBonderDiscardEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "you may discard a card. If you do, draw a card. " +
"If a creature card was discarded this way, draw two cards instead";
}
diff --git a/Mage.Sets/src/mage/cards/m/MillenniumFalcon.java b/Mage.Sets/src/mage/cards/m/MillenniumFalcon.java
index 5bf05095e43..902bcd4703a 100644
--- a/Mage.Sets/src/mage/cards/m/MillenniumFalcon.java
+++ b/Mage.Sets/src/mage/cards/m/MillenniumFalcon.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.SuperType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -36,7 +36,7 @@ public final class MillenniumFalcon extends CardImpl {
this.addAbility(SpaceflightAbility.getInstance());
// When Millennium Falcon enters the battlefield, creatures you control gain hexproof until end of turn.
- this.addAbility(new EntersBattlefieldTriggeredAbility(new GainAbilityControlledEffect(HexproofAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES)));
+ this.addAbility(new EntersBattlefieldTriggeredAbility(new GainAbilityControlledEffect(HexproofAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES)));
}
private MillenniumFalcon(final MillenniumFalcon card) {
diff --git a/Mage.Sets/src/mage/cards/m/MindSlash.java b/Mage.Sets/src/mage/cards/m/MindSlash.java
index 59f7de3963e..230bd3e6a7f 100644
--- a/Mage.Sets/src/mage/cards/m/MindSlash.java
+++ b/Mage.Sets/src/mage/cards/m/MindSlash.java
@@ -11,7 +11,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetOpponent;
@@ -27,7 +27,7 @@ public final class MindSlash extends CardImpl {
// {B}, Sacrifice a creature: Target opponent reveals their hand. You choose a card from it.
// That player discards that card. Activate this ability only any time you could cast a sorcery.
Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardCardYouChooseTargetEffect(), new ManaCostsImpl<>("{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetOpponent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/m/MindSwords.java b/Mage.Sets/src/mage/cards/m/MindSwords.java
index 3c1983797f6..f9565ac6666 100644
--- a/Mage.Sets/src/mage/cards/m/MindSwords.java
+++ b/Mage.Sets/src/mage/cards/m/MindSwords.java
@@ -18,7 +18,7 @@ import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.filter.FilterCard;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterLandPermanent;
import mage.game.Game;
import mage.players.Player;
@@ -43,7 +43,7 @@ public final class MindSwords extends CardImpl {
// If you control a Swamp, you may sacrifice a creature rather than pay Mind Swords's mana cost.
this.addAbility(new AlternativeCostSourceAbility(
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)),
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT),
new PermanentsOnTheBattlefieldCondition(filterSwamp), null
));
diff --git a/Mage.Sets/src/mage/cards/m/MirenTheMoaningWell.java b/Mage.Sets/src/mage/cards/m/MirenTheMoaningWell.java
index e53432f2b02..d1bb2ab8470 100644
--- a/Mage.Sets/src/mage/cards/m/MirenTheMoaningWell.java
+++ b/Mage.Sets/src/mage/cards/m/MirenTheMoaningWell.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -37,7 +37,7 @@ public final class MirenTheMoaningWell extends CardImpl {
// {3}, {tap}, Sacrifice a creature: You gain life equal to the sacrificed creature's toughness.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MirenTheMoaningWellEffect(), new GenericManaCost(3));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/m/MomentousFall.java b/Mage.Sets/src/mage/cards/m/MomentousFall.java
index 0970013ca17..65169e59fda 100644
--- a/Mage.Sets/src/mage/cards/m/MomentousFall.java
+++ b/Mage.Sets/src/mage/cards/m/MomentousFall.java
@@ -10,7 +10,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -25,7 +25,7 @@ public final class MomentousFall extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{2}{G}{G}");
// As an additional cost to cast Momentous Fall, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// You draw cards equal to the sacrificed creature's power, then you gain life equal to its toughness.
this.getSpellAbility().addEffect(new MomentousFallEffect());
diff --git a/Mage.Sets/src/mage/cards/m/MutualDestruction.java b/Mage.Sets/src/mage/cards/m/MutualDestruction.java
index 8d8aef30951..5b091f830da 100644
--- a/Mage.Sets/src/mage/cards/m/MutualDestruction.java
+++ b/Mage.Sets/src/mage/cards/m/MutualDestruction.java
@@ -14,6 +14,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.mageobject.AbilityPredicate;
@@ -22,8 +23,6 @@ import mage.target.common.TargetControlledPermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author TheElk801
*/
@@ -48,9 +47,7 @@ public final class MutualDestruction extends CardImpl {
)).setRuleAtTheTop(true));
// As an additional cost to cast this spell, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(
- new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
- ));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Destroy target creature.
this.getSpellAbility().addEffect(new DestroyTargetEffect("Destroy target creature"));
diff --git a/Mage.Sets/src/mage/cards/m/MythosOfVadrok.java b/Mage.Sets/src/mage/cards/m/MythosOfVadrok.java
index fdd3371ca83..44a48565bbf 100644
--- a/Mage.Sets/src/mage/cards/m/MythosOfVadrok.java
+++ b/Mage.Sets/src/mage/cards/m/MythosOfVadrok.java
@@ -20,8 +20,6 @@ import mage.target.common.TargetCreatureOrPlaneswalkerAmount;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -58,7 +56,7 @@ public final class MythosOfVadrok extends CardImpl {
class MythosOfVadrokEffect extends OneShotEffect {
MythosOfVadrokEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
}
private MythosOfVadrokEffect(final MythosOfVadrokEffect effect) {
diff --git a/Mage.Sets/src/mage/cards/n/NantukoHusk.java b/Mage.Sets/src/mage/cards/n/NantukoHusk.java
index aec0d96655d..627ceefe5d4 100644
--- a/Mage.Sets/src/mage/cards/n/NantukoHusk.java
+++ b/Mage.Sets/src/mage/cards/n/NantukoHusk.java
@@ -12,7 +12,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -31,7 +31,7 @@ public final class NantukoHusk extends CardImpl {
// Sacrifice a creature: Nantuko Husk gets +2/+2 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private NantukoHusk(final NantukoHusk card) {
diff --git a/Mage.Sets/src/mage/cards/n/NayaCharm.java b/Mage.Sets/src/mage/cards/n/NayaCharm.java
index 70731cd31c9..6d1528b8ba4 100644
--- a/Mage.Sets/src/mage/cards/n/NayaCharm.java
+++ b/Mage.Sets/src/mage/cards/n/NayaCharm.java
@@ -9,7 +9,7 @@ import mage.abilities.effects.common.TapAllTargetPlayerControlsEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.target.TargetPlayer;
import mage.target.common.TargetCardInGraveyard;
import mage.target.common.TargetCreaturePermanent;
@@ -31,7 +31,7 @@ public final class NayaCharm extends CardImpl {
mode.addTarget(new TargetCardInGraveyard());
this.getSpellAbility().addMode(mode);
// or tap all creatures target player controls.
- mode = new Mode(new TapAllTargetPlayerControlsEffect(FILTER_PERMANENT_CREATURES));
+ mode = new Mode(new TapAllTargetPlayerControlsEffect(StaticFilters.FILTER_PERMANENT_CREATURES));
mode.addTarget(new TargetPlayer());
this.getSpellAbility().addMode(mode);
}
diff --git a/Mage.Sets/src/mage/cards/n/Necrosavant.java b/Mage.Sets/src/mage/cards/n/Necrosavant.java
index 41395137e29..caa100a0873 100644
--- a/Mage.Sets/src/mage/cards/n/Necrosavant.java
+++ b/Mage.Sets/src/mage/cards/n/Necrosavant.java
@@ -15,7 +15,7 @@ import mage.constants.CardType;
import mage.constants.PhaseStep;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -39,7 +39,7 @@ public final class Necrosavant extends CardImpl {
new IsStepCondition(PhaseStep.UPKEEP),
null
);
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/n/NephaliaMoondrakes.java b/Mage.Sets/src/mage/cards/n/NephaliaMoondrakes.java
index 2be42984e5e..88741cbcdd7 100644
--- a/Mage.Sets/src/mage/cards/n/NephaliaMoondrakes.java
+++ b/Mage.Sets/src/mage/cards/n/NephaliaMoondrakes.java
@@ -17,7 +17,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.target.common.TargetCreaturePermanent;
/**
@@ -41,7 +41,7 @@ public final class NephaliaMoondrakes extends CardImpl {
this.addAbility(ability);
// {4}{U}{U}, Exile Nephalia Moondrakes from your graveyard: Creatures you control gain flying until end of turn.
- ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new GainAbilityControlledEffect(FlyingAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES), new ManaCostsImpl<>("{4}{U}{U}"));
+ ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new GainAbilityControlledEffect(FlyingAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES), new ManaCostsImpl<>("{4}{U}{U}"));
ability.addCost(new ExileSourceFromGraveCost());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/n/NezumiBoneReader.java b/Mage.Sets/src/mage/cards/n/NezumiBoneReader.java
index a19463b067c..46be63d28f0 100644
--- a/Mage.Sets/src/mage/cards/n/NezumiBoneReader.java
+++ b/Mage.Sets/src/mage/cards/n/NezumiBoneReader.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.TargetPlayer;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -32,7 +32,7 @@ public final class NezumiBoneReader extends CardImpl {
this.toughness = new MageInt(1);
// {B}, Sacrifice a creature: Target player discards a card. Activate this ability only any time you could cast a sorcery.
Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(1),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addCost(new ManaCostsImpl<>("{B}"));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/n/NimShambler.java b/Mage.Sets/src/mage/cards/n/NimShambler.java
index 9744c8fb071..675c6d905db 100644
--- a/Mage.Sets/src/mage/cards/n/NimShambler.java
+++ b/Mage.Sets/src/mage/cards/n/NimShambler.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledPermanent;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -39,7 +39,7 @@ public final class NimShambler extends CardImpl {
this.toughness = new MageInt(1);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), StaticValue.get(0), Duration.WhileOnBattlefield)));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private NimShambler(final NimShambler card) {
diff --git a/Mage.Sets/src/mage/cards/n/NissaOfShadowedBoughs.java b/Mage.Sets/src/mage/cards/n/NissaOfShadowedBoughs.java
index 2f40cf78cbb..69685415036 100644
--- a/Mage.Sets/src/mage/cards/n/NissaOfShadowedBoughs.java
+++ b/Mage.Sets/src/mage/cards/n/NissaOfShadowedBoughs.java
@@ -26,8 +26,6 @@ import mage.target.TargetPermanent;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -76,7 +74,7 @@ public final class NissaOfShadowedBoughs extends CardImpl {
class NissaOfShadowedBoughsLandEffect extends OneShotEffect {
NissaOfShadowedBoughsLandEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "You may have it become a 3/3 Elemental creature with haste and menace until end of turn. It's still a land.";
}
diff --git a/Mage.Sets/src/mage/cards/n/NomadsEnKor.java b/Mage.Sets/src/mage/cards/n/NomadsEnKor.java
index c89f243533c..43b3cd57d3b 100644
--- a/Mage.Sets/src/mage/cards/n/NomadsEnKor.java
+++ b/Mage.Sets/src/mage/cards/n/NomadsEnKor.java
@@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.GenericManaCost;
-import static mage.abilities.effects.RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE;
+import mage.abilities.effects.RedirectionEffect;
import mage.abilities.effects.common.RedirectDamageFromSourceToTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@@ -32,7 +32,7 @@ public final class NomadsEnKor extends CardImpl {
this.toughness = new MageInt(1);
// {0}: The next 1 damage that would be dealt to Nomads en-Kor this turn is dealt to target creature you control instead.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/o/OgreMarauder.java b/Mage.Sets/src/mage/cards/o/OgreMarauder.java
index b81f2792598..c5e47044df9 100644
--- a/Mage.Sets/src/mage/cards/o/OgreMarauder.java
+++ b/Mage.Sets/src/mage/cards/o/OgreMarauder.java
@@ -18,7 +18,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.SubType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -73,7 +73,7 @@ class OgreMarauderEffect extends OneShotEffect {
MageObject sourceObject = game.getObject(source);
Player defender = game.getPlayer(defendingPlayerId);
if (defender != null && sourceObject != null) {
- Cost cost = new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
+ Cost cost = new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT);
boolean paid = false;
if (cost.canPay(source, source, defendingPlayerId, game)
&& defender.chooseUse(Outcome.LoseAbility, "Sacrifice a creature to prevent "
diff --git a/Mage.Sets/src/mage/cards/o/OnduChampion.java b/Mage.Sets/src/mage/cards/o/OnduChampion.java
index 01c8dc1344b..69cb3cbd333 100644
--- a/Mage.Sets/src/mage/cards/o/OnduChampion.java
+++ b/Mage.Sets/src/mage/cards/o/OnduChampion.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -29,7 +29,7 @@ public final class OnduChampion extends CardImpl {
// Rally — Whenever Ondu Champion or another Ally enters the battlefield under your control, creatures you control gain trample until end of turn.
this.addAbility(new AllyEntersBattlefieldTriggeredAbility(
- new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES), false));
+ new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES), false));
}
private OnduChampion(final OnduChampion card) {
diff --git a/Mage.Sets/src/mage/cards/o/OrcishBloodpainter.java b/Mage.Sets/src/mage/cards/o/OrcishBloodpainter.java
index 51bff1b4e32..ee8ee7e0441 100644
--- a/Mage.Sets/src/mage/cards/o/OrcishBloodpainter.java
+++ b/Mage.Sets/src/mage/cards/o/OrcishBloodpainter.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -32,7 +32,7 @@ public final class OrcishBloodpainter extends CardImpl {
// {tap}, Sacrifice a creature: Orcish Bloodpainter deals 1 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/o/OrimsChant.java b/Mage.Sets/src/mage/cards/o/OrimsChant.java
index 9ae53357f7f..03c85a7ce34 100644
--- a/Mage.Sets/src/mage/cards/o/OrimsChant.java
+++ b/Mage.Sets/src/mage/cards/o/OrimsChant.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Outcome;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.players.Player;
@@ -97,7 +97,7 @@ class OrimsChantEffect extends OneShotEffect {
public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
if (controller != null && KickedCondition.ONCE.apply(game, source)) {
- game.addEffect(new CantAttackAnyPlayerAllEffect(Duration.EndOfTurn, FILTER_PERMANENT_CREATURES), source);
+ game.addEffect(new CantAttackAnyPlayerAllEffect(Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES), source);
return true;
}
return false;
diff --git a/Mage.Sets/src/mage/cards/o/OrochiEggwatcher.java b/Mage.Sets/src/mage/cards/o/OrochiEggwatcher.java
index 31acd5b828f..4fc0926c8db 100644
--- a/Mage.Sets/src/mage/cards/o/OrochiEggwatcher.java
+++ b/Mage.Sets/src/mage/cards/o/OrochiEggwatcher.java
@@ -49,7 +49,7 @@ import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.game.permanent.token.SnakeToken;
import mage.game.permanent.token.TokenImpl;
@@ -107,7 +107,7 @@ class ShidakoBroodmistress extends TokenImpl {
Zone.BATTLEFIELD,
new BoostTargetEffect(3, 3, Duration.EndOfTurn),
new ManaCostsImpl<>("{G}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/o/OutriderEnKor.java b/Mage.Sets/src/mage/cards/o/OutriderEnKor.java
index acea472aa15..c066614c484 100644
--- a/Mage.Sets/src/mage/cards/o/OutriderEnKor.java
+++ b/Mage.Sets/src/mage/cards/o/OutriderEnKor.java
@@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.GenericManaCost;
-import static mage.abilities.effects.RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE;
+import mage.abilities.effects.RedirectionEffect;
import mage.abilities.effects.common.RedirectDamageFromSourceToTargetEffect;
import mage.abilities.keyword.FlankingAbility;
import mage.cards.CardImpl;
@@ -35,7 +35,7 @@ public final class OutriderEnKor extends CardImpl {
this.addAbility(new FlankingAbility());
// {0}: The next 1 damage that would be dealt to Outrider en-Kor this turn is dealt to target creature you control instead.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/p/PendantOfProsperity.java b/Mage.Sets/src/mage/cards/p/PendantOfProsperity.java
index d090bb47d27..094c0d59b54 100644
--- a/Mage.Sets/src/mage/cards/p/PendantOfProsperity.java
+++ b/Mage.Sets/src/mage/cards/p/PendantOfProsperity.java
@@ -13,6 +13,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.cards.CardsImpl;
import mage.constants.CardType;
+import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.StaticFilters;
import mage.game.Game;
@@ -22,8 +23,6 @@ import mage.target.common.TargetCardInHand;
import java.util.UUID;
import mage.abilities.effects.common.EntersBattlefieldUnderControlOfOpponentOfChoiceEffect;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -57,7 +56,7 @@ class PendantOfProsperityEffect extends OneShotEffect {
private static final Effect effect2 = new PutCardFromHandOntoBattlefieldEffect(StaticFilters.FILTER_CARD_LAND_A);
PendantOfProsperityEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "Draw a card, then you may put a land card from your hand onto the battlefield. " +
"{this}'s owner draws a card, then that player may put a land card from their hand onto the battlefield.";
}
diff --git a/Mage.Sets/src/mage/cards/p/PendrellMists.java b/Mage.Sets/src/mage/cards/p/PendrellMists.java
index 786a5a0183e..b2900e0378c 100644
--- a/Mage.Sets/src/mage/cards/p/PendrellMists.java
+++ b/Mage.Sets/src/mage/cards/p/PendrellMists.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -27,7 +27,7 @@ public final class PendrellMists extends CardImpl {
// All creatures have "At the beginning of your upkeep, sacrifice this creature unless you pay {1}."
Ability gainedAbility = new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new GenericManaCost(1)), TargetController.YOU, false);
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(gainedAbility, Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES,
+ this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAllEffect(gainedAbility, Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES,
"All creatures have \"At the beginning of your upkeep, sacrifice this creature unless you pay {1}")));
}
diff --git a/Mage.Sets/src/mage/cards/p/PerilousForays.java b/Mage.Sets/src/mage/cards/p/PerilousForays.java
index f87106b80bd..b4744553a48 100644
--- a/Mage.Sets/src/mage/cards/p/PerilousForays.java
+++ b/Mage.Sets/src/mage/cards/p/PerilousForays.java
@@ -12,7 +12,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterLandCard;
import mage.filter.predicate.Predicates;
import mage.target.common.TargetCardInLibrary;
@@ -42,7 +42,7 @@ public final class PerilousForays extends CardImpl {
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter), true),
new ManaCostsImpl<>("{1}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianBroodlings.java b/Mage.Sets/src/mage/cards/p/PhyrexianBroodlings.java
index f7cfd84feb2..fabb427ce50 100644
--- a/Mage.Sets/src/mage/cards/p/PhyrexianBroodlings.java
+++ b/Mage.Sets/src/mage/cards/p/PhyrexianBroodlings.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -33,7 +33,7 @@ public final class PhyrexianBroodlings extends CardImpl {
// {1}, Sacrifice a creature: Put a +1/+1 counter on Phyrexian Broodlings.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance(1)), new GenericManaCost(1));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianGhoul.java b/Mage.Sets/src/mage/cards/p/PhyrexianGhoul.java
index b8334fd6cb4..9b565ce12b4 100644
--- a/Mage.Sets/src/mage/cards/p/PhyrexianGhoul.java
+++ b/Mage.Sets/src/mage/cards/p/PhyrexianGhoul.java
@@ -12,7 +12,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -29,7 +29,7 @@ public final class PhyrexianGhoul extends CardImpl {
this.power = new MageInt(2);
this.toughness = new MageInt(2);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private PhyrexianGhoul(final PhyrexianGhoul card) {
diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianPlaguelord.java b/Mage.Sets/src/mage/cards/p/PhyrexianPlaguelord.java
index 6c4d05ec56a..db3d5263a72 100644
--- a/Mage.Sets/src/mage/cards/p/PhyrexianPlaguelord.java
+++ b/Mage.Sets/src/mage/cards/p/PhyrexianPlaguelord.java
@@ -15,7 +15,7 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -43,7 +43,7 @@ public final class PhyrexianPlaguelord extends CardImpl {
// Sacrifice a creature: Target creature gets -1/-1 until end of turn.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new BoostTargetEffect(-1, -1, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianSoulgorger.java b/Mage.Sets/src/mage/cards/p/PhyrexianSoulgorger.java
index ead87ffa50b..054794266b5 100644
--- a/Mage.Sets/src/mage/cards/p/PhyrexianSoulgorger.java
+++ b/Mage.Sets/src/mage/cards/p/PhyrexianSoulgorger.java
@@ -10,7 +10,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -29,7 +29,7 @@ public final class PhyrexianSoulgorger extends CardImpl {
// Cumulative upkeep-Sacrifice a creature.
this.addAbility(new CumulativeUpkeepAbility(
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private PhyrexianSoulgorger(final PhyrexianSoulgorger card) {
diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianTower.java b/Mage.Sets/src/mage/cards/p/PhyrexianTower.java
index 9945638f5a5..8a45ab8952c 100644
--- a/Mage.Sets/src/mage/cards/p/PhyrexianTower.java
+++ b/Mage.Sets/src/mage/cards/p/PhyrexianTower.java
@@ -13,7 +13,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -31,7 +31,7 @@ public final class PhyrexianTower extends CardImpl {
// {T}, Sacrifice a creature: Add {B}{B}.
Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.BlackMana(2), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/p/PhyrexianVault.java b/Mage.Sets/src/mage/cards/p/PhyrexianVault.java
index ffaaefd7e38..2eb032fe240 100644
--- a/Mage.Sets/src/mage/cards/p/PhyrexianVault.java
+++ b/Mage.Sets/src/mage/cards/p/PhyrexianVault.java
@@ -12,7 +12,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -25,7 +25,7 @@ public final class PhyrexianVault extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new GenericManaCost(2));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/p/PlaguedRusalka.java b/Mage.Sets/src/mage/cards/p/PlaguedRusalka.java
index d87c4fef861..b8db0e51a40 100644
--- a/Mage.Sets/src/mage/cards/p/PlaguedRusalka.java
+++ b/Mage.Sets/src/mage/cards/p/PlaguedRusalka.java
@@ -11,7 +11,7 @@ import mage.abilities.effects.common.continuous.BoostTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -28,7 +28,7 @@ public final class PlaguedRusalka extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-1, -1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.B));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/p/PlaguemawBeast.java b/Mage.Sets/src/mage/cards/p/PlaguemawBeast.java
index 0e8605cf1b5..9f981ef4094 100644
--- a/Mage.Sets/src/mage/cards/p/PlaguemawBeast.java
+++ b/Mage.Sets/src/mage/cards/p/PlaguemawBeast.java
@@ -15,7 +15,7 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author Loki
@@ -32,7 +32,7 @@ public final class PlaguemawBeast extends CardImpl {
// {T}, Sacrifice a creature: Proliferate. (You choose any number of permanents and/or players with counters on them, then give each another counter of a kind already there.)
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ProliferateEffect(), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/p/Plaxmanta.java b/Mage.Sets/src/mage/cards/p/Plaxmanta.java
index 9080dc9550c..019d36f79ba 100644
--- a/Mage.Sets/src/mage/cards/p/Plaxmanta.java
+++ b/Mage.Sets/src/mage/cards/p/Plaxmanta.java
@@ -15,7 +15,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.ColoredManaSymbol;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -34,7 +34,7 @@ public final class Plaxmanta extends CardImpl {
// When Plaxmanta enters the battlefield, creatures you control gain shroud until end of turn.
this.addAbility(new EntersBattlefieldTriggeredAbility(
- new GainAbilityControlledEffect(ShroudAbility.getInstance(), Duration.EndOfTurn, FILTER_PERMANENT_CREATURES)));
+ new GainAbilityControlledEffect(ShroudAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURES)));
// When Plaxmanta enters the battlefield, sacrifice it unless {G} was spent to cast it.
this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessConditionEffect(ManaWasSpentCondition.GREEN), false));
diff --git a/Mage.Sets/src/mage/cards/p/PrimalGrowth.java b/Mage.Sets/src/mage/cards/p/PrimalGrowth.java
index 4bcee892a62..f47755c5afa 100644
--- a/Mage.Sets/src/mage/cards/p/PrimalGrowth.java
+++ b/Mage.Sets/src/mage/cards/p/PrimalGrowth.java
@@ -14,8 +14,6 @@ import mage.target.common.TargetControlledCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author fireshoes
*/
@@ -25,7 +23,7 @@ public final class PrimalGrowth extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{G}");
// Kicker-Sacrifice a creature.
- this.addAbility(new KickerAbility(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ this.addAbility(new KickerAbility(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
// Search your library for a basic land card, put that card onto the battlefield, then shuffle your library.
// If Primal Growth was kicked, instead search your library for up to two basic land cards, put them onto the battlefield, then shuffle your library.
diff --git a/Mage.Sets/src/mage/cards/q/QuagmireDruid.java b/Mage.Sets/src/mage/cards/q/QuagmireDruid.java
index e5d9335b7a9..e22f44bd777 100644
--- a/Mage.Sets/src/mage/cards/q/QuagmireDruid.java
+++ b/Mage.Sets/src/mage/cards/q/QuagmireDruid.java
@@ -15,7 +15,7 @@ import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetEnchantmentPermanent;
@@ -36,7 +36,7 @@ public final class QuagmireDruid extends CardImpl {
// {G}, {T}, Sacrifice a creature: Destroy target enchantment.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(false), new ColoredManaCost(ColoredManaSymbol.G));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetEnchantmentPermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/r/RadiantDestiny.java b/Mage.Sets/src/mage/cards/r/RadiantDestiny.java
index 7b90a359c10..61d9eaace4e 100644
--- a/Mage.Sets/src/mage/cards/r/RadiantDestiny.java
+++ b/Mage.Sets/src/mage/cards/r/RadiantDestiny.java
@@ -15,12 +15,11 @@ import mage.abilities.keyword.VigilanceAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES_CONTROLLED;
-
/**
* @author LevelX2
*/
@@ -44,7 +43,7 @@ public final class RadiantDestiny extends CardImpl {
// Creatures you control of the chosen type get +1/+1. As long as you have the city's blessing, they also have vigilance.
Ability ability = new SimpleStaticAbility(new BoostAllOfChosenSubtypeEffect(1, 1, Duration.WhileOnBattlefield, filter, false));
ContinuousEffect effect = new ConditionalContinuousEffect(
- new GainAbilityAllOfChosenSubtypeEffect(VigilanceAbility.getInstance(), Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES_CONTROLLED),
+ new GainAbilityAllOfChosenSubtypeEffect(VigilanceAbility.getInstance(), Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES_CONTROLLED),
CitysBlessingCondition.instance,
"As long as you have the city's blessing, they also have vigilance.");
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/r/RakdosRiteknife.java b/Mage.Sets/src/mage/cards/r/RakdosRiteknife.java
index 54efc9323d5..b176603f714 100644
--- a/Mage.Sets/src/mage/cards/r/RakdosRiteknife.java
+++ b/Mage.Sets/src/mage/cards/r/RakdosRiteknife.java
@@ -27,7 +27,7 @@ import mage.target.targetpointer.FixedTarget;
import java.util.UUID;
import mage.abilities.costs.mana.GenericManaCost;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author TheElk801
@@ -130,7 +130,7 @@ class RakdosRiteknifeEffect extends ContinuousEffectImpl {
.setTargetPointer(new FixedTarget(permanent, game)),
new TapSourceCost()
);
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
return ability;
}
}
diff --git a/Mage.Sets/src/mage/cards/r/ReapWhatIsSown.java b/Mage.Sets/src/mage/cards/r/ReapWhatIsSown.java
index d9c843d60fe..4a615e2dcdd 100644
--- a/Mage.Sets/src/mage/cards/r/ReapWhatIsSown.java
+++ b/Mage.Sets/src/mage/cards/r/ReapWhatIsSown.java
@@ -8,7 +8,6 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
import mage.target.common.TargetCreaturePermanent;
/**
@@ -24,7 +23,7 @@ public final class ReapWhatIsSown extends CardImpl {
Effect effect = new AddCountersTargetEffect(CounterType.P1P1.createInstance());
effect.setText("Put a +1/+1 counter on each of up to three target creatures");
this.getSpellAbility().addEffect(effect);
- this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, 3, FILTER_PERMANENT_CREATURES, false));
+ this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, 3));
}
private ReapWhatIsSown(final ReapWhatIsSown card) {
diff --git a/Mage.Sets/src/mage/cards/r/ReaperOfFlightMoonsilver.java b/Mage.Sets/src/mage/cards/r/ReaperOfFlightMoonsilver.java
index edec93a247e..cd9c97039b9 100644
--- a/Mage.Sets/src/mage/cards/r/ReaperOfFlightMoonsilver.java
+++ b/Mage.Sets/src/mage/cards/r/ReaperOfFlightMoonsilver.java
@@ -16,7 +16,7 @@ import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -38,7 +38,7 @@ public final class ReaperOfFlightMoonsilver extends CardImpl {
// Activate this ability only if there are four or more card types among cards in your graveyard.
this.addAbility(new ConditionalActivatedAbility(Zone.BATTLEFIELD,
new BoostSourceEffect(2, 1, Duration.EndOfTurn),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)),
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT),
DeliriumCondition.instance,
"Delirium — Sacrifice another creature: Reaper of Flight Moonsilver gets +2/+1 until end of turn. "
+ "Activate only if there are four or more card types among cards in your graveyard.")
diff --git a/Mage.Sets/src/mage/cards/r/RecklessAbandon.java b/Mage.Sets/src/mage/cards/r/RecklessAbandon.java
index bce44828c8c..252636dc1a3 100644
--- a/Mage.Sets/src/mage/cards/r/RecklessAbandon.java
+++ b/Mage.Sets/src/mage/cards/r/RecklessAbandon.java
@@ -7,7 +7,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -21,7 +21,7 @@ public final class RecklessAbandon extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{R}");
// As an additional cost to cast Reckless Abandon, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Reckless Abandon deals 4 damage to any target.
this.getSpellAbility().addEffect(new DamageTargetEffect(4));
diff --git a/Mage.Sets/src/mage/cards/r/RickSteadfastLeader.java b/Mage.Sets/src/mage/cards/r/RickSteadfastLeader.java
index f644037f4e2..e3a040ccc3f 100644
--- a/Mage.Sets/src/mage/cards/r/RickSteadfastLeader.java
+++ b/Mage.Sets/src/mage/cards/r/RickSteadfastLeader.java
@@ -30,8 +30,6 @@ import java.util.LinkedHashSet;
import java.util.Set;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -87,7 +85,7 @@ class RickSteadfastLeaderChooseEffect extends OneShotEffect {
}
RickSteadfastLeaderChooseEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "choose two abilities from among first strike, vigilance, and lifelink";
}
diff --git a/Mage.Sets/src/mage/cards/r/RitualOfTheMachine.java b/Mage.Sets/src/mage/cards/r/RitualOfTheMachine.java
index a33d06ea041..9d7925357c5 100644
--- a/Mage.Sets/src/mage/cards/r/RitualOfTheMachine.java
+++ b/Mage.Sets/src/mage/cards/r/RitualOfTheMachine.java
@@ -9,7 +9,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.ColorPredicate;
@@ -33,7 +33,7 @@ public final class RitualOfTheMachine extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{B}{B}");
// As an additional cost to cast Ritual of the Machine, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Gain control of target nonartifact, nonblack creature.
this.getSpellAbility().addEffect(new GainControlTargetEffect(Duration.EndOfGame));
this.getSpellAbility().addTarget(new TargetCreaturePermanent(filter));
diff --git a/Mage.Sets/src/mage/cards/r/Rout.java b/Mage.Sets/src/mage/cards/r/Rout.java
index 5b85d76656d..f4f3075f1c7 100644
--- a/Mage.Sets/src/mage/cards/r/Rout.java
+++ b/Mage.Sets/src/mage/cards/r/Rout.java
@@ -10,7 +10,7 @@ import mage.abilities.effects.common.DestroyAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -22,7 +22,7 @@ public final class Rout extends CardImpl {
public Rout(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{W}{W}");
- Effect effect = new DestroyAllEffect(FILTER_PERMANENT_CREATURES, true);
+ Effect effect = new DestroyAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES, true);
// You may cast Rout as though it had flash if you pay {2} more to cast it.
Ability ability = new PayMoreToCastAsThoughtItHadFlashAbility(this, new ManaCostsImpl<>("{2}"));
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/r/RuthlessKnave.java b/Mage.Sets/src/mage/cards/r/RuthlessKnave.java
index 009aeb23c9b..71a46746d89 100644
--- a/Mage.Sets/src/mage/cards/r/RuthlessKnave.java
+++ b/Mage.Sets/src/mage/cards/r/RuthlessKnave.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledPermanent;
import mage.game.permanent.token.TreasureToken;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -42,7 +42,7 @@ public final class RuthlessKnave extends CardImpl {
// {2}{B}, Sacrifice a creature: Create two colorless Treasure artifact tokens with "{T}, Sacrifice this artifact: Add one mana of any color."
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new TreasureToken(), 2), new ManaCostsImpl<>("{2}{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
// Sacrifice three Treasures: Draw a card.
diff --git a/Mage.Sets/src/mage/cards/s/Sacrifice.java b/Mage.Sets/src/mage/cards/s/Sacrifice.java
index 9824e920dff..8ce45589ca7 100644
--- a/Mage.Sets/src/mage/cards/s/Sacrifice.java
+++ b/Mage.Sets/src/mage/cards/s/Sacrifice.java
@@ -9,7 +9,7 @@ import mage.abilities.effects.mana.DynamicManaEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -22,7 +22,7 @@ public final class Sacrifice extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{B}");
// As an additional cost to cast Sacrifice, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Add an amount of {B} equal to the sacrificed creature's converted mana cost.
this.getSpellAbility().addEffect(new DynamicManaEffect(Mana.BlackMana(1), new SacrificeCostConvertedMana("creature"),
"add an amount of {B} equal to the sacrificed creature's mana value"));
diff --git a/Mage.Sets/src/mage/cards/s/SadisticHypnotist.java b/Mage.Sets/src/mage/cards/s/SadisticHypnotist.java
index 6efa981d315..9033ce26da0 100644
--- a/Mage.Sets/src/mage/cards/s/SadisticHypnotist.java
+++ b/Mage.Sets/src/mage/cards/s/SadisticHypnotist.java
@@ -12,7 +12,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.TargetPlayer;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetControlledPermanent;
@@ -32,8 +32,7 @@ public final class SadisticHypnotist extends CardImpl {
this.toughness = new MageInt(2);
// Sacrifice a creature: Target player discards two cards. Activate this ability only any time you could cast a sorcery.
- TargetControlledPermanent target = new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT);
- Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(2), new SacrificeTargetCost(target));
+ Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DiscardTargetEffect(2), new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/SanguinePraetor.java b/Mage.Sets/src/mage/cards/s/SanguinePraetor.java
index 2af8fef6a05..721afc0dce1 100644
--- a/Mage.Sets/src/mage/cards/s/SanguinePraetor.java
+++ b/Mage.Sets/src/mage/cards/s/SanguinePraetor.java
@@ -16,7 +16,6 @@ import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.StaticFilters;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.common.TargetControlledPermanent;
@@ -37,7 +36,7 @@ public final class SanguinePraetor extends CardImpl {
// {B}, Sacrifice a creature: Destroy each creature with the same converted mana cost as the sacrificed creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SanguinePraetorEffect(), new ManaCostsImpl<>("{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/Scapegoat.java b/Mage.Sets/src/mage/cards/s/Scapegoat.java
index 4b0b93c53aa..08dc3bf1ccf 100644
--- a/Mage.Sets/src/mage/cards/s/Scapegoat.java
+++ b/Mage.Sets/src/mage/cards/s/Scapegoat.java
@@ -8,7 +8,7 @@ import mage.abilities.effects.common.ReturnToHandTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledCreaturePermanent;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -22,7 +22,7 @@ public final class Scapegoat extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{W}");
// As an additional cost to cast Scapegoat, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Return any number of target creatures you control to their owner's hand.
Effect effect = new ReturnToHandTargetEffect();
diff --git a/Mage.Sets/src/mage/cards/s/ScarlandThrinax.java b/Mage.Sets/src/mage/cards/s/ScarlandThrinax.java
index b2216fe7271..8bb1e18c9de 100644
--- a/Mage.Sets/src/mage/cards/s/ScarlandThrinax.java
+++ b/Mage.Sets/src/mage/cards/s/ScarlandThrinax.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -34,7 +34,7 @@ public final class ScarlandThrinax extends CardImpl {
Ability ability = new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new AddCountersSourceEffect(CounterType.P1P1.createInstance()),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/ScorchedRusalka.java b/Mage.Sets/src/mage/cards/s/ScorchedRusalka.java
index b4ad7d8af82..ef5a66508f2 100644
--- a/Mage.Sets/src/mage/cards/s/ScorchedRusalka.java
+++ b/Mage.Sets/src/mage/cards/s/ScorchedRusalka.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetPlayerOrPlaneswalker;
@@ -31,7 +31,7 @@ public final class ScorchedRusalka extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ColoredManaCost(ColoredManaSymbol.R));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java b/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java
index 35318bdad7f..2a1e4d8d916 100644
--- a/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java
+++ b/Mage.Sets/src/mage/cards/s/ShattergangBrothers.java
@@ -16,7 +16,7 @@ import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledArtifactPermanent;
import mage.filter.common.FilterControlledPermanent;
import mage.game.Game;
@@ -41,8 +41,8 @@ public final class ShattergangBrothers extends CardImpl {
this.toughness = new MageInt(3);
// {2}{B}, Sacrifice a creature: Each other player sacrifices a creature.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShattergangBrothersEffect(FILTER_CONTROLLED_CREATURE_SHORT_TEXT), new ManaCostsImpl<>("{2}{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ShattergangBrothersEffect(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT), new ManaCostsImpl<>("{2}{B}"));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
// {2}{R}, Sacrifice an artifact: Each other player sacrifices an artifact.
FilterControlledPermanent filter = new FilterControlledArtifactPermanent("an artifact");
diff --git a/Mage.Sets/src/mage/cards/s/ShivanHarvest.java b/Mage.Sets/src/mage/cards/s/ShivanHarvest.java
index 19c050d4b49..b348e47d30d 100644
--- a/Mage.Sets/src/mage/cards/s/ShivanHarvest.java
+++ b/Mage.Sets/src/mage/cards/s/ShivanHarvest.java
@@ -11,7 +11,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetNonBasicLandPermanent;
@@ -26,7 +26,7 @@ public final class ShivanHarvest extends CardImpl {
// {1}{R}, Sacrifice a creature: Destroy target nonbasic land.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{1}{R}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetNonBasicLandPermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/SithEvoker.java b/Mage.Sets/src/mage/cards/s/SithEvoker.java
index 32f2fd29eb5..28d8646b231 100644
--- a/Mage.Sets/src/mage/cards/s/SithEvoker.java
+++ b/Mage.Sets/src/mage/cards/s/SithEvoker.java
@@ -22,7 +22,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
@@ -44,7 +44,7 @@ public final class SithEvoker extends CardImpl {
// {T}, {B}, Sacrifice a creature: You gain life equal to that creature's power or toughness.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SithEvokerEffect(), new ManaCostsImpl<>("{B}"));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/SkeletalKathari.java b/Mage.Sets/src/mage/cards/s/SkeletalKathari.java
index f6e44979d3a..2c55d2005b4 100644
--- a/Mage.Sets/src/mage/cards/s/SkeletalKathari.java
+++ b/Mage.Sets/src/mage/cards/s/SkeletalKathari.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -33,7 +33,7 @@ public final class SkeletalKathari extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/SkirsdagCultist.java b/Mage.Sets/src/mage/cards/s/SkirsdagCultist.java
index fc807c6e3d4..5e46c3d7f52 100644
--- a/Mage.Sets/src/mage/cards/s/SkirsdagCultist.java
+++ b/Mage.Sets/src/mage/cards/s/SkirsdagCultist.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -34,7 +34,7 @@ public final class SkirsdagCultist extends CardImpl {
// {R}, {T}, Sacrifice a creature: Skirsdag Cultist deals 2 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{R}"));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/SkullCatapult.java b/Mage.Sets/src/mage/cards/s/SkullCatapult.java
index 71bb15f78cc..ef6c9f1356c 100644
--- a/Mage.Sets/src/mage/cards/s/SkullCatapult.java
+++ b/Mage.Sets/src/mage/cards/s/SkullCatapult.java
@@ -12,7 +12,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetAnyTarget;
@@ -28,7 +28,7 @@ public final class SkullCatapult extends CardImpl {
// {1}, {tap}, Sacrifice a creature: Skull Catapult deals 2 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new GenericManaCost(1));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/SongOfFreyalise.java b/Mage.Sets/src/mage/cards/s/SongOfFreyalise.java
index 5d84aaa97fe..bd96ba9d8e8 100644
--- a/Mage.Sets/src/mage/cards/s/SongOfFreyalise.java
+++ b/Mage.Sets/src/mage/cards/s/SongOfFreyalise.java
@@ -17,7 +17,7 @@ import mage.constants.Duration;
import mage.constants.SagaChapter;
import mage.constants.SubType;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -35,18 +35,18 @@ public final class SongOfFreyalise extends CardImpl {
// I, II — Until your next turn, creatures you control gain "T: Add one mana of any color."
sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_I, SagaChapter.CHAPTER_II,
- new GainAbilityControlledEffect(new AnyColorManaAbility(), Duration.UntilYourNextTurn, FILTER_CONTROLLED_CREATURES)
+ new GainAbilityControlledEffect(new AnyColorManaAbility(), Duration.UntilYourNextTurn, StaticFilters.FILTER_CONTROLLED_CREATURES)
.setText("Until your next turn, creatures you control gain \"{T}: Add one mana of any color.\"")
);
// III — Put a +1/+1 counter on each creature you control. Those creatures gain vigilance, trample, and indestructible until end of turn.
Effects effects = new Effects();
- effects.add(new AddCountersAllEffect(CounterType.P1P1.createInstance(), FILTER_CONTROLLED_CREATURES));
- effects.add(new GainAbilityControlledEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn, FILTER_CONTROLLED_CREATURES)
+ effects.add(new AddCountersAllEffect(CounterType.P1P1.createInstance(), StaticFilters.FILTER_CONTROLLED_CREATURES));
+ effects.add(new GainAbilityControlledEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_CONTROLLED_CREATURES)
.setText("Those creatures gain vigilance"));
- effects.add(new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, FILTER_CONTROLLED_CREATURES)
+ effects.add(new GainAbilityControlledEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_CONTROLLED_CREATURES)
.setText(", trample"));
- effects.add(new GainAbilityControlledEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn, FILTER_CONTROLLED_CREATURES)
+ effects.add(new GainAbilityControlledEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn, StaticFilters.FILTER_CONTROLLED_CREATURES)
.setText("and indestructible until end of turn"));
sagaAbility.addChapterEffect(this, SagaChapter.CHAPTER_III, SagaChapter.CHAPTER_III, effects);
this.addAbility(sagaAbility);
diff --git a/Mage.Sets/src/mage/cards/s/SorinImperiousBloodlord.java b/Mage.Sets/src/mage/cards/s/SorinImperiousBloodlord.java
index ada847304be..476f5ef2235 100644
--- a/Mage.Sets/src/mage/cards/s/SorinImperiousBloodlord.java
+++ b/Mage.Sets/src/mage/cards/s/SorinImperiousBloodlord.java
@@ -14,10 +14,7 @@ import mage.abilities.keyword.DeathtouchAbility;
import mage.abilities.keyword.LifelinkAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
-import mage.constants.CardType;
-import mage.constants.Duration;
-import mage.constants.SubType;
-import mage.constants.SuperType;
+import mage.constants.*;
import mage.counters.CounterType;
import mage.filter.FilterCard;
import mage.filter.common.FilterControlledPermanent;
@@ -30,8 +27,6 @@ import mage.target.common.TargetControlledPermanent;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -88,7 +83,7 @@ public final class SorinImperiousBloodlord extends CardImpl {
class SorinImperiousBloodlordEffect extends OneShotEffect {
SorinImperiousBloodlordEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "Target creature you control gains deathtouch and lifelink until end of turn. " +
"If it's a Vampire, put a +1/+1 counter on it.";
}
diff --git a/Mage.Sets/src/mage/cards/s/SpawningPit.java b/Mage.Sets/src/mage/cards/s/SpawningPit.java
index bcd4d41c469..797e89b46ee 100644
--- a/Mage.Sets/src/mage/cards/s/SpawningPit.java
+++ b/Mage.Sets/src/mage/cards/s/SpawningPit.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
import mage.counters.CounterType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.permanent.token.SpawningPitToken;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -27,7 +27,7 @@ public final class SpawningPit extends CardImpl {
public SpawningPit(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SpawningPitToken()), new GenericManaCost(1));
ability.addCost(new RemoveCountersSourceCost(CounterType.CHARGE.createInstance(2)));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/s/SpiritEnKor.java b/Mage.Sets/src/mage/cards/s/SpiritEnKor.java
index 0f536988423..ab525deabd9 100644
--- a/Mage.Sets/src/mage/cards/s/SpiritEnKor.java
+++ b/Mage.Sets/src/mage/cards/s/SpiritEnKor.java
@@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.GenericManaCost;
-import static mage.abilities.effects.RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE;
+import mage.abilities.effects.RedirectionEffect;
import mage.abilities.effects.common.RedirectDamageFromSourceToTargetEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
@@ -35,7 +35,7 @@ public final class SpiritEnKor extends CardImpl {
// {0}: The next 1 damage that would be dealt to Spirit en-Kor this turn is dealt to target creature you control instead.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
- new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
+ new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/SpontaneousCombustion.java b/Mage.Sets/src/mage/cards/s/SpontaneousCombustion.java
index c548f43f97d..0c25ce1d348 100644
--- a/Mage.Sets/src/mage/cards/s/SpontaneousCombustion.java
+++ b/Mage.Sets/src/mage/cards/s/SpontaneousCombustion.java
@@ -7,7 +7,7 @@ import mage.abilities.effects.common.DamageAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreaturePermanent;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -20,7 +20,7 @@ public final class SpontaneousCombustion extends CardImpl {
public SpontaneousCombustion(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{B}{R}");
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.getSpellAbility().addEffect(new DamageAllEffect(3, new FilterCreaturePermanent()));
}
diff --git a/Mage.Sets/src/mage/cards/s/SpringbloomDruid.java b/Mage.Sets/src/mage/cards/s/SpringbloomDruid.java
index a12201c0bba..5f83be72a35 100644
--- a/Mage.Sets/src/mage/cards/s/SpringbloomDruid.java
+++ b/Mage.Sets/src/mage/cards/s/SpringbloomDruid.java
@@ -15,8 +15,6 @@ import mage.target.common.TargetControlledPermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_LAND_SHORT_TEXT;
-
/**
* @author TheElk801
*/
@@ -37,7 +35,7 @@ public final class SpringbloomDruid extends CardImpl {
), true
).setText("search your library for up to two basic land cards, " +
"put them onto the battlefield tapped, then shuffle"
- ), new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_LAND_SHORT_TEXT))
+ ), new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_LAND_SHORT_TEXT)
)));
}
diff --git a/Mage.Sets/src/mage/cards/s/StartFinish.java b/Mage.Sets/src/mage/cards/s/StartFinish.java
index 1915b03fb0d..184b6b38ef6 100644
--- a/Mage.Sets/src/mage/cards/s/StartFinish.java
+++ b/Mage.Sets/src/mage/cards/s/StartFinish.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.cards.SplitCard;
import mage.constants.CardType;
import mage.constants.SpellAbilityType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreaturePermanent;
import mage.game.permanent.token.WarriorVigilantToken;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -36,7 +36,7 @@ public final class StartFinish extends SplitCard {
// Aftermath
// As an additional cost to cast Finish, sacrifice a creature. Destroy target creature.
getRightHalfCard().addAbility(new AftermathAbility().setRuleAtTheTop(true));
- getRightHalfCard().getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ getRightHalfCard().getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
getRightHalfCard().getSpellAbility().addTarget(new TargetCreaturePermanent(new FilterCreaturePermanent("creature (to destoy)")));
getRightHalfCard().getSpellAbility().addEffect(new DestroyTargetEffect("Destroy target creature"));
}
diff --git a/Mage.Sets/src/mage/cards/s/StarvedRusalka.java b/Mage.Sets/src/mage/cards/s/StarvedRusalka.java
index 79be031f4cf..ab399067606 100644
--- a/Mage.Sets/src/mage/cards/s/StarvedRusalka.java
+++ b/Mage.Sets/src/mage/cards/s/StarvedRusalka.java
@@ -14,7 +14,7 @@ import mage.constants.CardType;
import mage.constants.ColoredManaSymbol;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -30,7 +30,7 @@ public final class StarvedRusalka extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ColoredManaCost(ColoredManaSymbol.G));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/s/SublimeExhalation.java b/Mage.Sets/src/mage/cards/s/SublimeExhalation.java
index d68a5e78250..397cd52c4a0 100644
--- a/Mage.Sets/src/mage/cards/s/SublimeExhalation.java
+++ b/Mage.Sets/src/mage/cards/s/SublimeExhalation.java
@@ -7,7 +7,7 @@ import mage.abilities.keyword.UndauntedAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -22,7 +22,7 @@ public final class SublimeExhalation extends CardImpl {
this.addAbility(new UndauntedAbility());
// Destroy all creatures.
- getSpellAbility().addEffect(new DestroyAllEffect(FILTER_PERMANENT_CREATURES));
+ getSpellAbility().addEffect(new DestroyAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES));
}
private SublimeExhalation(final SublimeExhalation card) {
diff --git a/Mage.Sets/src/mage/cards/s/SuddenSubstitution.java b/Mage.Sets/src/mage/cards/s/SuddenSubstitution.java
index a6deb99443f..8f55f6f15a5 100644
--- a/Mage.Sets/src/mage/cards/s/SuddenSubstitution.java
+++ b/Mage.Sets/src/mage/cards/s/SuddenSubstitution.java
@@ -9,6 +9,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
+import mage.constants.Outcome;
import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
@@ -19,8 +20,6 @@ import mage.target.targetpointer.FixedTarget;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -51,7 +50,7 @@ public final class SuddenSubstitution extends CardImpl {
class SuddenSubstitutionEffect extends OneShotEffect {
SuddenSubstitutionEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "Exchange control of target noncreature spell and target creature. " +
"Then the spell's controller may choose new targets for it.";
}
diff --git a/Mage.Sets/src/mage/cards/s/SunQuanLordOfWu.java b/Mage.Sets/src/mage/cards/s/SunQuanLordOfWu.java
index 1d90ee54f9e..52b6a2c6852 100644
--- a/Mage.Sets/src/mage/cards/s/SunQuanLordOfWu.java
+++ b/Mage.Sets/src/mage/cards/s/SunQuanLordOfWu.java
@@ -13,7 +13,7 @@ import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -32,7 +32,7 @@ public final class SunQuanLordOfWu extends CardImpl {
// Creatures you control have horsemanship.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(HorsemanshipAbility.getInstance(),
- Duration.WhileOnBattlefield, FILTER_PERMANENT_CREATURES)));
+ Duration.WhileOnBattlefield, StaticFilters.FILTER_PERMANENT_CREATURES)));
}
private SunQuanLordOfWu(final SunQuanLordOfWu card) {
diff --git a/Mage.Sets/src/mage/cards/t/TamiyoCollectorOfTales.java b/Mage.Sets/src/mage/cards/t/TamiyoCollectorOfTales.java
index e734258102b..b96638abe9a 100644
--- a/Mage.Sets/src/mage/cards/t/TamiyoCollectorOfTales.java
+++ b/Mage.Sets/src/mage/cards/t/TamiyoCollectorOfTales.java
@@ -18,8 +18,6 @@ import mage.util.CardUtil;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -57,7 +55,7 @@ public final class TamiyoCollectorOfTales extends CardImpl {
class TamiyoCollectorOfTalesRuleEffect extends ContinuousRuleModifyingEffectImpl {
TamiyoCollectorOfTalesRuleEffect() {
- super(Duration.WhileOnBattlefield, Benefit);
+ super(Duration.WhileOnBattlefield, Outcome.Benefit);
staticText = "Spells and abilities your opponents control can't "
+ "cause you to discard cards or sacrifice permanents";
}
diff --git a/Mage.Sets/src/mage/cards/t/TectonicGiant.java b/Mage.Sets/src/mage/cards/t/TectonicGiant.java
index e4b5cd33049..f468bc1d025 100644
--- a/Mage.Sets/src/mage/cards/t/TectonicGiant.java
+++ b/Mage.Sets/src/mage/cards/t/TectonicGiant.java
@@ -12,7 +12,6 @@ import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.DamagePlayersEffect;
import mage.cards.*;
import mage.constants.*;
-import static mage.constants.Outcome.Benefit;
import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.events.GameEvent;
@@ -96,7 +95,7 @@ class TectonicGiantTriggeredAbility extends TriggeredAbilityImpl {
class TectonicGiantEffect extends OneShotEffect {
TectonicGiantEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "exile the top two cards of your library. Choose one of them. "
+ "Until the end of your next turn, you may play that card";
}
diff --git a/Mage.Sets/src/mage/cards/t/TempestCaller.java b/Mage.Sets/src/mage/cards/t/TempestCaller.java
index e800deb03d4..4a60db34501 100644
--- a/Mage.Sets/src/mage/cards/t/TempestCaller.java
+++ b/Mage.Sets/src/mage/cards/t/TempestCaller.java
@@ -9,7 +9,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.target.common.TargetOpponent;
/**
@@ -27,7 +27,7 @@ public final class TempestCaller extends CardImpl {
this.toughness = new MageInt(3);
// When Tempest Caller enters the battlefield, tap all creatures target opponent controls.
- Ability ability = new EntersBattlefieldTriggeredAbility(new TapAllTargetPlayerControlsEffect(FILTER_PERMANENT_CREATURES));
+ Ability ability = new EntersBattlefieldTriggeredAbility(new TapAllTargetPlayerControlsEffect(StaticFilters.FILTER_PERMANENT_CREATURES));
ability.addTarget(new TargetOpponent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TempleOfAclazotz.java b/Mage.Sets/src/mage/cards/t/TempleOfAclazotz.java
index 7d62621075d..0a862745f90 100644
--- a/Mage.Sets/src/mage/cards/t/TempleOfAclazotz.java
+++ b/Mage.Sets/src/mage/cards/t/TempleOfAclazotz.java
@@ -15,7 +15,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -37,7 +37,7 @@ public final class TempleOfAclazotz extends CardImpl {
// {T}, Sacrifice a creature: You gain life equal to the sacrificed creature's toughness.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TempleOfAclazotzEffect(), new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TendrilsOfDespair.java b/Mage.Sets/src/mage/cards/t/TendrilsOfDespair.java
index 0beaa659c2e..c82f28709ea 100644
--- a/Mage.Sets/src/mage/cards/t/TendrilsOfDespair.java
+++ b/Mage.Sets/src/mage/cards/t/TendrilsOfDespair.java
@@ -7,7 +7,7 @@ import mage.abilities.effects.common.discard.DiscardTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetOpponent;
@@ -21,7 +21,7 @@ public final class TendrilsOfDespair extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{B}");
// As an additional cost to cast Tendrils of Despair, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Target opponent discards two cards.
this.getSpellAbility().addTarget(new TargetOpponent());
diff --git a/Mage.Sets/src/mage/cards/t/TerashisCry.java b/Mage.Sets/src/mage/cards/t/TerashisCry.java
index 3ce52c4ffb9..43a2b7dbed9 100644
--- a/Mage.Sets/src/mage/cards/t/TerashisCry.java
+++ b/Mage.Sets/src/mage/cards/t/TerashisCry.java
@@ -36,7 +36,6 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.target.Target;
import mage.target.common.TargetCreaturePermanent;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
import java.util.UUID;
@@ -50,9 +49,8 @@ public final class TerashisCry extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{W}");
this.subtype.add(SubType.ARCANE);
-
// Tap up to three target creatures.
- Target target = new TargetCreaturePermanent(0, 3, FILTER_PERMANENT_CREATURES, false);
+ Target target = new TargetCreaturePermanent(0, 3);
this.getSpellAbility().addEffect(new TapTargetEffect());
this.getSpellAbility().addTarget(target);
}
@@ -66,4 +64,4 @@ public final class TerashisCry extends CardImpl {
return new TerashisCry(this);
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/t/TeveshSzatDoomOfFools.java b/Mage.Sets/src/mage/cards/t/TeveshSzatDoomOfFools.java
index fb246421137..4c6f393a382 100644
--- a/Mage.Sets/src/mage/cards/t/TeveshSzatDoomOfFools.java
+++ b/Mage.Sets/src/mage/cards/t/TeveshSzatDoomOfFools.java
@@ -28,8 +28,6 @@ import java.util.Objects;
import java.util.Set;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -79,7 +77,7 @@ class TeveshSzatDoomOfFoolsSacrificeEffect extends OneShotEffect {
}
TeveshSzatDoomOfFoolsSacrificeEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "you may sacrifice another creature or planeswalker. If you do, draw two cards, " +
"then draw another card if the sacrificed permanent was a commander";
}
diff --git a/Mage.Sets/src/mage/cards/t/ThallidSoothsayer.java b/Mage.Sets/src/mage/cards/t/ThallidSoothsayer.java
index 71f925fc4c8..3abc6d49d79 100644
--- a/Mage.Sets/src/mage/cards/t/ThallidSoothsayer.java
+++ b/Mage.Sets/src/mage/cards/t/ThallidSoothsayer.java
@@ -12,7 +12,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -30,7 +30,7 @@ public final class ThallidSoothsayer extends CardImpl {
// {2}, Sacrifice a creature: Draw a card.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new GenericManaCost(2));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TheloniteDruid.java b/Mage.Sets/src/mage/cards/t/TheloniteDruid.java
index 29e15754ac2..946a4463306 100644
--- a/Mage.Sets/src/mage/cards/t/TheloniteDruid.java
+++ b/Mage.Sets/src/mage/cards/t/TheloniteDruid.java
@@ -13,7 +13,7 @@ import mage.abilities.effects.common.continuous.BecomesCreatureAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.*;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledLandPermanent;
import mage.game.permanent.token.TokenImpl;
import mage.game.permanent.token.custom.CreatureToken;
@@ -48,7 +48,7 @@ public final class TheloniteDruid extends CardImpl {
effect,
new ManaCostsImpl<>("{1}{G}"));
ability.addCost(new TapSourceCost());
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/Thermopod.java b/Mage.Sets/src/mage/cards/t/Thermopod.java
index 26b5a767abb..8a222d67342 100644
--- a/Mage.Sets/src/mage/cards/t/Thermopod.java
+++ b/Mage.Sets/src/mage/cards/t/Thermopod.java
@@ -19,7 +19,7 @@ import mage.constants.SubType;
import mage.constants.Duration;
import mage.constants.SuperType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -40,7 +40,7 @@ public final class Thermopod extends CardImpl {
HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{S}")));
// Sacrifice a creature: Add {R}.
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(Mana.RedMana(1), CreaturesYouControlCount.instance),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private Thermopod(final Thermopod card) {
diff --git a/Mage.Sets/src/mage/cards/t/ThoughtpickerWitch.java b/Mage.Sets/src/mage/cards/t/ThoughtpickerWitch.java
index 4f6a03ddb18..6a4b91c9deb 100644
--- a/Mage.Sets/src/mage/cards/t/ThoughtpickerWitch.java
+++ b/Mage.Sets/src/mage/cards/t/ThoughtpickerWitch.java
@@ -18,7 +18,7 @@ import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.Zone;
import mage.filter.FilterCard;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.TargetCard;
@@ -42,7 +42,7 @@ public final class ThoughtpickerWitch extends CardImpl {
// {1}, Sacrifice a creature: Look at the top two cards of target opponent's library, then exile one of them.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ThoughtpickerWitchEffect(), new GenericManaCost(1));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetOpponent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/Thud.java b/Mage.Sets/src/mage/cards/t/Thud.java
index 88581cf7cc4..c6500614069 100644
--- a/Mage.Sets/src/mage/cards/t/Thud.java
+++ b/Mage.Sets/src/mage/cards/t/Thud.java
@@ -7,7 +7,7 @@ import mage.abilities.effects.common.DamageTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetAnyTarget;
import mage.target.common.TargetControlledCreaturePermanent;
@@ -21,9 +21,7 @@ public final class Thud extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{R}");
// As an additional cost to cast this spell, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(
- new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
- ));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// Thud deals damage equal to the sacrificed creature's power to any target.
this.getSpellAbility().addEffect(new DamageTargetEffect(SacrificeCostCreaturesPower.instance)
diff --git a/Mage.Sets/src/mage/cards/t/TolsimirFriendToWolves.java b/Mage.Sets/src/mage/cards/t/TolsimirFriendToWolves.java
index 4665c0138b3..8db9989bb4e 100644
--- a/Mage.Sets/src/mage/cards/t/TolsimirFriendToWolves.java
+++ b/Mage.Sets/src/mage/cards/t/TolsimirFriendToWolves.java
@@ -10,10 +10,7 @@ import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.GainLifeEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
-import mage.constants.CardType;
-import mage.constants.SubType;
-import mage.constants.SuperType;
-import mage.constants.Zone;
+import mage.constants.*;
import mage.game.Game;
import mage.game.events.GameEvent;
import mage.game.permanent.Permanent;
@@ -22,8 +19,6 @@ import mage.target.common.TargetOpponentsCreaturePermanent;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -102,7 +97,7 @@ class TolsimirFriendToWolvesEffect extends OneShotEffect {
private final MageObjectReference wolfMor;
TolsimirFriendToWolvesEffect(MageObjectReference wolfMor) {
- super(Benefit);
+ super(Outcome.Benefit);
this.wolfMor = wolfMor;
}
@@ -129,4 +124,4 @@ class TolsimirFriendToWolvesEffect extends OneShotEffect {
}
return wolf.fight(permanent, source, game);
}
-}
\ No newline at end of file
+}
diff --git a/Mage.Sets/src/mage/cards/t/TorrentElemental.java b/Mage.Sets/src/mage/cards/t/TorrentElemental.java
index f6347ccca7f..9822eb89086 100644
--- a/Mage.Sets/src/mage/cards/t/TorrentElemental.java
+++ b/Mage.Sets/src/mage/cards/t/TorrentElemental.java
@@ -18,7 +18,7 @@ import mage.constants.Outcome;
import mage.constants.SetTargetPointer;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
@@ -37,7 +37,7 @@ public final class TorrentElemental extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// Whenever Torrent Elemental attacks, tap all creatures defending player controls.
- Effect effect = new TapAllTargetPlayerControlsEffect(FILTER_PERMANENT_CREATURES);
+ Effect effect = new TapAllTargetPlayerControlsEffect(StaticFilters.FILTER_PERMANENT_CREATURES);
effect.setText("tap all creatures defending player controls.");
this.addAbility(new AttacksTriggeredAbility(effect, false, null, SetTargetPointer.PLAYER));
// {3}{B/G}{B/G}: Put Torrent Elemental from exile onto the battlefield tapped. Activate this ability only any time you could cast a sorcery.
diff --git a/Mage.Sets/src/mage/cards/t/TorrentSculptor.java b/Mage.Sets/src/mage/cards/t/TorrentSculptor.java
index 9ea8e75163d..14fddc2e096 100644
--- a/Mage.Sets/src/mage/cards/t/TorrentSculptor.java
+++ b/Mage.Sets/src/mage/cards/t/TorrentSculptor.java
@@ -24,8 +24,6 @@ import mage.target.common.TargetCardInYourGraveyard;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -67,7 +65,7 @@ public final class TorrentSculptor extends ModalDoubleFacedCard {
class TorrentSculptorEffect extends OneShotEffect {
TorrentSculptorEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "exile an instant or sorcery card from your graveyard. " +
"Put a number of +1/+1 counters on {this} equal to half that card's mana value, rounded up.";
}
diff --git a/Mage.Sets/src/mage/cards/t/TradingPost.java b/Mage.Sets/src/mage/cards/t/TradingPost.java
index 10658359f65..61e395b49ac 100644
--- a/Mage.Sets/src/mage/cards/t/TradingPost.java
+++ b/Mage.Sets/src/mage/cards/t/TradingPost.java
@@ -24,8 +24,6 @@ import mage.target.common.TargetControlledPermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author jeffwadsworth
*/
@@ -50,7 +48,7 @@ public final class TradingPost extends CardImpl {
Ability ability3 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToHandTargetEffect(), new GenericManaCost(1));
ability3.addTarget(new TargetCardInGraveyard(StaticFilters.FILTER_CARD_ARTIFACT_FROM_YOUR_GRAVEYARD));
ability3.addCost(new TapSourceCost());
- ability3.addCost(new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability3.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability3);
// {1}, {T}, Sacrifice an artifact: Draw a card.
diff --git a/Mage.Sets/src/mage/cards/t/TymaretCallsTheDead.java b/Mage.Sets/src/mage/cards/t/TymaretCallsTheDead.java
index 27df4c43a8c..a54089c2810 100644
--- a/Mage.Sets/src/mage/cards/t/TymaretCallsTheDead.java
+++ b/Mage.Sets/src/mage/cards/t/TymaretCallsTheDead.java
@@ -20,8 +20,6 @@ import mage.target.common.TargetCardInYourGraveyard;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -70,7 +68,7 @@ class TymaretCallsTheDeadFirstEffect extends OneShotEffect {
}
TymaretCallsTheDeadFirstEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "mill three cards. Then you may exile a creature or enchantment card from your graveyard. " +
"If you do, create a 2/2 black Zombie creature token";
}
@@ -110,7 +108,7 @@ class TymaretCallsTheDeadLastEffect extends OneShotEffect {
private static final FilterPermanent filter = new FilterPermanent(SubType.ZOMBIE, "");
TymaretCallsTheDeadLastEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "You gain X life and scry X, where X is the number of Zombies you control.";
}
diff --git a/Mage.Sets/src/mage/cards/t/TymaretTheMurderKing.java b/Mage.Sets/src/mage/cards/t/TymaretTheMurderKing.java
index 0b0b75facc0..80fb22538f8 100644
--- a/Mage.Sets/src/mage/cards/t/TymaretTheMurderKing.java
+++ b/Mage.Sets/src/mage/cards/t/TymaretTheMurderKing.java
@@ -16,7 +16,7 @@ import mage.constants.SubType;
import mage.constants.SuperType;
import mage.constants.Zone;
import mage.filter.StaticFilters;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetPlayerOrPlaneswalker;
@@ -42,7 +42,7 @@ public final class TymaretTheMurderKing extends CardImpl {
this.addAbility(ability);
// {1}{B}, Sacrifice a creature: Return Tymaret from your graveyard to your hand.
ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToHandEffect(), new ManaCostsImpl<>("{1}{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TyvarJubilantBrawler.java b/Mage.Sets/src/mage/cards/t/TyvarJubilantBrawler.java
index ea7e133012c..5b115c5479d 100644
--- a/Mage.Sets/src/mage/cards/t/TyvarJubilantBrawler.java
+++ b/Mage.Sets/src/mage/cards/t/TyvarJubilantBrawler.java
@@ -24,7 +24,6 @@ import mage.target.TargetCard;
import mage.target.common.TargetCardInYourGraveyard;
import mage.target.common.TargetCreaturePermanent;
-import static mage.constants.Outcome.Benefit;
/**
* @author TheElk801
diff --git a/Mage.Sets/src/mage/cards/u/UginTheIneffable.java b/Mage.Sets/src/mage/cards/u/UginTheIneffable.java
index 1a1944d2499..8e74e9d19cf 100644
--- a/Mage.Sets/src/mage/cards/u/UginTheIneffable.java
+++ b/Mage.Sets/src/mage/cards/u/UginTheIneffable.java
@@ -36,8 +36,6 @@ import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
-import static mage.constants.Outcome.Benefit;
-
/**
* @author TheElk801
*/
@@ -85,7 +83,7 @@ public final class UginTheIneffable extends CardImpl {
class UginTheIneffableEffect extends OneShotEffect {
UginTheIneffableEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "Exile the top card of your library face down and look at it. "
+ "Create a 2/2 colorless Spirit creature token. When that token leaves the battlefield, "
+ "put the exiled card into your hand.";
diff --git a/Mage.Sets/src/mage/cards/u/UndercityInformer.java b/Mage.Sets/src/mage/cards/u/UndercityInformer.java
index ba42e5dc817..b974277ac36 100644
--- a/Mage.Sets/src/mage/cards/u/UndercityInformer.java
+++ b/Mage.Sets/src/mage/cards/u/UndercityInformer.java
@@ -16,7 +16,7 @@ import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.players.Player;
import mage.target.TargetPlayer;
@@ -39,7 +39,7 @@ public final class UndercityInformer extends CardImpl {
//{1}, Sacrifice a creature: Target player reveals the top card of their library until they reveal a land card, then puts those cards into their graveyard.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UndercityInformerEffect(), new ManaCostsImpl<>("{1}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/u/UnquestionedAuthority.java b/Mage.Sets/src/mage/cards/u/UnquestionedAuthority.java
index 1153e80ee97..6ed6ff79295 100644
--- a/Mage.Sets/src/mage/cards/u/UnquestionedAuthority.java
+++ b/Mage.Sets/src/mage/cards/u/UnquestionedAuthority.java
@@ -17,7 +17,7 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Outcome;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
import mage.target.TargetPermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -42,7 +42,7 @@ public final class UnquestionedAuthority extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new DrawCardSourceControllerEffect(1)));
// Enchanted creature has protection from creatures.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
- new GainAbilityAttachedEffect(new ProtectionAbility(FILTER_PERMANENT_CREATURES), AttachmentType.AURA)));
+ new GainAbilityAttachedEffect(new ProtectionAbility(StaticFilters.FILTER_PERMANENT_CREATURES), AttachmentType.AURA)));
}
private UnquestionedAuthority(final UnquestionedAuthority card) {
diff --git a/Mage.Sets/src/mage/cards/v/VampiricRites.java b/Mage.Sets/src/mage/cards/v/VampiricRites.java
index 635ed530dca..57c03fff978 100644
--- a/Mage.Sets/src/mage/cards/v/VampiricRites.java
+++ b/Mage.Sets/src/mage/cards/v/VampiricRites.java
@@ -13,7 +13,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -27,7 +27,7 @@ public final class VampiricRites extends CardImpl {
// {1}{B}, Sacrifice a creature: You gain 1 life and draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl<>("{1}{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
Effect effect = new DrawCardSourceControllerEffect(1);
effect.setText("and draw a card");
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/v/ViciousOffering.java b/Mage.Sets/src/mage/cards/v/ViciousOffering.java
index 59caba345c5..c7caa73e54f 100644
--- a/Mage.Sets/src/mage/cards/v/ViciousOffering.java
+++ b/Mage.Sets/src/mage/cards/v/ViciousOffering.java
@@ -12,7 +12,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -26,7 +26,7 @@ public final class ViciousOffering extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.INSTANT}, "{1}{B}");
// Kicker—Sacrifice a creature.
- this.addAbility(new KickerAbility(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ this.addAbility(new KickerAbility(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
// Target creature gets -2/-2 until end of turn. If this spell was kicked, that creature gets -5/-5 until end of turn instead.
this.getSpellAbility().addEffect(new ConditionalContinuousEffect(new BoostTargetEffect(-5, -5, Duration.EndOfTurn),
diff --git a/Mage.Sets/src/mage/cards/v/Victimize.java b/Mage.Sets/src/mage/cards/v/Victimize.java
index 8e5ca1e3523..d485e886c6a 100644
--- a/Mage.Sets/src/mage/cards/v/Victimize.java
+++ b/Mage.Sets/src/mage/cards/v/Victimize.java
@@ -11,7 +11,7 @@ import mage.cards.CardsImpl;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterCreatureCard;
import mage.game.Game;
import mage.players.Player;
@@ -62,7 +62,7 @@ class VictimizeEffect extends OneShotEffect {
public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
if (controller != null) {
- SacrificeTargetCost cost = new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
+ SacrificeTargetCost cost = new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT);
if (cost.pay(source, game, source, source.getControllerId(), false, null)) {
game.getState().processAction(game); // To end effects of the sacrificed creature
controller.moveCards(new CardsImpl(getTargetPointer().getTargets(game, source)).getCards(game),
diff --git a/Mage.Sets/src/mage/cards/v/VisceraSeer.java b/Mage.Sets/src/mage/cards/v/VisceraSeer.java
index 9579239a24e..19b6d90d79a 100644
--- a/Mage.Sets/src/mage/cards/v/VisceraSeer.java
+++ b/Mage.Sets/src/mage/cards/v/VisceraSeer.java
@@ -11,7 +11,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -29,7 +29,7 @@ public final class VisceraSeer extends CardImpl {
this.toughness = new MageInt(1);
// Sacrifice a creature: Scry 1. (To scry 1, look at the top card of your library, then you may put that card on the bottom of your library.)
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryEffect(1),
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
}
private VisceraSeer(final VisceraSeer card) {
diff --git a/Mage.Sets/src/mage/cards/v/VisceridDrone.java b/Mage.Sets/src/mage/cards/v/VisceridDrone.java
index 0996ddddece..2ac1e69c0d6 100644
--- a/Mage.Sets/src/mage/cards/v/VisceridDrone.java
+++ b/Mage.Sets/src/mage/cards/v/VisceridDrone.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.SuperType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.filter.common.FilterControlledPermanent;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
@@ -50,7 +50,7 @@ public final class VisceridDrone extends CardImpl {
// {tap}, Sacrifice a creature and a Swamp: Destroy target nonartifact creature. It can't be regenerated.
Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(true), new TapSourceCost());
ability.addCost(new CompositeCost(
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)),
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT),
new SacrificeTargetCost(new TargetControlledPermanent(filter2)),
"Sacrifice a creature and a Swamp"
));
@@ -60,7 +60,7 @@ public final class VisceridDrone extends CardImpl {
// {tap}, Sacrifice a creature and a snow Swamp: Destroy target creature. It can't be regenerated.
ability = new SimpleActivatedAbility(new DestroyTargetEffect(true), new TapSourceCost());
ability.addCost(new CompositeCost(
- new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)),
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT),
new SacrificeTargetCost(new TargetControlledPermanent(filter3)),
"Sacrifice a creature and a snow Swamp"
));
diff --git a/Mage.Sets/src/mage/cards/v/VishKalBloodArbiter.java b/Mage.Sets/src/mage/cards/v/VishKalBloodArbiter.java
index b7ed955cda7..ded8f3e5ab3 100644
--- a/Mage.Sets/src/mage/cards/v/VishKalBloodArbiter.java
+++ b/Mage.Sets/src/mage/cards/v/VishKalBloodArbiter.java
@@ -20,14 +20,13 @@ import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.SuperType;
import mage.counters.CounterType;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.target.common.TargetControlledPermanent;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
-
/**
* @author LevelX2
*/
@@ -52,7 +51,7 @@ public final class VishKalBloodArbiter extends CardImpl {
new AddCountersSourceEffect(
CounterType.P1P1.createInstance(), SacrificeCostCreaturesPower.instance, true
).setText("put X +1/+1 counters on {this}, where X is the sacrificed creature's power"),
- new SacrificeTargetCost(new TargetControlledPermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))
+ new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)
));
// Remove all +1/+1 counters from Vish Kal: Target creature gets -1/-1 until end of turn for each +1/+1 counter removed this way.
diff --git a/Mage.Sets/src/mage/cards/v/Vivisection.java b/Mage.Sets/src/mage/cards/v/Vivisection.java
index 88e65e72177..9b601b7e561 100644
--- a/Mage.Sets/src/mage/cards/v/Vivisection.java
+++ b/Mage.Sets/src/mage/cards/v/Vivisection.java
@@ -7,7 +7,7 @@ import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -20,7 +20,7 @@ public final class Vivisection extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{3}{U}");
this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(3));
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
}
private Vivisection(final Vivisection card) {
diff --git a/Mage.Sets/src/mage/cards/w/WakeOfVultures.java b/Mage.Sets/src/mage/cards/w/WakeOfVultures.java
index 8302e5ed7b0..6a7c0674397 100644
--- a/Mage.Sets/src/mage/cards/w/WakeOfVultures.java
+++ b/Mage.Sets/src/mage/cards/w/WakeOfVultures.java
@@ -14,7 +14,7 @@ import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.constants.Zone;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -33,7 +33,7 @@ public final class WakeOfVultures extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {1}{B}, Sacrifice a creature: Regenerate Wake of Vultures.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/w/WarriorEnKor.java b/Mage.Sets/src/mage/cards/w/WarriorEnKor.java
index 00de847db29..36946cc7a29 100644
--- a/Mage.Sets/src/mage/cards/w/WarriorEnKor.java
+++ b/Mage.Sets/src/mage/cards/w/WarriorEnKor.java
@@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.GenericManaCost;
-import static mage.abilities.effects.RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE;
+import mage.abilities.effects.RedirectionEffect;
import mage.abilities.effects.common.RedirectDamageFromSourceToTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@@ -32,7 +32,7 @@ public final class WarriorEnKor extends CardImpl {
// {0}: The next 1 damage that would be dealt to Warrior en-Kor this turn is dealt to target creature you control instead.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
- new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
+ new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE), new GenericManaCost(0));
ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/w/WickedReward.java b/Mage.Sets/src/mage/cards/w/WickedReward.java
index e9c80941164..90fee8428d8 100644
--- a/Mage.Sets/src/mage/cards/w/WickedReward.java
+++ b/Mage.Sets/src/mage/cards/w/WickedReward.java
@@ -7,7 +7,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
import mage.target.common.TargetCreaturePermanent;
@@ -17,7 +17,7 @@ public final class WickedReward extends CardImpl {
super(cardId, cardSetInfo, new CardType[]{CardType.INSTANT}, "{1}{B}");
//As an additional cost to cast Wicked Reward, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
//Target creature gets +4/+2 until end of turn.
this.getSpellAbility().addEffect(new BoostTargetEffect(4, 2, Duration.EndOfTurn));
diff --git a/Mage.Sets/src/mage/cards/w/WorthyCause.java b/Mage.Sets/src/mage/cards/w/WorthyCause.java
index cf87398971d..62fdc09adf7 100644
--- a/Mage.Sets/src/mage/cards/w/WorthyCause.java
+++ b/Mage.Sets/src/mage/cards/w/WorthyCause.java
@@ -10,7 +10,7 @@ import mage.abilities.keyword.BuybackAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
import mage.target.common.TargetControlledCreaturePermanent;
/**
@@ -26,7 +26,7 @@ public final class WorthyCause extends CardImpl {
this.addAbility(new BuybackAbility("{2}"));
// As an additional cost to cast Worthy Cause, sacrifice a creature.
- this.getSpellAbility().addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ this.getSpellAbility().addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
// You gain life equal to the sacrificed creature's toughness.
Effect effect = new GainLifeEffect(SacrificeCostCreaturesToughness.instance);
diff --git a/Mage.Sets/src/mage/cards/w/WrathOfGod.java b/Mage.Sets/src/mage/cards/w/WrathOfGod.java
index 21e2aaec071..adbf5597473 100644
--- a/Mage.Sets/src/mage/cards/w/WrathOfGod.java
+++ b/Mage.Sets/src/mage/cards/w/WrathOfGod.java
@@ -6,7 +6,7 @@ import mage.abilities.effects.common.DestroyAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURES;
+import mage.filter.StaticFilters;
/**
*
@@ -18,7 +18,7 @@ public final class WrathOfGod extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{2}{W}{W}");
// Destroy all creatures. They can't be regenerated.
- this.getSpellAbility().addEffect(new DestroyAllEffect(FILTER_PERMANENT_CREATURES, true));
+ this.getSpellAbility().addEffect(new DestroyAllEffect(StaticFilters.FILTER_PERMANENT_CREATURES, true));
}
private WrathOfGod(final WrathOfGod card) {
diff --git a/Mage.Sets/src/mage/cards/z/ZealousInquisitor.java b/Mage.Sets/src/mage/cards/z/ZealousInquisitor.java
index 9eb01ac7688..4c82bbfa951 100644
--- a/Mage.Sets/src/mage/cards/z/ZealousInquisitor.java
+++ b/Mage.Sets/src/mage/cards/z/ZealousInquisitor.java
@@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
-import static mage.abilities.effects.RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE;
+import mage.abilities.effects.RedirectionEffect;
import mage.abilities.effects.common.RedirectDamageFromSourceToTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
@@ -29,7 +29,7 @@ public final class ZealousInquisitor extends CardImpl {
this.toughness = new MageInt(2);
// {1}{W}: The next 1 damage that would be dealt to Zealous Inquisitor this turn is dealt to target creature instead.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, ONE_USAGE_ABSOLUTE), new ManaCostsImpl<>("{1}{W}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE), new ManaCostsImpl<>("{1}{W}"));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/z/ZhalfirinCrusader.java b/Mage.Sets/src/mage/cards/z/ZhalfirinCrusader.java
index faeb58b9548..cc3078123a5 100644
--- a/Mage.Sets/src/mage/cards/z/ZhalfirinCrusader.java
+++ b/Mage.Sets/src/mage/cards/z/ZhalfirinCrusader.java
@@ -6,7 +6,7 @@ import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.mana.ManaCostsImpl;
-import static mage.abilities.effects.RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE;
+import mage.abilities.effects.RedirectionEffect;
import mage.abilities.effects.common.RedirectDamageFromSourceToTargetEffect;
import mage.abilities.keyword.FlankingAbility;
import mage.cards.CardImpl;
@@ -33,7 +33,7 @@ public final class ZhalfirinCrusader extends CardImpl {
this.addAbility(new FlankingAbility());
// {1}{W}: The next 1 damage that would be dealt to Zhalfirin Crusader this turn is dealt to any target instead.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, ONE_USAGE_ABSOLUTE), new ManaCostsImpl<>("{1}{W}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RedirectDamageFromSourceToTargetEffect(Duration.EndOfTurn, 1, RedirectionEffect.UsageType.ONE_USAGE_ABSOLUTE), new ManaCostsImpl<>("{1}{W}"));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage/src/main/java/mage/abilities/effects/common/EntersBattlefieldUnderControlOfOpponentOfChoiceEffect.java b/Mage/src/main/java/mage/abilities/effects/common/EntersBattlefieldUnderControlOfOpponentOfChoiceEffect.java
index 149732da4f3..f48e2df03d8 100644
--- a/Mage/src/main/java/mage/abilities/effects/common/EntersBattlefieldUnderControlOfOpponentOfChoiceEffect.java
+++ b/Mage/src/main/java/mage/abilities/effects/common/EntersBattlefieldUnderControlOfOpponentOfChoiceEffect.java
@@ -6,7 +6,6 @@ import mage.abilities.effects.OneShotEffect;
import mage.abilities.effects.common.continuous.GainControlTargetEffect;
import mage.constants.Duration;
import mage.constants.Outcome;
-import static mage.constants.Outcome.Benefit;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
@@ -22,7 +21,7 @@ import mage.target.targetpointer.FixedTarget;
public class EntersBattlefieldUnderControlOfOpponentOfChoiceEffect extends OneShotEffect {
public EntersBattlefieldUnderControlOfOpponentOfChoiceEffect() {
- super(Benefit);
+ super(Outcome.Benefit);
staticText = "under the control of an opponent of your choice";
}
diff --git a/Mage/src/main/java/mage/abilities/effects/common/PreventDamageToSourceEffect.java b/Mage/src/main/java/mage/abilities/effects/common/PreventDamageToSourceEffect.java
index 5fa7cba4ce0..42aba576626 100644
--- a/Mage/src/main/java/mage/abilities/effects/common/PreventDamageToSourceEffect.java
+++ b/Mage/src/main/java/mage/abilities/effects/common/PreventDamageToSourceEffect.java
@@ -5,7 +5,6 @@ import mage.abilities.Ability;
import mage.abilities.Mode;
import mage.abilities.effects.PreventionEffectImpl;
import mage.constants.Duration;
-import static mage.constants.Duration.EndOfTurn;
import mage.game.Game;
import mage.game.events.GameEvent;
@@ -61,7 +60,7 @@ public class PreventDamageToSourceEffect extends PreventionEffectImpl {
sb.append("Prevent the next ").append(amountToPrevent).append(" damage that would be dealt to ");
}
sb.append("{this} ");
- if (duration == EndOfTurn) {
+ if (duration == Duration.EndOfTurn) {
sb.append("this turn");
} else {
sb.append(duration.toString());
diff --git a/Mage/src/main/java/mage/abilities/effects/common/combat/CantBeBlockedByAllTargetEffect.java b/Mage/src/main/java/mage/abilities/effects/common/combat/CantBeBlockedByAllTargetEffect.java
index 0d65d986daa..4d05b8a6156 100644
--- a/Mage/src/main/java/mage/abilities/effects/common/combat/CantBeBlockedByAllTargetEffect.java
+++ b/Mage/src/main/java/mage/abilities/effects/common/combat/CantBeBlockedByAllTargetEffect.java
@@ -8,8 +8,6 @@ import mage.filter.common.FilterCreaturePermanent;
import mage.game.Game;
import mage.game.permanent.Permanent;
-import static mage.constants.Duration.EndOfTurn;
-
/**
* @author LevelX2
*/
@@ -50,7 +48,7 @@ public class CantBeBlockedByAllTargetEffect extends RestrictionEffect {
return "target "
+ mode.getTargets().get(0).getTargetName()
+ " can't be blocked "
- + (duration == EndOfTurn ? "this turn " : "")
+ + (duration == Duration.EndOfTurn ? "this turn " : "")
+ (filterBlockedBy.getMessage().startsWith("except by") ? "" : "by ")
+ filterBlockedBy.getMessage();
}
diff --git a/Mage/src/main/java/mage/abilities/effects/common/combat/CantBlockAttachedEffect.java b/Mage/src/main/java/mage/abilities/effects/common/combat/CantBlockAttachedEffect.java
index dc1ebe1a73b..a61c3275c1c 100644
--- a/Mage/src/main/java/mage/abilities/effects/common/combat/CantBlockAttachedEffect.java
+++ b/Mage/src/main/java/mage/abilities/effects/common/combat/CantBlockAttachedEffect.java
@@ -9,8 +9,6 @@ import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.target.targetpointer.FixedTarget;
-import static mage.constants.Duration.EndOfTurn;
-
/**
* @author North
*/
@@ -35,7 +33,7 @@ public class CantBlockAttachedEffect extends RestrictionEffect {
if (!filter.getMessage().equals("creature")) {
sb.append(' ').append(filter.getMessage());
}
- if (duration == EndOfTurn) {
+ if (duration == Duration.EndOfTurn) {
sb.append(" this turn");
} else if (!duration.toString().isEmpty()) {
sb.append(' ').append(duration.toString());
diff --git a/Mage/src/main/java/mage/abilities/keyword/AscendAbility.java b/Mage/src/main/java/mage/abilities/keyword/AscendAbility.java
index 2292030e096..c4cfbb494eb 100644
--- a/Mage/src/main/java/mage/abilities/keyword/AscendAbility.java
+++ b/Mage/src/main/java/mage/abilities/keyword/AscendAbility.java
@@ -4,7 +4,6 @@ package mage.abilities.keyword;
import mage.abilities.Ability;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.ContinuousEffectImpl;
-import static mage.abilities.keyword.AscendAbility.ASCEND_RULE;
import mage.constants.Duration;
import mage.constants.Layer;
import mage.constants.Outcome;
@@ -70,7 +69,7 @@ class AscendContinuousEffect extends ContinuousEffectImpl {
public AscendContinuousEffect() {
super(Duration.WhileOnBattlefield, Layer.PlayerEffects, SubLayer.NA, Outcome.Benefit);
- staticText = ASCEND_RULE;
+ staticText = AscendAbility.ASCEND_RULE;
}
public AscendContinuousEffect(final AscendContinuousEffect effect) {
diff --git a/Mage/src/main/java/mage/game/command/emblems/ObNixilisOfTheBlackOathEmblem.java b/Mage/src/main/java/mage/game/command/emblems/ObNixilisOfTheBlackOathEmblem.java
index 3eabd0637ff..b2a48c7c599 100644
--- a/Mage/src/main/java/mage/game/command/emblems/ObNixilisOfTheBlackOathEmblem.java
+++ b/Mage/src/main/java/mage/game/command/emblems/ObNixilisOfTheBlackOathEmblem.java
@@ -13,7 +13,7 @@ import mage.constants.Zone;
import mage.game.command.Emblem;
import mage.target.common.TargetControlledCreaturePermanent;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT;
+import mage.filter.StaticFilters;
/**
* @author spjspj
@@ -27,7 +27,7 @@ public final class ObNixilisOfTheBlackOathEmblem extends Emblem {
Effect effect = new GainLifeEffect(xValue);
effect.setText("You gain X life");
Ability ability = new SimpleActivatedAbility(Zone.COMMAND, effect, new ManaCostsImpl<>("{1}{B}"));
- ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
+ ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT));
effect = new DrawCardSourceControllerEffect(xValue);
effect.setText("and draw X cards, where X is the sacrificed creature's power");
ability.addEffect(effect);
diff --git a/Mage/src/main/java/mage/game/command/emblems/TezzeretTheSchemerEmblem.java b/Mage/src/main/java/mage/game/command/emblems/TezzeretTheSchemerEmblem.java
index 333c9253a94..184bdbd97be 100644
--- a/Mage/src/main/java/mage/game/command/emblems/TezzeretTheSchemerEmblem.java
+++ b/Mage/src/main/java/mage/game/command/emblems/TezzeretTheSchemerEmblem.java
@@ -9,11 +9,10 @@ import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.TargetController;
import mage.constants.Zone;
+import mage.filter.StaticFilters;
import mage.game.command.Emblem;
import mage.target.TargetPermanent;
-import static mage.filter.StaticFilters.FILTER_CONTROLLED_PERMANENT_ARTIFACT;
-
/**
* @author spjspj
*/
@@ -28,7 +27,7 @@ public final class TezzeretTheSchemerEmblem extends Emblem {
effect = new SetBasePowerToughnessTargetEffect(5, 5, Duration.EndOfGame);
effect.setText("with base power and toughness 5/5");
ability.addEffect(effect);
- ability.addTarget(new TargetPermanent(FILTER_CONTROLLED_PERMANENT_ARTIFACT));
+ ability.addTarget(new TargetPermanent(StaticFilters.FILTER_CONTROLLED_PERMANENT_ARTIFACT));
this.getAbilities().add(ability);
}
diff --git a/Mage/src/main/java/mage/target/common/TargetCreaturePermanent.java b/Mage/src/main/java/mage/target/common/TargetCreaturePermanent.java
index ab04063f604..8e5e5d01ea0 100644
--- a/Mage/src/main/java/mage/target/common/TargetCreaturePermanent.java
+++ b/Mage/src/main/java/mage/target/common/TargetCreaturePermanent.java
@@ -2,7 +2,6 @@
package mage.target.common;
import mage.filter.StaticFilters;
-import static mage.filter.StaticFilters.FILTER_PERMANENT_CREATURE;
import mage.filter.common.FilterCreaturePermanent;
import mage.target.TargetPermanent;