diff --git a/Mage.Sets/src/mage/cards/b/BearerOfTheHeavens.java b/Mage.Sets/src/mage/cards/b/BearerOfTheHeavens.java
index 1b30fac3aeb..d935f234c4a 100644
--- a/Mage.Sets/src/mage/cards/b/BearerOfTheHeavens.java
+++ b/Mage.Sets/src/mage/cards/b/BearerOfTheHeavens.java
@@ -1,4 +1,3 @@
-
package mage.cards.b;
import java.util.UUID;
@@ -13,7 +12,7 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.SubType;
-import mage.filter.FilterPermanent;
+import mage.filter.StaticFilters;
/**
*
@@ -22,14 +21,14 @@ import mage.filter.FilterPermanent;
public final class BearerOfTheHeavens extends CardImpl {
public BearerOfTheHeavens(UUID ownerId, CardSetInfo setInfo) {
- super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{7}{R}");
+ super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{7}{R}");
this.subtype.add(SubType.GIANT);
this.power = new MageInt(10);
this.toughness = new MageInt(10);
// When Bearer of the Heavens dies, destroy all permanents at the beginning of the next end step.
- DelayedTriggeredAbility delayedAbility = new AtTheBeginOfNextEndStepDelayedTriggeredAbility(new DestroyAllEffect(new FilterPermanent("permanents")));
+ DelayedTriggeredAbility delayedAbility = new AtTheBeginOfNextEndStepDelayedTriggeredAbility(new DestroyAllEffect(StaticFilters.FILTER_PERMANENT));
Effect effect = new CreateDelayedTriggeredAbilityEffect(delayedAbility);
effect.setText("destroy all permanents at the beginning of the next end step");
this.addAbility(new DiesTriggeredAbility(effect, false));
diff --git a/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java b/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java
index 2394574372e..7b232219997 100644
--- a/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java
+++ b/Mage.Sets/src/mage/cards/b/BoardTheWeatherlight.java
@@ -1,4 +1,3 @@
-
package mage.cards.b;
import java.util.UUID;
@@ -30,10 +29,11 @@ public final class BoardTheWeatherlight extends CardImpl {
this.getSpellAbility().addEffect(
new LookLibraryAndPickControllerEffect(
new StaticValue(5), false, new StaticValue(1), filter,
- Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false
- ).setText("Look at the top five cards of your library. You may reveal a historic card from among them"
- + " and put it into your hand. Put the rest on the bottom of your library in a random order. "
- + "(Artifacts, legendaries, and Sagas are historic.)")
+ Zone.LIBRARY, false, true, false, Zone.HAND, true, false, false)
+ .setBackInRandomOrder(true)
+ .setText("Look at the top five cards of your library. You may reveal a historic card from among them"
+ + " and put it into your hand. Put the rest on the bottom of your library in a random order. "
+ + "(Artifacts, legendaries, and Sagas are historic.)")
);
}
diff --git a/Mage.Sets/src/mage/cards/m/MistOfStagnation.java b/Mage.Sets/src/mage/cards/m/MistOfStagnation.java
index 962cf65d1ab..bd9fbcf5adf 100644
--- a/Mage.Sets/src/mage/cards/m/MistOfStagnation.java
+++ b/Mage.Sets/src/mage/cards/m/MistOfStagnation.java
@@ -1,4 +1,3 @@
-
package mage.cards.m;
import java.util.UUID;
@@ -15,6 +14,7 @@ import mage.constants.Outcome;
import mage.constants.TargetController;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
import mage.players.Player;
@@ -30,7 +30,7 @@ public final class MistOfStagnation extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{U}{U}");
// Permanents don't untap during their controllers' untap steps.
- this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepAllEffect(Duration.WhileOnBattlefield, TargetController.ANY, new FilterPermanent("permanents"))));
+ this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepAllEffect(Duration.WhileOnBattlefield, TargetController.ANY, StaticFilters.FILTER_PERMANENT)));
// At the beginning of each player's upkeep, that player chooses a permanent for each card in their graveyard, then untaps those permanents.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new MistOfStagnationEffect(), TargetController.ANY, false));
diff --git a/Mage.Sets/src/mage/cards/u/Upheaval.java b/Mage.Sets/src/mage/cards/u/Upheaval.java
index 15f24635780..d47a07961fe 100644
--- a/Mage.Sets/src/mage/cards/u/Upheaval.java
+++ b/Mage.Sets/src/mage/cards/u/Upheaval.java
@@ -1,4 +1,3 @@
-
package mage.cards.u;
import java.util.UUID;
@@ -6,23 +5,19 @@ import mage.abilities.effects.common.ReturnToHandFromBattlefieldAllEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
-import mage.filter.FilterPermanent;
+import mage.filter.StaticFilters;
/**
*
* @author cbt33
*/
-
public final class Upheaval extends CardImpl {
-
- private static final FilterPermanent filter = new FilterPermanent("permanents");
public Upheaval(UUID ownerId, CardSetInfo setInfo) {
- super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{4}{U}{U}");
-
+ super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{4}{U}{U}");
// Return all permanents to their owners' hands.
- this.getSpellAbility().addEffect(new ReturnToHandFromBattlefieldAllEffect(filter));
+ this.getSpellAbility().addEffect(new ReturnToHandFromBattlefieldAllEffect(StaticFilters.FILTER_PERMANENT));
}
public Upheaval(final Upheaval card) {
diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityControlledEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityControlledEffect.java
index bc5f1856972..aa2ea4b16c6 100644
--- a/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityControlledEffect.java
+++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/GainAbilityControlledEffect.java
@@ -1,4 +1,3 @@
-
package mage.abilities.effects.common.continuous;
import java.util.HashMap;
@@ -16,6 +15,7 @@ import mage.constants.Outcome;
import mage.constants.SubLayer;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
@@ -29,11 +29,11 @@ public class GainAbilityControlledEffect extends ContinuousEffectImpl {
protected FilterPermanent filter;
public GainAbilityControlledEffect(Ability ability, Duration duration) {
- this(ability, duration, new FilterPermanent("permanents"));
+ this(ability, duration, StaticFilters.FILTER_PERMANENT);
}
public GainAbilityControlledEffect(CompoundAbility ability, Duration duration) {
- this(ability, duration, new FilterPermanent("permanents"));
+ this(ability, duration, StaticFilters.FILTER_PERMANENT);
}
public GainAbilityControlledEffect(Ability ability, Duration duration, FilterPermanent filter) {
diff --git a/Mage/src/main/java/mage/abilities/effects/common/continuous/LoseAbilityAllEffect.java b/Mage/src/main/java/mage/abilities/effects/common/continuous/LoseAbilityAllEffect.java
index 5d56fdf130d..fd56dcee2b9 100644
--- a/Mage/src/main/java/mage/abilities/effects/common/continuous/LoseAbilityAllEffect.java
+++ b/Mage/src/main/java/mage/abilities/effects/common/continuous/LoseAbilityAllEffect.java
@@ -1,4 +1,3 @@
-
package mage.abilities.effects.common.continuous;
import java.util.HashMap;
@@ -15,6 +14,7 @@ import mage.constants.Outcome;
import mage.constants.SubLayer;
import mage.constants.Zone;
import mage.filter.FilterPermanent;
+import mage.filter.StaticFilters;
import mage.game.Game;
import mage.game.permanent.Permanent;
@@ -28,11 +28,11 @@ public class LoseAbilityAllEffect extends ContinuousEffectImpl {
protected FilterPermanent filter;
public LoseAbilityAllEffect(Ability ability, Duration duration) {
- this(ability, duration, new FilterPermanent("permanents"));
+ this(ability, duration, StaticFilters.FILTER_PERMANENT);
}
public LoseAbilityAllEffect(CompoundAbility ability, Duration duration) {
- this(ability, duration, new FilterPermanent("permanents"));
+ this(ability, duration, StaticFilters.FILTER_PERMANENT);
}
public LoseAbilityAllEffect(Ability ability, Duration duration, FilterPermanent filter) {
diff --git a/Mage/src/main/java/mage/filter/StaticFilters.java b/Mage/src/main/java/mage/filter/StaticFilters.java
index 4e9531e8c79..a078551441a 100644
--- a/Mage/src/main/java/mage/filter/StaticFilters.java
+++ b/Mage/src/main/java/mage/filter/StaticFilters.java
@@ -137,6 +137,12 @@ public final class StaticFilters {
FILTER_PERMANENT.setLockedFilter(true);
}
+ public static final FilterPermanent FILTER_PERMANENTS = new FilterPermanent("permanents");
+
+ static {
+ FILTER_PERMANENTS.setLockedFilter(true);
+ }
+
public static final FilterPermanent FILTER_PERMANENT_ARTIFACT_AN = new FilterArtifactPermanent("an artifact");
static {