forked from External/mage
* Board the Weatherlight - Fixed that the cards left were not returned in random order.
This commit is contained in:
parent
717308ba12
commit
372ba795d2
7 changed files with 25 additions and 25 deletions
|
|
@ -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));
|
||||
|
|
|
|||
|
|
@ -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. "
|
||||
+ "<i>(Artifacts, legendaries, and Sagas are historic.)</i>")
|
||||
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. "
|
||||
+ "<i>(Artifacts, legendaries, and Sagas are historic.)</i>")
|
||||
);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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));
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
|
|
@ -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 {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue