mirror of
https://github.com/magefree/mage.git
synced 2026-01-09 20:32:06 -08:00
refactor: SimpleStaticAbility default zone (cards W X Y Z)
This commit is contained in:
parent
952f7d0c90
commit
65a9f19a2c
83 changed files with 96 additions and 98 deletions
|
|
@ -40,7 +40,7 @@ public final class WalkerOfTheWastes extends CardImpl {
|
|||
this.addAbility(TrampleAbility.getInstance());
|
||||
|
||||
// Walker of the Wastes gets +1/+1 for each land you control named Wastes.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceEffect(
|
||||
new PermanentsOnBattlefieldCount(filter), new PermanentsOnBattlefieldCount(filter), Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class WallOfDiffusion extends CardImpl {
|
|||
// Defender
|
||||
this.addAbility(DefenderAbility.getInstance());
|
||||
// Wall of Diffusion can block creatures with shadow as though Wall of Diffusion had shadow.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CanBlockAsThoughtItHadShadowEffect(Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new CanBlockAsThoughtItHadShadowEffect(Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private WallOfDiffusion(final WallOfDiffusion card) {
|
||||
|
|
@ -40,4 +40,4 @@ public final class WallOfDiffusion extends CardImpl {
|
|||
public WallOfDiffusion copy() {
|
||||
return new WallOfDiffusion(this);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public final class WallOfGlare extends CardImpl {
|
|||
this.addAbility(DefenderAbility.getInstance());
|
||||
|
||||
// Wall of Glare can block any number of creatures.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CanBlockAdditionalCreatureEffect(0)));
|
||||
this.addAbility(new SimpleStaticAbility(new CanBlockAdditionalCreatureEffect(0)));
|
||||
}
|
||||
|
||||
private WallOfGlare(final WallOfGlare card) {
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public final class WanderingEye extends CardImpl {
|
|||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
// Players play with their hands revealed.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PlayWithHandRevealedEffect(TargetController.ANY)));
|
||||
this.addAbility(new SimpleStaticAbility(new PlayWithHandRevealedEffect(TargetController.ANY)));
|
||||
}
|
||||
|
||||
private WanderingEye(final WanderingEye card) {
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ public final class WanderingWolf extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Creatures with power less than Wandering Wolf's power can't block it.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeBlockedByCreaturesWithLessPowerEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new CantBeBlockedByCreaturesWithLessPowerEffect()));
|
||||
}
|
||||
|
||||
private WanderingWolf(final WanderingWolf card) {
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public final class WarFalcon extends CardImpl {
|
|||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// War Falcon can't attack unless you control a Knight or a Soldier.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WarFalconEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WarFalconEffect()));
|
||||
}
|
||||
|
||||
private WarFalcon(final WarFalcon card) {
|
||||
|
|
@ -84,4 +84,3 @@ class WarFalconEffect extends RestrictionEffect {
|
|||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class WardOfBones extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{6}");
|
||||
|
||||
// Each opponent who controls more creatures than you can't play creature cards. The same is true for artifacts, enchantments, and lands.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WardOfBonesEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WardOfBonesEffect()));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class WardOfLights extends CardImpl {
|
|||
// As Ward of Lights enters the battlefield, choose a color.
|
||||
this.addAbility(new AsEntersBattlefieldAbility(new ChooseColorEffect(Outcome.Benefit)));
|
||||
// Enchanted creature has protection from the chosen color. This effect doesn't remove Ward of Lights.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ProtectionChosenColorAttachedEffect(true)));
|
||||
this.addAbility(new SimpleStaticAbility(new ProtectionChosenColorAttachedEffect(true)));
|
||||
}
|
||||
|
||||
private WardOfLights(final WardOfLights card) {
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ public final class WardSliver extends CardImpl {
|
|||
this.addAbility(new AsEntersBattlefieldAbility(new ChooseColorEffect(Outcome.Protect)));
|
||||
|
||||
// All Slivers have protection from the chosen color.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WardSliverGainAbilityControlledEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WardSliverGainAbilityControlledEffect()));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class WardenOfEvosIsle extends CardImpl {
|
|||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// Creature spells with flying you cast cost {1} less to cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public final class WardenOfTheWall extends CardImpl {
|
|||
this.addAbility(new ColorlessManaAbility());
|
||||
|
||||
// As long as it's not your turn, Warden of the Wall is a 2/3 Gargoyle artifact creature with flying.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BecomesCreatureSourceEffect(new GargoyleToken(), CardType.ARTIFACT, Duration.WhileOnBattlefield),
|
||||
NotMyTurnCondition.instance,
|
||||
"During turns other than yours, Warden of the Wall is a 2/3 Gargoyle artifact creature with flying"))
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public final class WardscaleDragon extends CardImpl {
|
|||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// As long as Wardscale Dragon is attacking, defending player can't cast spells.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WardscaleDragonRuleEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WardscaleDragonRuleEffect()));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ public final class WarlordsAxe extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
// Equipped creature gets +3/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(3, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(3, 1)));
|
||||
|
||||
// Equip {4}
|
||||
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(4)));
|
||||
|
|
@ -42,4 +42,3 @@ public final class WarlordsAxe extends CardImpl {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -25,10 +25,10 @@ public final class WarmongersChariot extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
// Equipped creature gets +2/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(2, 2)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(2, 2)));
|
||||
|
||||
// As long as equipped creature has defender, it can attack as though it didn't have defender.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WarmongersChariotEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WarmongersChariotEffect()));
|
||||
|
||||
// Equip {3}
|
||||
this.addAbility(new EquipAbility(Outcome.AddAbility, new GenericManaCost(3)));
|
||||
|
|
|
|||
|
|
@ -33,9 +33,9 @@ public final class Watchdog extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Watchdog blocks each turn if able.
|
||||
addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BlocksIfAbleSourceEffect(Duration.WhileOnBattlefield)));
|
||||
addAbility(new SimpleStaticAbility(new BlocksIfAbleSourceEffect(Duration.WhileOnBattlefield)));
|
||||
// As long as Watchdog is untapped, all creatures attacking you get -1/-0.
|
||||
addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostAllEffect(-1, 0, Duration.WhileOnBattlefield, new WatchdogFilter(), false), SourceTappedCondition.UNTAPPED, "As long as {this} is untapped, all creatures attacking you get -1/-0")));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class WatcherInTheWeb extends CardImpl {
|
|||
// Watcher in the Web can block an additional seven creatures each combat.
|
||||
Effect effect = new CanBlockAdditionalCreatureEffect(7);
|
||||
effect.setText("{this} can block an additional seven creatures each combat");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
private WatcherInTheWeb(final WatcherInTheWeb card) {
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ public final class WatcherOfTheSpheres extends CardImpl {
|
|||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// Creature spells with flying you cast cost {1} less to cast.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new SpellsCostReductionControllerEffect(filter, 1)));
|
||||
|
||||
// Whenever another creature with flying you control enters, Watcher of the Spheres gets +1/+1 until end of turn.
|
||||
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), filter1, false));
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public final class WatcherSliver extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// All Sliver creatures get +0/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(0, 2, Duration.WhileOnBattlefield, filter, false)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostAllEffect(0, 2, Duration.WhileOnBattlefield, filter, false)));
|
||||
}
|
||||
|
||||
private WatcherSliver(final WatcherSliver card) {
|
||||
|
|
|
|||
|
|
@ -45,11 +45,11 @@ public final class WatchwingScarecrow extends CardImpl {
|
|||
|
||||
// Watchwing Scarecrow has vigilance as long as you control a white creature.
|
||||
ContinuousEffect effect = new GainAbilitySourceEffect(VigilanceAbility.getInstance(), Duration.WhileOnBattlefield);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(effect, new PermanentsOnTheBattlefieldCondition(filter), rule)));
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(effect, new PermanentsOnTheBattlefieldCondition(filter), rule)));
|
||||
|
||||
// Watchwing Scarecrow has flying as long as you control a blue creature.
|
||||
ContinuousEffect effect2 = new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.WhileOnBattlefield);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(effect2, new PermanentsOnTheBattlefieldCondition(filter2), rule2)));
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(effect2, new PermanentsOnTheBattlefieldCondition(filter2), rule2)));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public final class WaterWurm extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Water Wurm gets +0/+1 as long as an opponent controls an Island.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostSourceEffect(0, 1, Duration.WhileOnBattlefield),
|
||||
new OpponentControlsPermanentCondition(filter),
|
||||
"{this} gets +0/+1 as long as an opponent controls an Island")));
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ public final class Waterknot extends CardImpl {
|
|||
this.addAbility(new EntersBattlefieldTriggeredAbility(new TapEnchantedEffect()));
|
||||
|
||||
// Enchanted creature doesn't untap during its controller's untap step.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new DontUntapInControllersUntapStepEnchantedEffect()));
|
||||
}
|
||||
|
||||
private Waterknot(final Waterknot card) {
|
||||
|
|
|
|||
|
|
@ -44,12 +44,12 @@ public final class WayOfTheThief extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Enchanted creature gets +2/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield)));
|
||||
|
||||
// Enchanted creature can't be blocked as long as you control a Gate.
|
||||
Effect effect = new ConditionalRestrictionEffect(new CantBeBlockedAttachedEffect(AttachmentType.AURA), new PermanentsOnTheBattlefieldCondition(filter));
|
||||
effect.setText(rule);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
private WayOfTheThief(final WayOfTheThief card) {
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ public final class WaywardSwordtooth extends CardImpl {
|
|||
new PlayAdditionalLandsControllerEffect(1, Duration.WhileOnBattlefield)));
|
||||
|
||||
// Wayward Sawtooth can't attack or block unless you have the city's blessing.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackBlockUnlessConditionSourceEffect(CitysBlessingCondition.instance))
|
||||
this.addAbility(new SimpleStaticAbility(new CantAttackBlockUnlessConditionSourceEffect(CitysBlessingCondition.instance))
|
||||
.addHint(CitysBlessingHint.instance)
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class Weakness extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
// Enchanted creature gets -2/-1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(-2, -1, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(-2, -1, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private Weakness(final Weakness card) {
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public final class WeaponsTrainer extends CardImpl {
|
|||
// Other creatures you control get +1/+0 as long as you control an Equipment.
|
||||
ConditionalContinuousEffect effect = new ConditionalContinuousEffect(new BoostControlledEffect(1, 0, Duration.WhileOnBattlefield, true),
|
||||
new PermanentsOnTheBattlefieldCondition(filter), rule);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
private WeaponsTrainer(final WeaponsTrainer card) {
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class WeatheredBodyguards extends CardImpl {
|
|||
this.toughness = new MageInt(5);
|
||||
|
||||
// As long as Weathered Bodyguards is untapped, all combat damage that would be dealt to you by unblocked creatures is dealt to Weathered Bodyguards instead.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WeatheredBodyguardsEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WeatheredBodyguardsEffect()));
|
||||
|
||||
// Morph {3}{W}
|
||||
this.addAbility(new MorphAbility(this, new ManaCostsImpl<>("{3}{W}")));
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class WeequayBeastmaster extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Monstrosity abilities you activate cost {1} less to activate.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new AbilitiesCostReductionControllerEffect(MonstrosityAbility.class, "Monstrosity")));
|
||||
this.addAbility(new SimpleStaticAbility(new AbilitiesCostReductionControllerEffect(MonstrosityAbility.class, "Monstrosity")));
|
||||
|
||||
// Whenever a creature you control becomes monstrous, put an additional +1/+1 counter on that creature.
|
||||
this.addAbility(new BecomesMonstrousTriggeredAbility(new AddCountersTargetEffect(CounterType.P1P1.createInstance())));
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class WeightOfConscience extends CardImpl {
|
|||
this.addAbility(ability);
|
||||
|
||||
// Enchanted creature can't attack.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackAttachedEffect(AttachmentType.AURA)));
|
||||
this.addAbility(new SimpleStaticAbility(new CantAttackAttachedEffect(AttachmentType.AURA)));
|
||||
|
||||
// Tap two untapped creatures you control that share a creature type: Exile enchanted creature.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileAttachedEffect(), new TapTargetCost(new WeightOfConscienceTarget())));
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class WeightOfTheUnderworld extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
// Enchanted creature gets -3/-2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(-3,-2, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(-3,-2, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private WeightOfTheUnderworld(final WeightOfTheUnderworld card) {
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public final class WeirdingWood extends CardImpl {
|
|||
Ability gainedAbility = new SimpleManaAbility(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(2), new TapSourceCost());
|
||||
Effect effect = new GainAbilityAttachedEffect(gainedAbility, AttachmentType.AURA);
|
||||
effect.setText("Enchanted land has \"{T}: Add two mana of any one color.\"");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
}
|
||||
|
||||
private WeirdingWood(final WeirdingWood card) {
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ public final class WellLaidPlans extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{U}");
|
||||
|
||||
// Prevent all damage that would be dealt to a creature by another creature if they share a color.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WellLaidPlansPreventionEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WellLaidPlansPreventionEffect()));
|
||||
}
|
||||
|
||||
private WellLaidPlans(final WellLaidPlans card) {
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class WheelOfSunAndMoon extends CardImpl {
|
|||
this.addAbility(new EnchantAbility(auraTarget));
|
||||
|
||||
// If a card would be put into enchanted player's graveyard from anywhere, instead that card is revealed and put on the bottom of that player's library.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WheelOfSunAndMoonEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WheelOfSunAndMoonEffect()));
|
||||
}
|
||||
|
||||
private WheelOfSunAndMoon(final WheelOfSunAndMoon card) {
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class Whimwader extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// Whimwader can't attack unless defending player controls a blue permanent.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackUnlessDefenderControllsPermanent(filter)));
|
||||
this.addAbility(new SimpleStaticAbility(new CantAttackUnlessDefenderControllsPermanent(filter)));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ public final class WhipSilk extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
// Enchanted creature has reach.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(ReachAbility.getInstance(), AttachmentType.AURA)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(ReachAbility.getInstance(), AttachmentType.AURA)));
|
||||
// {G}: Return Whip Silk to its owner's hand.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ColoredManaCost(ColoredManaSymbol.G)));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -54,11 +54,11 @@ public final class WhiteScarab extends CardImpl {
|
|||
|
||||
// Enchanted creature can't be blocked by white creatures.
|
||||
Effect effect = new CantBeBlockedByCreaturesAttachedEffect(Duration.WhileOnBattlefield, filter, AttachmentType.AURA);
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
ability = new SimpleStaticAbility(effect);
|
||||
this.addAbility(ability);
|
||||
|
||||
// Enchanted creature gets +2/+2 as long as an opponent controls a white permanent.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield),
|
||||
new OpponentControlsPermanentCondition(filter2),
|
||||
"Enchanted creature gets +2/+2 as long as an opponent controls a white permanent")));
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class WightOfPrecinctSix extends CardImpl {
|
|||
|
||||
// Wight of Precinct Six gets +1/+1 for each creature card in your opponents' graveyards.
|
||||
DynamicValue boost = new CardsInOpponentGraveyardsCount(filter);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(boost, boost, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceEffect(boost, boost, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private WightOfPrecinctSix(final WightOfPrecinctSix card) {
|
||||
|
|
|
|||
|
|
@ -36,10 +36,10 @@ public final class WildNacatl extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Wild Nacatl gets +1/+1 as long as you control a Mountain.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceWhileControlsEffect(filter1, 1, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceWhileControlsEffect(filter1, 1, 1)));
|
||||
|
||||
// Wild Nacatl gets +1/+1 as long as you control a Plains.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceWhileControlsEffect(filter2, 1, 1)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceWhileControlsEffect(filter2, 1, 1)));
|
||||
}
|
||||
|
||||
private WildNacatl(final WildNacatl card) {
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public final class WildwoodGeist extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Wildwood Geist gets +2/+2 as long as it's your turn.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostSourceEffect(2, 2, Duration.WhileOnBattlefield),
|
||||
MyTurnCondition.instance,
|
||||
"{this} gets +2/+2 as long as it's your turn"))
|
||||
|
|
|
|||
|
|
@ -41,9 +41,9 @@ public final class WiltLeafLiege extends CardImpl {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// Other green creatures you control get +1/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filterGreen, true)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filterGreen, true)));
|
||||
// Other white creatures you control get +1/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filterWhite, true)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filterWhite, true)));
|
||||
// If a spell or ability an opponent controls causes you to discard Wilt-Leaf Liege, put it onto the battlefield instead of putting it into your graveyard.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.HAND, new DiscardOntoBattlefieldEffect()));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class WindZendikon extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
|
||||
Ability ability2 = new SimpleStaticAbility(Zone.BATTLEFIELD, new BecomesCreatureAttachedEffect(
|
||||
Ability ability2 = new SimpleStaticAbility(new BecomesCreatureAttachedEffect(
|
||||
new WindZendikonElementalToken(), "Enchanted land is a 2/2 blue Elemental creature with flying. It's still a land",
|
||||
Duration.WhileOnBattlefield, BecomesCreatureAttachedEffect.LoseType.COLOR));
|
||||
this.addAbility(ability2);
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class WindbriskRaptor extends CardImpl {
|
|||
// Attacking creatures you control have lifelink.
|
||||
Effect effect = new GainAbilityControlledEffect(LifelinkAbility.getInstance(), Duration.WhileOnBattlefield, filter);
|
||||
effect.setText("Attacking creatures you control have lifelink");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ public final class WindwrightMage extends CardImpl {
|
|||
// Lifelink
|
||||
this.addAbility(LifelinkAbility.getInstance());
|
||||
// Windwright Mage has flying as long as an artifact card is in your graveyard.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.WhileOnBattlefield),
|
||||
WindwrightMageCondition.instance,
|
||||
"{this} has flying as long as an artifact card is in your graveyard")));
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ public final class WingSplicer extends CardImpl {
|
|||
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new PhyrexianGolemToken())));
|
||||
|
||||
// Golem creatures you control have flying.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(FlyingAbility.getInstance(), Duration.WhileOnBattlefield, filter)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(FlyingAbility.getInstance(), Duration.WhileOnBattlefield, filter)));
|
||||
}
|
||||
|
||||
private WingSplicer(final WingSplicer card) {
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public final class Wingcrafter extends CardImpl {
|
|||
this.addAbility(new SoulbondAbility());
|
||||
|
||||
// As long as Wingcrafter is paired with another creature, both creatures have flying.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityPairedEffect(FlyingAbility.getInstance(), ruleText)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityPairedEffect(FlyingAbility.getInstance(), ruleText)));
|
||||
}
|
||||
|
||||
private Wingcrafter(final Wingcrafter card) {
|
||||
|
|
|
|||
|
|
@ -44,11 +44,11 @@ public final class WingrattleScarecrow extends CardImpl {
|
|||
|
||||
// Wingrattle Scarecrow has flying as long as you control a blue creature.
|
||||
ContinuousEffect effect = new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.WhileOnBattlefield);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(effect, new PermanentsOnTheBattlefieldCondition(filter), rule)));
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(effect, new PermanentsOnTheBattlefieldCondition(filter), rule)));
|
||||
|
||||
// Wingrattle Scarecrow has persist as long as you control a black creature.
|
||||
ContinuousEffect effect2 = new GainAbilitySourceEffect(new PersistAbility(), Duration.WhileOnBattlefield);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(effect2, new PermanentsOnTheBattlefieldCondition(filter2), rule2)));
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(effect2, new PermanentsOnTheBattlefieldCondition(filter2), rule2)));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ public final class WingsOfAesthir extends CardImpl {
|
|||
// Enchanted creature gets +1/+0 and has flying and first strike.
|
||||
Effect effect = new BoostEnchantedEffect(1, 0, Duration.WhileOnBattlefield);
|
||||
effect.setText("enchanted creature gets +1/+0");
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
ability = new SimpleStaticAbility(effect);
|
||||
effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA, Duration.WhileOnBattlefield);
|
||||
effect.setText("and has flying");
|
||||
ability.addEffect(effect);
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class WingsOfHope extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
// Enchanted creature gets +1/+3 and has flying.
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 3, Duration.WhileOnBattlefield));
|
||||
ability = new SimpleStaticAbility(new BoostEnchantedEffect(1, 3, Duration.WhileOnBattlefield));
|
||||
Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA);
|
||||
effect.setText("and has flying");
|
||||
ability.addEffect(effect);
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ public final class WingsOfHubris extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
// Equipped creature has flying.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.EQUIPMENT)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.EQUIPMENT)));
|
||||
|
||||
// Sacrifice Wings of Hubris: Equipped creature can't be blocked this turn. Sacrifice it at the beginning of the next end step.
|
||||
this.addAbility(new SimpleActivatedAbility(new WingsOfHubrisEffect(), new SacrificeSourceCost()));
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ public final class WinterOrb extends CardImpl {
|
|||
|
||||
// As long as Winter Orb is untapped, players can't untap more than one land during their untap steps.
|
||||
// Players can't untap more than one land during their untap steps.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WinterOrbEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WinterOrbEffect()));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public final class Wirecat extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Wirecat can't attack or block if an enchantment is on the battlefield.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WirecatEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WirecatEffect()));
|
||||
}
|
||||
|
||||
private Wirecat(final Wirecat card) {
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ public final class WitchHunt extends CardImpl {
|
|||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{4}{R}");
|
||||
|
||||
// Players can't gain life.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantGainLifeAllEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new CantGainLifeAllEffect()));
|
||||
// At the beginning of your upkeep, Witch Hunt deals 4 damage to you.
|
||||
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new DamageControllerEffect(4)));
|
||||
// At the beginning of your end step, target opponent chosen at random gains control of Witch Hunt.
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public final class WitchbaneOrb extends CardImpl {
|
|||
this.addAbility(new EntersBattlefieldTriggeredAbility(new WitchbaneOrbEffect()));
|
||||
|
||||
// You have hexproof.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControllerEffect(HexproofAbility.getInstance())));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityControllerEffect(HexproofAbility.getInstance())));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class WitchesEye extends CardImpl {
|
|||
// Equipped creature has "{1}, {T}: Scry 1."</i>
|
||||
Ability gainedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ScryEffect(1, false), new GenericManaCost(1));
|
||||
gainedAbility.addCost(new TapSourceCost());
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(gainedAbility, AttachmentType.EQUIPMENT, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(gainedAbility, AttachmentType.EQUIPMENT, Duration.WhileOnBattlefield)));
|
||||
|
||||
// Equip {1}
|
||||
this.addAbility(new EquipAbility(Outcome.Benefit, new GenericManaCost(1), false));
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ public final class WizenedCenn extends CardImpl {
|
|||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
// Other Kithkin creatures you control get +1/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
|
||||
}
|
||||
|
||||
private WizenedCenn(final WizenedCenn card) {
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ public final class WizenedSnitches extends CardImpl {
|
|||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
// Players play with the top card of their libraries revealed.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new PlayWithTheTopCardRevealedEffect(true)));
|
||||
this.addAbility(new SimpleStaticAbility(new PlayWithTheTopCardRevealedEffect(true)));
|
||||
}
|
||||
|
||||
private WizenedSnitches(final WizenedSnitches card) {
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class WolfhuntersQuiver extends CardImpl {
|
|||
abilityToGain.addTarget(new TargetAnyTarget());
|
||||
Effect effect = new GainAbilityAttachedEffect(abilityToGain, AttachmentType.EQUIPMENT);
|
||||
effect.setText("Equipped creature has \"{T}: This creature deals 1 damage to any target\"");
|
||||
SimpleStaticAbility ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
SimpleStaticAbility ability = new SimpleStaticAbility(effect);
|
||||
|
||||
// and "{T}: This creature deals 3 damage to target Werewolf creature."
|
||||
abilityToGain = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(3), new TapSourceCost());
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class WolfirSilverheart extends CardImpl {
|
|||
this.addAbility(new SoulbondAbility());
|
||||
|
||||
// As long as Wolfir Silverheart is paired with another creature, each of those creatures gets +4/+4.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostPairedEffect(4, 4, ruleText)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostPairedEffect(4, 4, ruleText)));
|
||||
}
|
||||
|
||||
private WolfirSilverheart(final WolfirSilverheart card) {
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public final class WolfkinBond extends CardImpl {
|
|||
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new WolfToken())));
|
||||
|
||||
// Enchanted creature gets +2/+2.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private WolfkinBond(final WolfkinBond card) {
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ public final class WoodbornBehemoth extends CardImpl {
|
|||
ConditionalContinuousEffect effect2 = new ConditionalContinuousEffect(
|
||||
new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.WhileOnBattlefield),
|
||||
eightOrMoreLandCondition, " and has trample");
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect1);
|
||||
Ability ability = new SimpleStaticAbility(effect1);
|
||||
ability.addEffect(effect2);
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class WoodenStake extends CardImpl {
|
|||
this.subtype.add(SubType.EQUIPMENT);
|
||||
|
||||
// Equipped creature gets +1/+0.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEquippedEffect(1, 0)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEquippedEffect(1, 0)));
|
||||
|
||||
// Whenever equipped creature blocks or becomes blocked by a Vampire, destroy that creature. It can't be regenerated.
|
||||
this.addAbility(new WoodenStakeBlocksOrBecomesBlockedTriggeredAbility());
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ public final class WoollyRazorback extends CardImpl {
|
|||
ConditionalReplacementEffect effect = new ConditionalReplacementEffect(new PreventCombatDamageBySourceEffect(Duration.WhileOnBattlefield),
|
||||
new SourceHasCounterCondition(CounterType.ICE));
|
||||
effect.setText("as long as {this} has an ice counter on it, prevent all combat damage it would deal");
|
||||
Ability ability = new SimpleStaticAbility(Zone.BATTLEFIELD, effect);
|
||||
Ability ability = new SimpleStaticAbility(effect);
|
||||
ability.addEffect(new ConditionalContinuousEffect(new GainAbilitySourceEffect(DefenderAbility.getInstance()),
|
||||
new SourceHasCounterCondition(CounterType.ICE), "and it has defender"));
|
||||
this.addAbility(ability);
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ public final class Wordmail extends CardImpl {
|
|||
|
||||
// Enchanted creature gets +1/+1 for each word in its name.
|
||||
WordmailCount count = new WordmailCount();
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(count, count, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(count, count, Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private Wordmail(final Wordmail card) {
|
||||
|
|
|
|||
|
|
@ -29,10 +29,10 @@ public final class WormsOfTheEarth extends CardImpl {
|
|||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}{B}{B}");
|
||||
|
||||
// Players can't play lands.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WormsOfTheEarthPlayEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WormsOfTheEarthPlayEffect()));
|
||||
|
||||
// Lands can't enter the battlefield.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WormsOfTheEarthEnterEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WormsOfTheEarthEnterEffect()));
|
||||
|
||||
// At the beginning of each upkeep, any player may sacrifice two lands or have Worms of the Earth deal 5 damage to that player. If a player does either, destroy Worms of the Earth.
|
||||
this.addAbility(new BeginningOfUpkeepTriggeredAbility(TargetController.ANY, new WormsOfTheEarthDestroyEffect(), false));
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ public final class Worship extends CardImpl {
|
|||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{3}{W}");
|
||||
|
||||
// If you control a creature, damage that would reduce your life total to less than 1 reduces it to 1 instead.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new WorshipReplacementEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new WorshipReplacementEffect()));
|
||||
}
|
||||
|
||||
private Worship(final Worship card) {
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class WreathOfGeists extends CardImpl {
|
|||
|
||||
// Enchanted creature gets +X/+X, where X is the number of creature cards in your graveyard.
|
||||
DynamicValue value = new CardsInControllerGraveyardCount(StaticFilters.FILTER_CARD_CREATURE);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(value, value)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(value, value)));
|
||||
}
|
||||
|
||||
private WreathOfGeists(final WreathOfGeists card) {
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ public final class WuAdmiral extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Wu Admiral gets +1/+1 as long as an opponent controls an Island.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
|
||||
this.addAbility(new SimpleStaticAbility(new ConditionalContinuousEffect(
|
||||
new BoostSourceEffect(1, 1, Duration.WhileOnBattlefield),
|
||||
new OpponentControlsPermanentCondition(filter),
|
||||
"{this} gets +1/+1 as long as an opponent controls an Island")));
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ public final class WuWarship extends CardImpl {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Wu Warship can't attack unless defending player controls an Island.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackUnlessDefenderControllsPermanent(new FilterLandPermanent(SubType.ISLAND,"an Island"))));
|
||||
this.addAbility(new SimpleStaticAbility(new CantAttackUnlessDefenderControllsPermanent(new FilterLandPermanent(SubType.ISLAND,"an Island"))));
|
||||
}
|
||||
|
||||
private WuWarship(final WuWarship card) {
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ public final class WurmweaverCoil extends CardImpl {
|
|||
this.getSpellAbility().addEffect(new AttachEffect(Outcome.Benefit));
|
||||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(6, 6, Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(6, 6, Duration.WhileOnBattlefield)));
|
||||
Ability activatedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new WurmToken(), 1), new ManaCostsImpl<>("{G}{G}{G}"));
|
||||
activatedAbility.addCost(new SacrificeSourceCost());
|
||||
this.addAbility(activatedAbility);
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ public final class Xenograft extends CardImpl {
|
|||
// As Xenograft enters the battlefield, choose a creature type.
|
||||
this.addAbility(new AsEntersBattlefieldAbility(new ChooseCreatureTypeEffect(Outcome.Detriment)));
|
||||
// Each creature you control is the chosen type in addition to its other types.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new XenograftAddSubtypeEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new XenograftAddSubtypeEffect()));
|
||||
}
|
||||
|
||||
private Xenograft(final Xenograft card) {
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ public final class YavimayaEnchantress extends CardImpl {
|
|||
|
||||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new PermanentsOnBattlefieldCount(filter), Duration.WhileOnBattlefield)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostSourceEffect(new PermanentsOnBattlefieldCount(filter), new PermanentsOnBattlefieldCount(filter), Duration.WhileOnBattlefield)));
|
||||
}
|
||||
|
||||
private YavimayaEnchantress(final YavimayaEnchantress card) {
|
||||
|
|
|
|||
|
|
@ -40,9 +40,9 @@ public final class YavimayasEmbrace extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
// You control enchanted creature.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new ControlEnchantedEffect()));
|
||||
// Enchanted creature gets +2/+2 and has trample.
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
|
||||
ability = new SimpleStaticAbility(new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
|
||||
Effect effect = new GainAbilityAttachedEffect(TrampleAbility.getInstance(), AttachmentType.AURA);
|
||||
effect.setText("and has trample");
|
||||
ability.addEffect(effect);
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ public final class YawgmothsBargain extends CardImpl {
|
|||
|
||||
|
||||
// Skip your draw step.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new SkipDrawStepEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new SkipDrawStepEffect()));
|
||||
|
||||
// Pay 1 life: Draw a card.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new PayLifeCost(1)));
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ public final class YevaNaturesHerald extends CardImpl {
|
|||
// Flash
|
||||
this.addAbility(FlashAbility.getInstance());
|
||||
// You may cast green creature spells as though they had flash.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CastAsThoughItHadFlashAllEffect(Duration.WhileOnBattlefield, filter)));
|
||||
this.addAbility(new SimpleStaticAbility(new CastAsThoughItHadFlashAllEffect(Duration.WhileOnBattlefield, filter)));
|
||||
}
|
||||
|
||||
private YevaNaturesHerald(final YevaNaturesHerald card) {
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ public final class YgraEaterOfAll extends CardImpl {
|
|||
this.addAbility(new WardAbility(new SacrificeTargetCost(filter), false));
|
||||
|
||||
// Other creatures are Food artifacts in addition to their other types and have "{2}, {T}, Sacrifice this permanent: You gain 3 life."
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new YgraEaterOfAllEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new YgraEaterOfAllEffect()));
|
||||
|
||||
// Whenever a Food is put into a graveyard from the battlefield, put two +1/+1 counters on Ygra, Eater of All.
|
||||
this.addAbility(new ZoneChangeAllTriggeredAbility(Zone.BATTLEFIELD, Zone.BATTLEFIELD, Zone.GRAVEYARD,
|
||||
|
|
|
|||
|
|
@ -30,8 +30,8 @@ public final class YixlidJailer extends CardImpl {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Cards in graveyards lose all abilities.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new YixlidJailerEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new YixlidJailerRulesEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new YixlidJailerEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new YixlidJailerRulesEffect()));
|
||||
}
|
||||
|
||||
private YixlidJailer(final YixlidJailer card) {
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class YuanShaoTheIndecisive extends CardImpl {
|
|||
this.addAbility(HorsemanshipAbility.getInstance());
|
||||
|
||||
// Each creature you control can't be blocked by more than one creature.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeBlockedByMoreThanOneAllEffect(new FilterControlledCreaturePermanent())));
|
||||
this.addAbility(new SimpleStaticAbility(new CantBeBlockedByMoreThanOneAllEffect(new FilterControlledCreaturePermanent())));
|
||||
}
|
||||
|
||||
private YuanShaoTheIndecisive(final YuanShaoTheIndecisive card) {
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ public final class ZephidsEmbrace extends CardImpl {
|
|||
Ability ability = new EnchantAbility(auraTarget);
|
||||
this.addAbility(ability);
|
||||
// Enchanted creature gets +2/+2 and has flying and shroud.
|
||||
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2));
|
||||
ability = new SimpleStaticAbility(new BoostEnchantedEffect(2, 2));
|
||||
Effect effect = new GainAbilityAttachedEffect(FlyingAbility.getInstance(), AttachmentType.AURA);
|
||||
effect.setText("and has flying");
|
||||
ability.addEffect(effect);
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@ public final class ZhouYuChiefCommander extends CardImpl {
|
|||
this.toughness = new MageInt(8);
|
||||
|
||||
// Zhou Yu, Chief Commander can't attack unless defending player controls an Island.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantAttackUnlessDefenderControllsPermanent(new FilterLandPermanent(SubType.ISLAND,"an Island"))));
|
||||
this.addAbility(new SimpleStaticAbility(new CantAttackUnlessDefenderControllsPermanent(new FilterLandPermanent(SubType.ISLAND,"an Island"))));
|
||||
}
|
||||
|
||||
private ZhouYuChiefCommander(final ZhouYuChiefCommander card) {
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public final class ZilorthaStrengthIncarnate extends CardImpl {
|
|||
// Trample
|
||||
this.addAbility(TrampleAbility.getInstance());
|
||||
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ZilorthaStrengthIncarnateEffect()));
|
||||
this.addAbility(new SimpleStaticAbility(new ZilorthaStrengthIncarnateEffect()));
|
||||
}
|
||||
|
||||
private ZilorthaStrengthIncarnate(ZilorthaStrengthIncarnate card) {
|
||||
|
|
|
|||
|
|
@ -41,11 +41,11 @@ public final class ZombieMaster extends CardImpl {
|
|||
// Other Zombie creatures have swampwalk.
|
||||
Effect effect = new GainAbilityAllEffect(new SwampwalkAbility(), Duration.WhileOnBattlefield, filter, true);
|
||||
effect.setText("Other Zombie creatures have swampwalk. <i>(They can't be blocked as long as defending player controls a Swamp.)</i>");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
// Other Zombies have "{B}: Regenerate this permanent."
|
||||
effect = new GainAbilityAllEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")), Duration.WhileOnBattlefield, filter, true);
|
||||
effect.setText("Other Zombies have \"{B}: Regenerate this permanent.\"");
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
|
||||
this.addAbility(new SimpleStaticAbility(effect));
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ public final class ZuberiGoldenFeather extends CardImpl {
|
|||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
// Other Griffin creatures get +1/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
|
||||
this.addAbility(new SimpleStaticAbility(new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
|
||||
}
|
||||
|
||||
private ZuberiGoldenFeather(final ZuberiGoldenFeather card) {
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ public final class ZurEternalSchemer extends CardImpl {
|
|||
|
||||
// Enchantment creatures you control have deathtouch, lifelink, and hexproof.
|
||||
CompoundAbility compoundAbilities = new CompoundAbility(DeathtouchAbility.getInstance(), LifelinkAbility.getInstance(), HexproofAbility.getInstance());
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityControlledEffect(compoundAbilities, Duration.WhileOnBattlefield, filter)));
|
||||
this.addAbility(new SimpleStaticAbility(new GainAbilityControlledEffect(compoundAbilities, Duration.WhileOnBattlefield, filter)));
|
||||
|
||||
// {1}{W}: Target non-Aura enchantment you control becomes a creature in addition to its other types and has base power and toughness each equal to its mana value.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ZurEternalSchemerEffect(), new ManaCostsImpl<>("{1}{W}"));
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ public final class ZurgoBellstriker extends CardImpl {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Zurgo Bellstriker can't block creatures with power 2 or greater.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBlockCreaturesSourceEffect(filter)));
|
||||
this.addAbility(new SimpleStaticAbility(new CantBlockCreaturesSourceEffect(filter)));
|
||||
// Dash {1}{R}
|
||||
this.addAbility(new DashAbility("{1}{R}"));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue