refactor: SimpleStaticAbility default zone (cards W X Y Z)

This commit is contained in:
xenohedron 2024-11-16 22:16:38 -05:00
parent 952f7d0c90
commit 65a9f19a2c
83 changed files with 96 additions and 98 deletions

View file

@ -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)));
}

View file

@ -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);
}
}
}

View file

@ -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) {

View file

@ -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) {

View file

@ -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) {

View file

@ -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;
}
}

View file

@ -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()));
}

View file

@ -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) {

View file

@ -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()));
}

View file

@ -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)));
}

View file

@ -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"))

View file

@ -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()));
}

View file

@ -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 {
}
}

View file

@ -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)));

View file

@ -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")));
}

View file

@ -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) {

View file

@ -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));

View file

@ -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) {

View file

@ -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)));
}

View file

@ -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")));

View file

@ -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) {

View file

@ -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) {

View file

@ -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)
);
}

View file

@ -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) {

View file

@ -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) {

View file

@ -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}")));

View file

@ -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())));

View file

@ -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())));

View file

@ -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) {

View file

@ -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) {

View file

@ -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) {

View file

@ -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) {

View file

@ -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)));
}

View file

@ -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)));
}

View file

@ -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")));

View file

@ -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) {

View file

@ -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) {

View file

@ -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"))

View file

@ -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()));
}

View file

@ -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);

View file

@ -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));
}

View file

@ -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")));

View file

@ -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) {

View file

@ -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) {

View file

@ -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)));
}

View file

@ -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);

View file

@ -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);

View file

@ -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()));

View file

@ -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()));
}

View file

@ -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) {

View file

@ -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.

View file

@ -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())));
}

View file

@ -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));

View file

@ -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) {

View file

@ -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) {

View file

@ -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());

View file

@ -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) {

View file

@ -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) {

View file

@ -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);
}

View file

@ -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());

View file

@ -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);

View file

@ -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) {

View file

@ -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));

View file

@ -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) {

View file

@ -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) {

View file

@ -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")));

View file

@ -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) {

View file

@ -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);

View file

@ -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) {

View file

@ -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) {

View file

@ -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);

View file

@ -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)));

View file

@ -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) {

View file

@ -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,

View file

@ -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) {

View file

@ -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) {

View file

@ -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);

View file

@ -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) {

View file

@ -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) {

View file

@ -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));
}

View file

@ -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) {

View file

@ -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}"));

View file

@ -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}"));
}