refactor: SimpleActivatedAbility default zone (cards U V)

This commit is contained in:
xenohedron 2024-11-16 22:30:50 -05:00
parent 76d422b548
commit 374c2c65d1
136 changed files with 152 additions and 152 deletions

View file

@ -46,7 +46,7 @@ public final class UktabiKong extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new DestroyAllEffect(new FilterArtifactPermanent("artifacts")), false));
// Tap two untapped Apes you control: Create a 1/1 green Ape creature token.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new UktabiKongApeToken()), new TapTargetCost(new TargetControlledPermanent(2, 2, filter, true))));
this.addAbility(new SimpleActivatedAbility(new CreateTokenEffect(new UktabiKongApeToken()), new TapTargetCost(new TargetControlledPermanent(2, 2, filter, true))));
}
private UktabiKong(final UktabiKong card) {

View file

@ -44,7 +44,7 @@ public final class UktabiWildcats extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.ALL, new SetBasePowerToughnessSourceEffect(new PermanentsOnBattlefieldCount(filter))));
// {G}, Sacrifice a Forest: Regenerate Uktabi Wildcats.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{G}"));
Ability ability = new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{G}"));
ability.addCost(new SacrificeTargetCost(sacrificeFilter));
this.addAbility(ability);
}

View file

@ -50,7 +50,7 @@ public final class UlashtTheHateSeed extends CardImpl {
this.addAbility(new EntersBattlefieldAbility(new UlashtTheHateSeedEffect(), "with a +1/+1 counter on it for each other red creature you control and a +1/+1 counter on it for each other green creature you control."));
// {1}, Remove a +1/+1 counter from Ulasht: Choose one - Ulasht deals 1 damage to target creature;
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new GenericManaCost(1));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new GenericManaCost(1));
ability.addCost(new RemoveCountersSourceCost(CounterType.P1P1.createInstance()));
ability.addTarget(new TargetCreaturePermanent());
// or create a 1/1 green Saproling creature token.

View file

@ -38,7 +38,7 @@ public final class UlvenwaldCaptive extends CardImpl {
// {5}{G}{G}: Transform Ulvenwald Captive.
this.addAbility(new TransformAbility());
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TransformSourceEffect(), new ManaCostsImpl<>("{5}{G}{G}")));
this.addAbility(new SimpleActivatedAbility(new TransformSourceEffect(), new ManaCostsImpl<>("{5}{G}{G}")));
}
private UlvenwaldCaptive(final UlvenwaldCaptive card) {

View file

@ -36,7 +36,7 @@ public final class UnbenderTine extends CardImpl {
// {tap}: Untap another target permanent.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UnbenderTineEffect(), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new UnbenderTineEffect(), new TapSourceCost());
ability.addTarget(new TargetPermanent(filter));
this.addAbility(ability);
}

View file

@ -48,7 +48,7 @@ public final class UnbridledGrowth extends CardImpl {
this.addAbility(new SimpleStaticAbility(effect));
// Sacrifice Unbridled Growth: Draw a card.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new SacrificeSourceCost()));
this.addAbility(new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1), new SacrificeSourceCost()));
}
private UnbridledGrowth(final UnbridledGrowth card) {

View file

@ -29,7 +29,7 @@ public final class UndeadLeotau extends CardImpl {
this.toughness = new MageInt(4);
// {R}: Undead Leotau gets +1/-1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(+1, -1, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(+1, -1, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
// Unearth {2}{B}
this.addAbility(new UnearthAbility(new ManaCostsImpl<>("{2}{B}")));

View file

@ -40,7 +40,7 @@ public final class UndeadSlayer extends CardImpl {
this.power = new MageInt(2);
this.toughness = new MageInt(2);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ColoredManaCost(ColoredManaSymbol.W));
Ability ability = new SimpleActivatedAbility(new ExileTargetEffect(), new ColoredManaCost(ColoredManaSymbol.W));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPermanent(filter));
this.addAbility(ability);

View file

@ -37,7 +37,7 @@ public final class UndercityInformer extends CardImpl {
this.toughness = new MageInt(3);
//{1}, Sacrifice a creature: Target player reveals the top card of their library until they reveal a land card, then puts those cards into their graveyard.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UndercityInformerEffect(), new ManaCostsImpl<>("{1}"));
Ability ability = new SimpleActivatedAbility(new UndercityInformerEffect(), new ManaCostsImpl<>("{1}"));
ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_CREATURE));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);

View file

@ -26,7 +26,7 @@ public final class UndercityShade extends CardImpl {
this.addAbility(FearAbility.getInstance());
// {B}: Undercity Shade gets +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.B)));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.B)));
}
private UndercityShade(final UndercityShade card) {

View file

@ -28,7 +28,7 @@ public final class UndercityTroll extends CardImpl {
// Renown 1
this.addAbility(new RenownAbility(1));
// {2}{G}: Regenerate Undercity Troll.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{2}{G}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{2}{G}")));
}
private UndercityTroll(final UndercityTroll card) {

View file

@ -42,7 +42,7 @@ public final class UndergroundForum extends CardImpl {
this.addAbility(ability);
// {2}, {T}: Put a bounty counter on target creature.
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.BOUNTY.createInstance()), new GenericManaCost(2));
Ability ability2 = new SimpleActivatedAbility(new AddCountersTargetEffect(CounterType.BOUNTY.createInstance()), new GenericManaCost(2));
ability2.addCost(new TapSourceCost());
ability2.addTarget(new TargetCreaturePermanent());
this.addAbility(ability2);

View file

@ -33,7 +33,7 @@ public final class UnderworldCoinsmith extends CardImpl {
// Constellation - Whenever Underworld Coinsmith or an enchantment you control enters, you gain 1 life.
this.addAbility(new ConstellationAbility(new GainLifeEffect(1)));
// {W}{B}, Pay 1 life: Each opponent loses 1 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeOpponentsEffect(1), new ManaCostsImpl<>("{W}{B}"));
Ability ability = new SimpleActivatedAbility(new LoseLifeOpponentsEffect(1), new ManaCostsImpl<>("{W}{B}"));
ability.addCost(new PayLifeCost(1));
this.addAbility(ability);
}

View file

@ -44,7 +44,7 @@ public final class UnderworldConnections extends CardImpl {
this.addAbility(ability);
// Enchanted land has "{T}, Pay 1 life: Draw a card."
Ability gainedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new TapSourceCost());
Ability gainedAbility = new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1), new TapSourceCost());
gainedAbility.addCost(new PayLifeCost(1));
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(gainedAbility, AttachmentType.AURA, Duration.WhileOnBattlefield, rule)));
}

View file

@ -22,7 +22,7 @@ public final class UnfulfilledDesires extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}{B}");
// {1}, Pay 1 life: Draw a card, then discard a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawDiscardControllerEffect(), new ManaCostsImpl<>("{1}"));
Ability ability = new SimpleActivatedAbility(new DrawDiscardControllerEffect(), new ManaCostsImpl<>("{1}"));
ability.addCost(new PayLifeCost(1));
this.addAbility(ability);
}

View file

@ -34,7 +34,7 @@ public final class UnholyGrotto extends CardImpl {
// {tap}: Add {C}.
this.addAbility(new ColorlessManaAbility());
// {B}, {tap}: Put target Zombie card from your graveyard on top of your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibraryTargetEffect(true), new ManaCostsImpl<>("{B}"));
Ability ability = new SimpleActivatedAbility(new PutOnLibraryTargetEffect(true), new ManaCostsImpl<>("{B}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCardInYourGraveyard(filter));
this.addAbility(ability);

View file

@ -24,7 +24,7 @@ public final class UniversalSolvent extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{1}");
// {7}, {T}, Sacrifice Universal Solvent: Destroy target permanent.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new GenericManaCost(7));
Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new GenericManaCost(7));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPermanent());

View file

@ -34,7 +34,7 @@ public final class UnlikelyAlliance extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{W}");
// {1}{W}: Target nonattacking, nonblocking creature gets +0/+2 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(0, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}"));
Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(0, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
}

View file

@ -44,7 +44,7 @@ public final class UnlivingPsychopath extends CardImpl {
this.toughness = new MageInt(4);
// {B}: Unliving Psychopath gets +1/-1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.B)));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.B)));
// {B}, {tap}: Destroy target creature with power less than Unliving Psychopath's power.
Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ColoredManaCost(ColoredManaSymbol.B));

View file

@ -22,7 +22,7 @@ public final class UnnaturalSelection extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{U}");
// {1}: Choose a creature type other than Wall. Target creature becomes that type until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesChosenCreatureTypeTargetEffect(true), new GenericManaCost(1));
Ability ability = new SimpleActivatedAbility(new BecomesChosenCreatureTypeTargetEffect(true), new GenericManaCost(1));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -43,14 +43,14 @@ public final class UnravelingMummy extends CardImpl {
// {1}{W}: Target attacking Zombie gains lifelink until end of turn.
Effect effect = new GainAbilityTargetEffect(LifelinkAbility.getInstance(), Duration.EndOfTurn);
effect.setText("Target attacking Zombie gains lifelink until end of turn.");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}{W}"));
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{1}{W}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
// {1}{B}: Target attacking Zombie gains deathtouch until end of turn.
effect = new GainAbilityTargetEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn);
effect.setText("Target attacking Zombie gains deathtouch until end of turn. <i>(Any amount of damage it deals to a creature is enough to destroy it.)</i>");
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}{B}"));
ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{1}{B}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);

View file

@ -44,7 +44,7 @@ public final class UnrulySureshot extends CardImpl {
this.addAbility(ability);
// {3}{R}: Unruly Sureshot deals 2 damage to target creature with a bounty counter on it.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{3}{R}"));
ability = new SimpleActivatedAbility(new DamageTargetEffect(2), new ManaCostsImpl<>("{3}{R}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
}

View file

@ -33,7 +33,7 @@ public final class UnseenWalker extends CardImpl {
this.addAbility(new ForestwalkAbility());
// {1}{G}{G}: Target creature gains forestwalk until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
Ability ability = new SimpleActivatedAbility(
new GainAbilityTargetEffect(new ForestwalkAbility(false), Duration.EndOfTurn),
new ManaCostsImpl<>("{1}{G}{G}"));
ability.addTarget(new TargetCreaturePermanent());

View file

@ -24,7 +24,7 @@ public final class UnspeakableSymbol extends CardImpl {
// Pay 3 life: Put a +1/+1 counter on target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new PayLifeCost(3));
Ability ability = new SimpleActivatedAbility(new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new PayLifeCost(3));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -28,7 +28,7 @@ public final class UnstableFrontier extends CardImpl {
// {tap}: Add {C}.
this.addAbility(new ColorlessManaAbility());
// {tap}: Target land you control becomes the basic land type of your choice until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesBasicLandTargetEffect(Duration.EndOfTurn), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new BecomesBasicLandTargetEffect(Duration.EndOfTurn), new TapSourceCost());
Target target = new TargetControlledPermanent(new FilterControlledLandPermanent());
ability.addTarget(target);
this.addAbility(ability);

View file

@ -28,7 +28,7 @@ public final class UnstableObelisk extends CardImpl {
this.addAbility(new ColorlessManaAbility());
// {7}, {tap}, Sacrifice Unstable Obelisk: Destroy target permanent.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new GenericManaCost(7));
Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new GenericManaCost(7));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPermanent());

View file

@ -26,7 +26,7 @@ public final class UnworthyDead extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
}
private UnworthyDead(final UnworthyDead card) {

View file

@ -33,9 +33,9 @@ public final class UnyaroBees extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {G}: Unyaro Bees gets +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
// {3}{G}, Sacrifice Unyaro Bees: Unyaro Bees deals 2 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2, "it"), new ManaCostsImpl<>("{3}{G}"));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(2, "it"), new ManaCostsImpl<>("{3}{G}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);

View file

@ -29,7 +29,7 @@ public final class UnyieldingKrumar extends CardImpl {
this.toughness = new MageInt(3);
// {1}{W}: Unyielding Krumar gains first strike until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")));
}

View file

@ -37,7 +37,7 @@ public final class Urborg extends CardImpl {
this.addAbility(new BlackManaAbility());
// {tap}: Target creature loses first strike or swampwalk until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UrborgEffect(), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new UrborgEffect(), new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -35,7 +35,7 @@ public final class UrborgPhantom extends CardImpl {
// {U}: Prevent all combat damage that would be dealt to and dealt by Urborg Phantom this turn.
Effect effect = new PreventCombatDamageToSourceEffect(Duration.EndOfTurn);
effect.setText("Prevent all combat damage that would be dealt to");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{U}"));
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{U}"));
effect = new PreventCombatDamageBySourceEffect(Duration.EndOfTurn);
effect.setText("and dealt by {this} this turn");
ability.addEffect(effect);

View file

@ -37,7 +37,7 @@ public final class UrborgSkeleton extends CardImpl {
this.addAbility(new KickerAbility("{3}"));
// {B}: Regenerate Urborg Skeleton.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
// If Urborg Skeleton was kicked, it enters with a +1/+1 counter on it.
Ability ability = new EntersBattlefieldAbility(

View file

@ -33,7 +33,7 @@ public final class UrborgSyphonMage extends CardImpl {
this.toughness = new MageInt(2);
// {2}{B}, {tap}, Discard a card: Each other player loses 2 life. You gain life equal to the life lost this way.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UrborgSyphonMageEffect(), new ManaCostsImpl<>("{2}{B}"));
Ability ability = new SimpleActivatedAbility(new UrborgSyphonMageEffect(), new ManaCostsImpl<>("{2}{B}"));
ability.addCost(new TapSourceCost());
ability.addCost(new DiscardCardCost());
this.addAbility(ability);

View file

@ -26,7 +26,7 @@ public final class Ursapine extends CardImpl {
this.toughness = new MageInt(3);
// {G}: Target creature gets +1/+1 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.G));
Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(1, 1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.G));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -36,10 +36,10 @@ public final class UrsineFylgja extends CardImpl {
effect.setText("with four healing counters on it.");
this.addAbility(new EntersBattlefieldAbility(effect));
// Remove a healing counter from Ursine Fylgja: Prevent the next 1 damage that would be dealt to Ursine Fylgja this turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventDamageToSourceEffect(Duration.EndOfTurn, 1),
this.addAbility(new SimpleActivatedAbility(new PreventDamageToSourceEffect(Duration.EndOfTurn, 1),
new RemoveCountersSourceCost(CounterType.HEALING.createInstance(1))));
// {2}{W}: Put a healing counter on Ursine Fylgja.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.HEALING.createInstance(1)),
this.addAbility(new SimpleActivatedAbility(new AddCountersSourceEffect(CounterType.HEALING.createInstance(1)),
new ManaCostsImpl<>("{2}{W}")));
}

View file

@ -32,7 +32,7 @@ public final class UrzasBauble extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{0}");
// {tap}, Sacrifice Urza's Bauble: Look at a card at random in target player's hand. You draw a card at the beginning of the next turn's upkeep.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LookAtRandomCardEffect(), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new LookAtRandomCardEffect(), new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPlayer());
ability.addEffect(new CreateDelayedTriggeredAbilityEffect(new AtTheBeginOfNextUpkeepDelayedTriggeredAbility(new DrawCardSourceControllerEffect(1, true)), false));

View file

@ -23,7 +23,7 @@ public final class UrzasBlueprints extends CardImpl {
// Echo {6}
this.addAbility(new EchoAbility("{6}"));
// {tap}: Draw a card.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new TapSourceCost()));
this.addAbility(new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1), new TapSourceCost()));
}
private UrzasBlueprints(final UrzasBlueprints card) {

View file

@ -37,10 +37,10 @@ public final class UrzasEngine extends CardImpl {
this.addAbility(TrampleAbility.getInstance());
// {3}: Urza's Engine gains banding until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(BandingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{3}")));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(BandingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{3}")));
// {3}: Attacking creatures banded with Urza's Engine gain trample until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UrzasEngineEffect(), new ManaCostsImpl<>("{3}")));
this.addAbility(new SimpleActivatedAbility(new UrzasEngineEffect(), new ManaCostsImpl<>("{3}")));
}
private UrzasEngine(final UrzasEngine card) {

View file

@ -29,7 +29,7 @@ public final class UrzasFactory extends CardImpl {
this.addAbility(new ColorlessManaAbility());
// {7}, {T}: Create a 2/2 colorless Assembly-Worker artifact creature token.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new AssemblyWorkerToken()), new GenericManaCost(7));
Ability ability = new SimpleActivatedAbility(new CreateTokenEffect(new AssemblyWorkerToken()), new GenericManaCost(7));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}

View file

@ -31,7 +31,7 @@ public class UrzasHotTub extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// {2}, Discard a card: Search your library for a card that shares a complete word in its name with the discarded card, reveal it, put it into your hand, then shuffle your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UrzasHotTubEffect(), new ManaCostsImpl<>("{2}"));
Ability ability = new SimpleActivatedAbility(new UrzasHotTubEffect(), new ManaCostsImpl<>("{2}"));
ability.addCost(new DiscardTargetCost(new TargetCardInHand()));
this.addAbility(ability);
}

View file

@ -34,7 +34,7 @@ public final class UrzasScienceFairProject extends CardImpl {
this.toughness = new MageInt(4);
// {2}: Roll a six-sided die. Urza's Science Fair Project gets the indicated result. 1 - It gets -2/-2 until end of turn. 2 - Prevent all combat damage it would deal this turn. 3 - It gains vigilance until end of turn. 4 - It gains first strike until end of turn. 5 - It gains flying until end of turn. 6 - It gets +2/+2 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UrzasScienceFairProjectEffect(), new GenericManaCost(2));
Ability ability = new SimpleActivatedAbility(new UrzasScienceFairProjectEffect(), new GenericManaCost(2));
this.addAbility(ability);
}

View file

@ -29,7 +29,7 @@ public final class UrzasTome extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// {3}, {T}: Draw a card. Then discard a card unless you exile a historic card from your graveyard.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UrzasTomeEffect(), new GenericManaCost(3));
Ability ability = new SimpleActivatedAbility(new UrzasTomeEffect(), new GenericManaCost(3));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}

View file

@ -26,7 +26,7 @@ public final class UthdenTroll extends CardImpl {
this.toughness = new MageInt(2);
// {R}: Regenerate Uthden Troll.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{R}")));
}
private UthdenTroll(final UthdenTroll card) {

View file

@ -38,7 +38,7 @@ public final class UtopiaMycon extends CardImpl {
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new AddCountersSourceEffect(CounterType.SPORE.createInstance())));
// Remove three spore counters from Utopia Mycon: Create a 1/1 green Saproling creature token.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new SaprolingToken()), new RemoveCountersSourceCost(CounterType.SPORE.createInstance(3))));
this.addAbility(new SimpleActivatedAbility(new CreateTokenEffect(new SaprolingToken()), new RemoveCountersSourceCost(CounterType.SPORE.createInstance(3))));
// Sacrifice a Saproling: Add one mana of any color.
Ability ability = new AnyColorManaAbility(new SacrificeTargetCost(filter),

View file

@ -38,7 +38,7 @@ public final class UyoSilentProphet extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {2}, Return two lands you control to their owner's hand: Copy target instant or sorcery spell. You may choose new targets for the copy.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CopyTargetStackObjectEffect(), new GenericManaCost(2));
Ability ability = new SimpleActivatedAbility(new CopyTargetStackObjectEffect(), new GenericManaCost(2));
ability.addCost(new ReturnToHandChosenControlledPermanentCost(new TargetControlledPermanent(2, 2, new FilterControlledLandPermanent("lands"), false)));
ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_INSTANT_OR_SORCERY));
this.addAbility(ability);

View file

@ -32,11 +32,11 @@ public final class VaevictisAsmadi extends CardImpl {
// At the beginning of your upkeep, sacrifice Vaevictis Asmadi unless you pay {B}{R}{G}.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{B}{R}{G}"))));
// {B}: Vaevictis Asmadi gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{B}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{B}")));
// {R}: Vaevictis Asmadi gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
// {G}: Vaevictis Asmadi gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
}
private VaevictisAsmadi(final VaevictisAsmadi card) {

View file

@ -28,7 +28,7 @@ public final class ValakutInvoker extends CardImpl {
this.toughness = new MageInt(3);
// {8}: Valakut Invoker deals 3 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(3), new GenericManaCost(8));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(3), new GenericManaCost(8));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}

View file

@ -60,7 +60,7 @@ public final class ValkiGodOfLies extends ModalDoubleFacedCard {
this.getLeftHalfCard().addAbility(new EntersBattlefieldTriggeredAbility(new ValkiGodOfLiesRevealExileEffect()));
// X: Choose a creature card exiled with Valki with converted mana cost X. Valki becomes a copy of that card.
this.getLeftHalfCard().addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ValkiGodOfLiesCopyExiledEffect(), new ManaCostsImpl<>("{X}")));
this.getLeftHalfCard().addAbility(new SimpleActivatedAbility(new ValkiGodOfLiesCopyExiledEffect(), new ManaCostsImpl<>("{X}")));
// 2.
// Tibalt, Cosmic Impostor

View file

@ -42,7 +42,7 @@ public final class Valleymaker extends CardImpl {
this.toughness = new MageInt(5);
// {tap}, Sacrifice a Mountain: Valleymaker deals 3 damage to target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(3), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(3), new TapSourceCost());
ability.addCost(new SacrificeTargetCost(filter));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -29,7 +29,7 @@ public final class VampireWarlord extends CardImpl {
this.toughness = new MageInt(2);
// Sacrifice another creature: Regenerate Vampire Warlord.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(),
new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_ANOTHER_CREATURE)));
}

View file

@ -39,7 +39,7 @@ public final class VampiricDragon extends CardImpl {
this.addAbility(new DealtDamageAndDiedTriggeredAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), false));
// {1}{R}: Vampiric Dragon deals 1 damage to target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{1}{R}"));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new ManaCostsImpl<>("{1}{R}"));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -26,7 +26,7 @@ public final class VampiricRites extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{B}");
// {1}{B}, Sacrifice a creature: You gain 1 life and draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl<>("{1}{B}"));
Ability ability = new SimpleActivatedAbility(new GainLifeEffect(1), new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_CREATURE));
Effect effect = new DrawCardSourceControllerEffect(1);
effect.setText("and draw a card");

View file

@ -35,7 +35,7 @@ public final class Vanishing extends CardImpl {
this.addAbility(ability);
// {U}{U}: Enchanted creature phases out.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new PhaseOutAttachedEffect(), new ManaCostsImpl<>("{U}{U}")));
this.addAbility(new SimpleActivatedAbility(new PhaseOutAttachedEffect(), new ManaCostsImpl<>("{U}{U}")));
}
private Vanishing(final Vanishing card) {

View file

@ -39,7 +39,7 @@ public final class VarchildsCrusader extends CardImpl {
this.toughness = new MageInt(2);
// {0}: Varchild's Crusader can't be blocked this turn except by Walls. Sacrifice Varchild's Crusader at the beginning of the next end step.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CantBeBlockedByCreaturesSourceEffect(filter, Duration.EndOfTurn), new GenericManaCost(0));
Ability ability = new SimpleActivatedAbility(new CantBeBlockedByCreaturesSourceEffect(filter, Duration.EndOfTurn), new GenericManaCost(0));
ability.addEffect(new CreateDelayedTriggeredAbilityEffect(new AtTheBeginOfNextEndStepDelayedTriggeredAbility(new SacrificeSourceEffect())));
this.addAbility(ability);
}

View file

@ -34,7 +34,7 @@ public final class VarolzTheScarStriped extends CardImpl {
));
// Sacrifice another creature: Regenerate Varolz, the Scar-Striped.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(),
new SacrificeTargetCost(StaticFilters.FILTER_CONTROLLED_ANOTHER_CREATURE)));
}

View file

@ -34,7 +34,7 @@ public final class VassalsDuty extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{W}");
// {1}: The next 1 damage that would be dealt to target legendary creature you control this turn is dealt to you instead.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new VassalsDutyPreventDamageTargetEffect(Duration.EndOfTurn, 1), new GenericManaCost(1));
Ability ability = new SimpleActivatedAbility(new VassalsDutyPreventDamageTargetEffect(Duration.EndOfTurn, 1), new GenericManaCost(1));
ability.addTarget(new TargetControlledCreaturePermanent(1, 1, filter, false));
this.addAbility(ability);
}

View file

@ -35,7 +35,7 @@ public final class VastwoodAnimist extends CardImpl {
this.toughness = new MageInt(1);
// {tap}: Target land you control becomes an X/X Elemental creature until end of turn, where X is the number of Allies you control. It's still a land.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new VastwoodAnimistEffect(), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new VastwoodAnimistEffect(), new TapSourceCost());
ability.addTarget(new TargetControlledPermanent(new FilterControlledLandPermanent()));
this.addAbility(ability);
}

View file

@ -35,7 +35,7 @@ public final class VectisDominator extends CardImpl {
this.toughness = new MageInt(2);
// {T}: Tap target creature unless its controller pays 2 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new VectisDominatorEffect(new PayLifeCost(2)), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new VectisDominatorEffect(new PayLifeCost(2)), new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -28,7 +28,7 @@ public final class VectisSilencers extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(2);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{2}{B}")));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{2}{B}")));
}
private VectisSilencers(final VectisSilencers card) {

View file

@ -27,7 +27,7 @@ public final class VectorAsp extends CardImpl {
this.subtype.add(SubType.SNAKE);
this.power = new MageInt(1);
this.toughness = new MageInt(1);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(InfectAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{B}")));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(InfectAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{B}")));
}
private VectorAsp(final VectorAsp card) {

View file

@ -32,7 +32,7 @@ public final class VedalkenAnatomist extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(2);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.M1M1.createInstance()), new ManaCostsImpl<>("{2}{U}"));
Ability ability = new SimpleActivatedAbility(new AddCountersTargetEffect(CounterType.M1M1.createInstance()), new ManaCostsImpl<>("{2}{U}"));
ability.addEffect(new MayTapOrUntapTargetEffect().setText("You may tap or untap that creature"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());

View file

@ -31,7 +31,7 @@ public final class VedalkenEntrancer extends CardImpl {
this.toughness = new MageInt(4);
// {U}, {tap}: Target player puts the top two cards of their library into their graveyard.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MillCardsTargetEffect(2), new ColoredManaCost(ColoredManaSymbol.U));
Ability ability = new SimpleActivatedAbility(new MillCardsTargetEffect(2), new ColoredManaCost(ColoredManaSymbol.U));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayer());
this.addAbility(ability);

View file

@ -30,7 +30,7 @@ public final class VedalkenMastermind extends CardImpl {
this.toughness = new MageInt(2);
// {U}{Tap}: Return target permanent you control to its owner's hand.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ColoredManaCost(ColoredManaSymbol.U));
Ability ability = new SimpleActivatedAbility(new ReturnToHandTargetEffect(), new ColoredManaCost(ColoredManaSymbol.U));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetControlledPermanent());
this.addAbility(ability);

View file

@ -46,7 +46,7 @@ public final class VedalkenShackles extends CardImpl {
ConditionalContinuousEffect effect = new ConditionalContinuousEffect(
new GainControlTargetEffect(Duration.Custom), SourceTappedCondition.TAPPED,
"Gain control of target creature with power less than or equal to the number of Islands you control for as long as {this} remains tapped");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new GenericManaCost(2));
Ability ability = new SimpleActivatedAbility(effect, new GenericManaCost(2));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(controllableCreatures));
this.addAbility(ability);

View file

@ -35,7 +35,7 @@ public final class VeinDrinker extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {R}, {tap}: Vein Drinker deals damage equal to its power to target creature. That creature deals damage equal to its power to Vein Drinker.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEachOtherEffect(), new ManaCostsImpl<>("{R}"));
Ability ability = new SimpleActivatedAbility(new DamageEachOtherEffect(), new ManaCostsImpl<>("{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -32,7 +32,7 @@ public final class VeldraneOfSengir extends CardImpl {
this.toughness = new MageInt(5);
// {1}{B}{B}: Veldrane of Sengir gets -3/-0 and gains forestwalk until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(-3, -0, Duration.EndOfTurn).setText("{this} gets -3/-0"), new ManaCostsImpl<>("{1}{B}{B}"));
Ability ability = new SimpleActivatedAbility(new BoostSourceEffect(-3, -0, Duration.EndOfTurn).setText("{this} gets -3/-0"), new ManaCostsImpl<>("{1}{B}{B}"));
ability.addEffect(new GainAbilitySourceEffect(new ForestwalkAbility(false), Duration.EndOfTurn).setText("and gains forestwalk until end of turn"));
this.addAbility(ability);
}

View file

@ -37,7 +37,7 @@ public final class VengefulArchon extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {X}: Prevent the next X damage that would be dealt to you this turn. If damage is prevented this way, Vengeful Archon deals that much damage to target player.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new VengefulArchonEffect(), new ManaCostsImpl<>("{X}"));
Ability ability = new SimpleActivatedAbility(new VengefulArchonEffect(), new ManaCostsImpl<>("{X}"));
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability);
}

View file

@ -42,7 +42,7 @@ public final class VengefulFirebrand extends CardImpl {
"{this} has haste as long as a Warrior card is in your graveyard")));
// {R}: Vengeful Firebrand gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
}
private VengefulFirebrand(final VengefulFirebrand card) {

View file

@ -40,7 +40,7 @@ public final class VenomspoutBrackus extends CardImpl {
this.toughness = new MageInt(5);
// {1}{G}, {tap}: Venomspout Brackus deals 5 damage to target attacking or blocking creature with flying.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(5), new ManaCostsImpl<>("{1}{G}"));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(5), new ManaCostsImpl<>("{1}{G}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);

View file

@ -38,7 +38,7 @@ public final class VentSentinel extends CardImpl {
this.toughness = new MageInt(4);
this.addAbility(DefenderAbility.getInstance());
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(new PermanentsOnBattlefieldCount(filter)), new ManaCostsImpl<>("{1}{R}"));
SimpleActivatedAbility ability = new SimpleActivatedAbility(new DamageTargetEffect(new PermanentsOnBattlefieldCount(filter)), new ManaCostsImpl<>("{1}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability);

View file

@ -27,7 +27,7 @@ public final class VerdantAutomaton extends CardImpl {
this.toughness = new MageInt(2);
// {3}{G}: Put a +1/+1 counter on Verdant Automaton.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance(1)), new ManaCostsImpl<>("{3}{G}")));
this.addAbility(new SimpleActivatedAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance(1)), new ManaCostsImpl<>("{3}{G}")));
}
private VerdantAutomaton(final VerdantAutomaton card) {

View file

@ -36,7 +36,7 @@ public final class VerdantField extends CardImpl {
this.addAbility(ability);
// Enchanted land has "{T}: Target creature gets +1/+1 until end of turn."
Ability gainAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new TapSourceCost());
Ability gainAbility = new SimpleActivatedAbility(new BoostTargetEffect(1, 1, Duration.EndOfTurn), new TapSourceCost());
gainAbility.addTarget(new TargetCreaturePermanent());
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(gainAbility, AttachmentType.AURA,
Duration.WhileOnBattlefield, "Enchanted land has \"{T}: Target creature gets +1/+1 until end of turn.\"")));

View file

@ -26,7 +26,7 @@ public final class VesselOfEphemera extends CardImpl {
// {2}{W}, Sacrifice Vessel of Ephemera: Create two 1/1 white Spirit creature tokens with flying.
Effect effect = new CreateTokenEffect(new SpiritWhiteToken(), 2);
effect.setText("Create two 1/1 white Spirit creature tokens with flying");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}{W}"));
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{2}{W}"));
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);
}

View file

@ -24,7 +24,7 @@ public final class VesselOfParamnesia extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{U}");
// {U}, Sacrifice Vessel of Paramnesia: Target player puts the top three cards of their library into their graveyard. Draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MillCardsTargetEffect(3), new ManaCostsImpl<>("{U}"));
Ability ability = new SimpleActivatedAbility(new MillCardsTargetEffect(3), new ManaCostsImpl<>("{U}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPlayer());
ability.addEffect(new DrawCardSourceControllerEffect(1));

View file

@ -31,7 +31,7 @@ public final class VeteranCathar extends CardImpl {
this.toughness = new MageInt(2);
// {3}{W}: Target Human gains double strike until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(DoubleStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{3}{W}"));
Ability ability = new SimpleActivatedAbility(new GainAbilityTargetEffect(DoubleStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{3}{W}"));
ability.addTarget(new TargetCreaturePermanent(new FilterCreaturePermanent(SubType.HUMAN, "Human")));
this.addAbility(ability);

View file

@ -50,7 +50,7 @@ public final class VeteranWarleader extends CardImpl {
.addHint(CreaturesYouControlHint.instance));
// Tap another untapped Ally you control: Veteran Warleader gains your choice of first strike, vigilance, or trample until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainsChoiceOfAbilitiesEffect(GainsChoiceOfAbilitiesEffect.TargetType.Source,
this.addAbility(new SimpleActivatedAbility(new GainsChoiceOfAbilitiesEffect(GainsChoiceOfAbilitiesEffect.TargetType.Source,
FirstStrikeAbility.getInstance(), VigilanceAbility.getInstance(), TrampleAbility.getInstance()),
new TapTargetCost(new TargetControlledPermanent(1, 1, filter, true))));
}

View file

@ -27,7 +27,7 @@ public final class VexingArcanix extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{4}");
// {3}, {tap}: Target player chooses a card name, then reveals the top card of their library. If that card has the chosen name, the player puts it into their hand. Otherwise, the player puts it into their graveyard and Vexing Arcanix deals 2 damage to them.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new VexingArcanixEffect(), new GenericManaCost(3));
Ability ability = new SimpleActivatedAbility(new VexingArcanixEffect(), new GenericManaCost(3));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayer());
this.addAbility(ability);

View file

@ -29,7 +29,7 @@ public final class VexingBauble extends CardImpl {
new CounterTargetEffect().setText("counter that spell")));
// {1}, {T}, Sacrifice Vexing Bauble: Draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1),
Ability ability = new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1),
new GenericManaCost(1));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
@ -45,4 +45,4 @@ public final class VexingBauble extends CardImpl {
public VexingBauble copy() {
return new VexingBauble(this);
}
}
}

View file

@ -38,7 +38,7 @@ public final class VexingShusher extends CardImpl {
// Vexing Shusher can't be countered.
this.addAbility(new CantBeCounteredSourceAbility());
// {R/G}: Target spell can't be countered.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new VexingShusherCantCounterTargetEffect(), new ManaCostsImpl<>("{R/G}"));
Ability ability = new SimpleActivatedAbility(new VexingShusherCantCounterTargetEffect(), new ManaCostsImpl<>("{R/G}"));
ability.addTarget(new TargetSpell());
this.addAbility(ability);
}

View file

@ -33,7 +33,7 @@ public final class VhatiIlDal extends CardImpl {
this.toughness = new MageInt(3);
// {tap}: Until end of turn, target creature has base power 1 or base toughness 1.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new VhatiIlDalEffect(), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new VhatiIlDalEffect(), new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -23,7 +23,7 @@ public final class VialOfDragonfire extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// {2}, {T}, Sacrifice Vial of Dragonfire: Vial of Dragonfire deals 2 damage to target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2, "it"), new ManaCostsImpl<>("{2}"));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(2, "it"), new ManaCostsImpl<>("{2}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());

View file

@ -25,7 +25,7 @@ public final class VialOfPoison extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{1}");
// {1}, Sacrifice Vial of Poison: Target creature gains deathtouch until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}"));
Ability ability = new SimpleActivatedAbility(new GainAbilityTargetEffect(DeathtouchAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -29,7 +29,7 @@ public final class ViashinoFangtail extends CardImpl {
this.toughness = new MageInt(3);
// {tap}: Viashino Fangtail deals 1 damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new TapSourceCost());
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}

View file

@ -25,7 +25,7 @@ public final class ViashinoGrappler extends CardImpl {
this.toughness = new MageInt(1);
// {G}: Viashino Grappler gains trample until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.G)));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.G)));
}
private ViashinoGrappler(final ViashinoGrappler card) {

View file

@ -32,7 +32,7 @@ public final class ViashinoHeretic extends CardImpl {
this.toughness = new MageInt(3);
// {1}{R}, {tap}: Destroy target artifact. Viashino Heretic deals damage to that artifact's controller equal to the artifact's converted mana cost.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ViashinoHereticEffect(), new ManaCostsImpl<>("{1}{R}"));
Ability ability = new SimpleActivatedAbility(new ViashinoHereticEffect(), new ManaCostsImpl<>("{1}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetArtifactPermanent());
this.addAbility(ability);
@ -80,4 +80,4 @@ class ViashinoHereticEffect extends OneShotEffect {
}
return false;
}
}
}

View file

@ -32,7 +32,7 @@ public final class ViashinoSandswimmer extends CardImpl {
this.toughness = new MageInt(2);
// {R}: Flip a coin. If you win the flip, return Viashino Sandswimmer to its owner's hand. If you lose the flip, sacrifice Viashino Sandswimmer.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ViashinoSandswimmerEffect(), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new ViashinoSandswimmerEffect(), new ManaCostsImpl<>("{R}")));
}
private ViashinoSandswimmer(final ViashinoSandswimmer card) {

View file

@ -29,7 +29,7 @@ public final class ViashinoSkeleton extends CardImpl {
this.power = new MageInt(2);
this.toughness = new MageInt(1);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}"));
Ability ability = new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new DiscardTargetCost(new TargetCardInHand()));
this.addAbility(ability);
}

View file

@ -25,7 +25,7 @@ public final class ViashinoSlasher extends CardImpl {
this.toughness = new MageInt(2);
// {R}: Viashino Slasher gets +1/-1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.R)));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.R)));
}
private ViashinoSlasher(final ViashinoSlasher card) {

View file

@ -28,9 +28,9 @@ public final class ViashivanDragon extends CardImpl {
addAbility(FlyingAbility.getInstance());
//{R}: Viashivan Dragon gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.R)));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.R)));
//{G}: Viashivan Dragon gets +/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.G)));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.G)));
}

View file

@ -32,7 +32,7 @@ public final class VictualSliver extends CardImpl {
this.toughness = new MageInt(2);
// All Slivers have "{2}, Sacrifice this permanent: You gain 4 life."
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(4), new SacrificeSourceCost());
Ability ability = new SimpleActivatedAbility(new GainLifeEffect(4), new SacrificeSourceCost());
ability.addCost(new GenericManaCost(2));
this.addAbility(new SimpleStaticAbility(

View file

@ -34,7 +34,7 @@ public final class VigeanGraftmage extends CardImpl {
this.addAbility(new GraftAbility(this, 2));
// {1}{U}: Untap target creature with a +1/+1 counter on it.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapTargetEffect(), new ManaCostsImpl<>("{1}{U}"));
Ability ability = new SimpleActivatedAbility(new UntapTargetEffect(), new ManaCostsImpl<>("{1}{U}"));
ability.addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_CREATURE_P1P1));
this.addAbility(ability);
}

View file

@ -30,7 +30,7 @@ public final class VigilantDrake extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {2}{U}: Untap Vigilant Drake.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl<>("{2}{U}")));
this.addAbility(new SimpleActivatedAbility(new UntapSourceEffect(), new ManaCostsImpl<>("{2}{U}")));
}
private VigilantDrake(final VigilantDrake card) {

View file

@ -42,11 +42,11 @@ public final class VigilantMartyr extends CardImpl {
this.toughness = new MageInt(1);
// Sacrifice Vigilant Martyr: Regenerate target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new SacrificeSourceCost());
Ability ability = new SimpleActivatedAbility(new RegenerateTargetEffect(), new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
// {W}{W}, {tap}, Sacrifice Vigilant Martyr: Counter target spell that targets an enchantment.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl<>("{W}{W}"));
ability = new SimpleActivatedAbility(new CounterTargetEffect(), new ManaCostsImpl<>("{W}{W}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetSpell(filter));

View file

@ -35,11 +35,11 @@ public final class VildinPackOutcast extends CardImpl {
this.addAbility(TrampleAbility.getInstance());
// {R}: Vildin-Pack Outcast gets +1/-1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
// {5}{R}{R}: Transform Vildin-Pack Outcast.
this.addAbility(new TransformAbility());
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TransformSourceEffect(), new ManaCostsImpl<>("{5}{R}{R}")));
this.addAbility(new SimpleActivatedAbility(new TransformSourceEffect(), new ManaCostsImpl<>("{5}{R}{R}")));
}
private VildinPackOutcast(final VildinPackOutcast card) {

View file

@ -46,7 +46,7 @@ public final class VileRequiem extends CardImpl {
// {1}{B}, Sacrifice Vile Requiem: Destroy up to X target nonblack creatures, where X is the number of verse counters on Vile Requiem. They can't be regenerated.
Effect effect = new DestroyTargetEffect(true);
effect.setText("Destroy up to X target nonblack creatures, where X is the number of verse counters on {this}. They can't be regenerated");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}{B}"));
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPermanent(0, 0, filter, false));
ability.setTargetAdjuster(new TargetsCountAdjuster(new CountersSourceCount(CounterType.VERSE)));

View file

@ -37,7 +37,7 @@ public final class VillageElder extends CardImpl {
this.toughness = new MageInt(1);
// {G}, {tap}, Sacrifice a Forest: Regenerate target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl<>("{G}"));
Ability ability = new SimpleActivatedAbility(new RegenerateTargetEffect(), new ManaCostsImpl<>("{G}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeTargetCost(filter));
ability.addTarget(new TargetCreaturePermanent());

View file

@ -31,7 +31,7 @@ public final class VintaraElephant extends CardImpl {
// Trample
this.addAbility(TrampleAbility.getInstance());
// {3}: Vintara Elephant loses trample until end of turn. Any player may activate this ability.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseAbilitySourceEffect(
SimpleActivatedAbility ability = new SimpleActivatedAbility(new LoseAbilitySourceEffect(
TrampleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{3}"));
ability.setMayActivate(TargetController.ANY);
ability.addEffect(new InfoEffect("Any player may activate this ability"));

View file

@ -34,7 +34,7 @@ public final class ViralDrake extends CardImpl {
this.addAbility(InfectAbility.getInstance());
// {3}{U}: Proliferate. (You choose any number of permanents and/or players with counters on them, then give each another counter of a kind already there.)
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ProliferateEffect(), new ManaCostsImpl<>("{3}{U}")));
this.addAbility(new SimpleActivatedAbility(new ProliferateEffect(), new ManaCostsImpl<>("{3}{U}")));
}
private ViralDrake(final ViralDrake card) {

View file

@ -32,7 +32,7 @@ public final class ViridianLongbow extends CardImpl {
// Equipped creature has "{tap}: This creature deals 1 damage to any target."
Effect effect = new DamageTargetEffect(1);
effect.setText("This creature deals 1 damage to any target");
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new TapSourceCost());
SimpleActivatedAbility ability = new SimpleActivatedAbility(effect, new TapSourceCost());
ability.addTarget(new TargetAnyTarget());
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(ability, AttachmentType.EQUIPMENT)));

View file

@ -38,7 +38,7 @@ public final class ViridianScout extends CardImpl {
this.toughness = new MageInt(2);
// {2}{G}, Sacrifice Viridian Scout: Viridian Scout deals 2 damage to target creature with flying.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2, "it"), new ManaCostsImpl<>("{2}{G}"));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(2, "it"), new ManaCostsImpl<>("{2}{G}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);

Some files were not shown because too many files have changed in this diff Show more