refactor: SimpleActivatedAbility default zone (cards C)

This commit is contained in:
xenohedron 2024-11-16 22:26:19 -05:00
parent ecdbacc107
commit 8628de0c1f
212 changed files with 233 additions and 234 deletions

View file

@ -39,7 +39,7 @@ public final class CabalArchon extends CardImpl {
this.toughness = new MageInt(2);
// {B}, Sacrifice a Cleric: Target player loses 2 life and you gain 2 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(2), new ManaCostsImpl<>("{B}"));
Ability ability = new SimpleActivatedAbility(new LoseLifeTargetEffect(2), new ManaCostsImpl<>("{B}"));
Effect effect = new GainLifeEffect(2);
effect.setText("and you gain 2 life");
ability.addEffect(effect);

View file

@ -29,7 +29,7 @@ public final class CabalTrainee extends CardImpl {
this.toughness = new MageInt(1);
// Sacrifice Cabal Trainee: Target creature gets -2/-0 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-2, 0, Duration.EndOfTurn), new SacrificeSourceCost());
Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(-2, 0, Duration.EndOfTurn), new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -31,7 +31,7 @@ public final class CacklingImp extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {tap}: Target player loses 1 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(1), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new LoseLifeTargetEffect(1), new TapSourceCost());
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
}

View file

@ -30,7 +30,7 @@ public final class CadaverousKnight extends CardImpl {
// Flanking
this.addAbility(new FlankingAbility());
// {1}{B}{B}: Regenerate Cadaverous Knight.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}{B}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}{B}")));
}
private CadaverousKnight(final CadaverousKnight card) {

View file

@ -31,7 +31,7 @@ public final class CalciformPools extends CardImpl {
// {T}: Add {C}.
this.addAbility(new ColorlessManaAbility());
// {1}, {T}: Put a storage counter on Calciform Pools.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.STORAGE.createInstance()), new GenericManaCost(1));
Ability ability = new SimpleActivatedAbility(new AddCountersSourceEffect(CounterType.STORAGE.createInstance()), new GenericManaCost(1));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
// {1}, Remove X storage counters from Calciform Pools: Add X mana in any combination of {W} and/or {U}.

View file

@ -28,9 +28,9 @@ public final class CalderaKavu extends CardImpl {
this.toughness = new MageInt(2);
// {1}{B}: Caldera Kavu gets +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}")));
// {G}: Caldera Kavu becomes the color of your choice until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesColorSourceEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
this.addAbility(new SimpleActivatedAbility(new BecomesColorSourceEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
}
private CalderaKavu(final CalderaKavu card) {

View file

@ -24,7 +24,7 @@ public final class CallOfTheWild extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{G}{G}");
// {2}{G}{G}: Reveal the top card of your library. If it's a creature card, put it onto the battlefield. Otherwise, put it into your graveyard.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CallOfTheWildEffect(), new ManaCostsImpl<>("{2}{G}{G}")));
this.addAbility(new SimpleActivatedAbility(new CallOfTheWildEffect(), new ManaCostsImpl<>("{2}{G}{G}")));
}
private CallOfTheWild(final CallOfTheWild card) {

View file

@ -33,7 +33,7 @@ public final class CallerOfGales extends CardImpl {
this.toughness = new MageInt(1);
// {1}{U}, {T}: Target creature gains flying until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{U}"));
Ability ability = new SimpleActivatedAbility(new GainAbilityTargetEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{U}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -36,7 +36,7 @@ public final class CallousDeceiver extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(3);
// {1}: Look at the top card of your library.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new LookLibraryControllerEffect(), new GenericManaCost(1)));
this.addAbility(new SimpleActivatedAbility(new LookLibraryControllerEffect(), new GenericManaCost(1)));
// {2}: Reveal the top card of your library. If it's a land card, {this} gets +1/+0 and gains flying until end of turn. Activate this ability only once each turn.
this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new CallousDeceiverEffect(), new ManaCostsImpl<>("{2}")));

View file

@ -49,7 +49,7 @@ public final class CallousOppressor extends CardImpl {
new GainControlTargetEffect(Duration.OneUse),
SourceTappedCondition.TAPPED,
"Gain control of target creature for as long as {this} remains tapped");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new TapSourceCost());
Ability ability = new SimpleActivatedAbility(effect, new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(new CallousOppressorFilter()));
this.addAbility(ability);
}

View file

@ -37,7 +37,7 @@ public final class CanalDredger extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.ALL, new InfoEffect("Each player passes the last card from each booster pack to a player who drafted a card named Canal Dredger - not implemented.")));
// {T}: Put target card from your graveyard on the bottom of your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibraryTargetEffect(false), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new PutOnLibraryTargetEffect(false), new TapSourceCost());
ability.addTarget(new TargetCardInYourGraveyard());
this.addAbility(ability);
}

View file

@ -28,7 +28,7 @@ public final class CandelabraOfTawnos extends CardImpl {
// {X}, {T}: Untap X target lands.
Effect effect = new UntapTargetEffect();
effect.setText("untap X target lands");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{X}"));
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{X}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPermanent(StaticFilters.FILTER_LANDS));
ability.setTargetAdjuster(new XTargetsCountAdjuster());

View file

@ -28,7 +28,7 @@ public final class CandlesOfLeng extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// {4}, {tap}: Reveal the top card of your library. If it has the same name as a card in your graveyard, put it into your graveyard. Otherwise, draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CandlesOfLengEffect(), new GenericManaCost(4));
Ability ability = new SimpleActivatedAbility(new CandlesOfLengEffect(), new GenericManaCost(4));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}

View file

@ -35,7 +35,7 @@ public final class CanopyDragon extends CardImpl {
// {1}{G}: Canopy Dragon gains flying and loses trample until end of turn.
Effect effect = new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn);
effect.setText("{this} gains flying");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}{G}"));
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{1}{G}"));
effect = new LoseAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn);
effect.setText("and loses trample until end of turn");
ability.addEffect(effect);

View file

@ -36,7 +36,7 @@ public final class CantinaBand extends CardImpl {
this.toughness = new MageInt(1);
// {T}, {1}: Tap target nonartifact creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new GenericManaCost(1));
Ability ability = new SimpleActivatedAbility(new TapTargetEffect(), new GenericManaCost(1));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);

View file

@ -31,7 +31,7 @@ public final class CanyonDrake extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {1}, Discard a card at random: Canyon Drake gets +2/+0 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}"));
Ability ability = new SimpleActivatedAbility(new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}"));
ability.addCost(new DiscardCardCost(true));
this.addAbility(ability);
}

View file

@ -30,7 +30,7 @@ public final class CapashenKnight extends CardImpl {
this.addAbility(FirstStrikeAbility.getInstance());
// {1}{W}: Capashen Knight gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")));
}
private CapashenKnight(final CapashenKnight card) {

View file

@ -40,7 +40,7 @@ public final class CapashenStandard extends CardImpl {
// Enchanted creature gets +1/+1.
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(1, 1, Duration.WhileOnBattlefield)));
// {2}, Sacrifice Capashen Standard: Draw a card.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}"));
ability = new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}"));
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);
}

View file

@ -28,7 +28,7 @@ public final class CapashenTemplar extends CardImpl {
this.toughness = new MageInt(2);
// {W}: Capashen Templar gets +0/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{W}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{W}")));
}
private CapashenTemplar(final CapashenTemplar card) {

View file

@ -31,7 +31,7 @@ public final class CapashenUnicorn extends CardImpl {
this.toughness = new MageInt(2);
// {1}{W}, {tap}, Sacrifice Capashen Unicorn: Destroy target artifact or enchantment.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{1}{W}"));
Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl<>("{1}{W}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPermanent(StaticFilters.FILTER_PERMANENT_ARTIFACT_OR_ENCHANTMENT));

View file

@ -46,7 +46,7 @@ public final class CaptainOfTheMists extends CardImpl {
this.addAbility(new EntersBattlefieldControlledTriggeredAbility(new UntapSourceEffect(), filter));
// {1}{U}, {tap}: You may tap or untap target permanent.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MayTapOrUntapTargetEffect(), new ManaCostsImpl<>("{1}{U}"));
Ability ability = new SimpleActivatedAbility(new MayTapOrUntapTargetEffect(), new ManaCostsImpl<>("{1}{U}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPermanent());
this.addAbility(ability);

View file

@ -37,7 +37,7 @@ public final class CaptainSisay extends CardImpl {
this.toughness = new MageInt(2);
// {tap}: Search your library for a legendary card, reveal that card, and put it into your hand. Then shuffle your library.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInHandEffect(new TargetCardInLibrary(filter), true, true), new TapSourceCost()));
this.addAbility(new SimpleActivatedAbility(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(filter), true, true), new TapSourceCost()));
}
private CaptainSisay(final CaptainSisay card) {

View file

@ -45,7 +45,7 @@ public final class CaptivatingVampire extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter1, true)));
// Tap five untapped Vampires you control: Gain control of target creature. It becomes a Vampire in addition to its other types.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CaptivatingVampireEffect(), new TapTargetCost(new TargetControlledPermanent(5, 5, filter2, true)));
Ability ability = new SimpleActivatedAbility(new CaptivatingVampireEffect(), new TapTargetCost(new TargetControlledPermanent(5, 5, filter2, true)));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -24,7 +24,7 @@ public final class CaptiveFlame extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{R}");
// {R}: Target creature gets +1/+0 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 0, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.R));
Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(1, 0, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.R));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -35,7 +35,7 @@ public final class Carapace extends CardImpl {
// Enchanted creature gets +0/+2.
this.addAbility(new SimpleStaticAbility(new BoostEnchantedEffect(0, 2, Duration.WhileOnBattlefield)));
// Sacrifice Carapace: Regenerate enchanted creature.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAttachedEffect(AttachmentType.AURA), new SacrificeSourceCost()));
this.addAbility(new SimpleActivatedAbility(new RegenerateAttachedEffect(AttachmentType.AURA), new SacrificeSourceCost()));
}
private Carapace(final Carapace card) {

View file

@ -34,7 +34,7 @@ public final class Caregiver extends CardImpl {
this.toughness = new MageInt(1);
// {W}, Sacrifice a creature: Prevent the next 1 damage that would be dealt to any target this turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventDamageToTargetEffect(Duration.EndOfTurn, 1), new ColoredManaCost(ColoredManaSymbol.W));
Ability ability = new SimpleActivatedAbility(new PreventDamageToTargetEffect(Duration.EndOfTurn, 1), new ColoredManaCost(ColoredManaSymbol.W));
ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_CREATURE));
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);

View file

@ -47,13 +47,13 @@ public final class CaribouRange extends CardImpl {
Ability ability = new EnchantAbility(auraTarget);
this.addAbility(ability);
// Enchanted land has "{W}{W}, {T}: Create a 0/1 white Caribou creature token."
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new CaribouToken()), new ManaCostsImpl<>("{W}{W}"));
ability = new SimpleActivatedAbility(new CreateTokenEffect(new CaribouToken()), new ManaCostsImpl<>("{W}{W}"));
ability.addCost(new TapSourceCost());
Effect effect = new GainAbilityAttachedEffect(ability, AttachmentType.AURA);
effect.setText("Enchanted land has \"{W}{W}, {T}: Create a 0/1 white Caribou creature token.\"");
this.addAbility(new SimpleStaticAbility(effect));
// Sacrifice a Caribou token: You gain 1 life.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1),
this.addAbility(new SimpleActivatedAbility(new GainLifeEffect(1),
new SacrificeTargetCost(filter)));
}

View file

@ -22,7 +22,7 @@ public final class CarnageAltar extends CardImpl {
public CarnageAltar(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new GenericManaCost(3));
SimpleActivatedAbility ability = new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1), new GenericManaCost(3));
ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_CREATURE));
this.addAbility(ability);
}

View file

@ -33,7 +33,7 @@ public final class CarnageGladiator extends CardImpl {
this.addAbility(new CarnageGladiatorTriggeredAbility());
// {1}{B}{R}: Renegerate Carnage Gladiator.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),new ManaCostsImpl<>("{1}{B}{R}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(),new ManaCostsImpl<>("{1}{B}{R}")));
}

View file

@ -29,7 +29,7 @@ public final class Carnassid extends CardImpl {
// Trample
this.addAbility(TrampleAbility.getInstance());
// {1}{G}: Regenerate Carnassid.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{G}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{G}")));
}
private Carnassid(final Carnassid card) {

View file

@ -29,7 +29,7 @@ public final class CarnivorousMossBeast extends CardImpl {
this.toughness = new MageInt(5);
// {5}{G}{G}: Put a +1/+1 counter on Carnivorous Moss-Beast.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{5}{G}{G}")));
this.addAbility(new SimpleActivatedAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{5}{G}{G}")));
}
private CarnivorousMossBeast(final CarnivorousMossBeast card) {

View file

@ -26,7 +26,7 @@ public final class CarrionAnts extends CardImpl {
this.toughness = new MageInt(1);
// {1}: Carrion Ants gets +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}")));
}

View file

@ -28,7 +28,7 @@ public final class CarrionBeetles extends CardImpl {
this.toughness = new MageInt(1);
// {2}{B}, {T}: Exile up to three target cards from a single graveyard.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl<>("{2}{B}"));
Ability ability = new SimpleActivatedAbility(new ExileTargetEffect(), new ManaCostsImpl<>("{2}{B}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCardInASingleGraveyard(0, 3, StaticFilters.FILTER_CARD_CARDS));
this.addAbility(ability);

View file

@ -28,7 +28,7 @@ public final class CarrionHowler extends CardImpl {
this.toughness = new MageInt(2);
// Pay 1 life: Carrion Howler gets +2/-1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, -1, Duration.EndOfTurn), new PayLifeCost(1)));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(2, -1, Duration.EndOfTurn), new PayLifeCost(1)));
}
private CarrionHowler(final CarrionHowler card) {

View file

@ -29,7 +29,7 @@ public final class CarrionWall extends CardImpl {
// Defender
this.addAbility(DefenderAbility.getInstance());
// {1}{B}: Regenerate Carrion Wall.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}")));
}
private CarrionWall(final CarrionWall card) {

View file

@ -38,7 +38,7 @@ public final class CatapultMaster extends CardImpl {
this.toughness = new MageInt(3);
// Tap five untapped Soldiers you control: Exile target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new TapTargetCost(new TargetControlledPermanent(5,5,filter,false)));
Ability ability = new SimpleActivatedAbility(new ExileTargetEffect(), new TapTargetCost(new TargetControlledPermanent(5,5,filter,false)));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -39,7 +39,7 @@ public final class CatapultSquad extends CardImpl {
this.toughness = new MageInt(1);
// Tap two untapped Soldiers you control: Catapult Squad deals 2 damage to target attacking or blocking creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new TapTargetCost(new TargetControlledPermanent(2, 2, filter, false)));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(2), new TapTargetCost(new TargetControlledPermanent(2, 2, filter, false)));
ability.addTarget(new TargetCreaturePermanent(new FilterAttackingOrBlockingCreature()));
this.addAbility(ability);
}

View file

@ -41,7 +41,7 @@ public final class CateranBrute extends CardImpl {
this.toughness = new MageInt(2);
// {2}, {T}: Search your library for a Mercenary permanent card with converted mana cost 2 or less and put it onto the battlefield. Then shuffle your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
ability.addCost(new GenericManaCost(2));
this.addAbility(ability);
}

View file

@ -45,7 +45,7 @@ public final class CateranEnforcer extends CardImpl {
this.addAbility(FearAbility.getInstance());
// {4}, {T}: Search your library for a Mercenary permanent card with converted mana cost 4 or less and put it onto the battlefield. Then shuffle your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
ability.addCost(new GenericManaCost(4));
this.addAbility(ability);
}

View file

@ -40,7 +40,7 @@ public final class CateranKidnappers extends CardImpl {
this.toughness = new MageInt(2);
// {3}, {T}: Search your library for a Mercenary permanent card with converted mana cost 3 or less and put it onto the battlefield. Then shuffle your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
ability.addCost(new GenericManaCost(3));
this.addAbility(ability);
}

View file

@ -44,11 +44,11 @@ public final class CateranOverlord extends CardImpl {
this.toughness = new MageInt(5);
// Sacrifice a creature: Regenerate Cateran Overlord.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(),
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(),
new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_CREATURE)));
// {6}, {T}: Search your library for a Mercenary permanent card with converted mana cost 6 or less and put it onto the battlefield. Then shuffle your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
ability.addCost(new GenericManaCost(6));
this.addAbility(ability);
}

View file

@ -41,7 +41,7 @@ public final class CateranPersuader extends CardImpl {
this.toughness = new MageInt(1);
// {1}, {T}: Search your library for a Mercenary permanent card with converted mana cost 1 or less and put it onto the battlefield. Then shuffle your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
ability.addCost(new GenericManaCost(1));
this.addAbility(ability);
}

View file

@ -43,7 +43,7 @@ public final class CateranSlaver extends CardImpl {
this.addAbility(new SwampwalkAbility());
// {5}, {T}: Search your library for a Mercenary permanent card with converted mana cost 5 or less and put it onto the battlefield. Then shuffle your library.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new SearchLibraryPutInPlayEffect(new TargetCardInLibrary(filter)), new TapSourceCost());
ability.addCost(new GenericManaCost(5));
this.addAbility(ability);
}

View file

@ -30,7 +30,7 @@ public final class CatharCommando extends CardImpl {
this.addAbility(FlashAbility.getInstance());
// {1}, Sacrifice Cathar Commando: Destroy target artifact or enchantment.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{1}"));
Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl<>("{1}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPermanent(StaticFilters.FILTER_PERMANENT_ARTIFACT_OR_ENCHANTMENT));
this.addAbility(ability);

View file

@ -28,7 +28,7 @@ public final class CauldronOfSouls extends CardImpl {
// {tap}: Choose any number of target creatures. Each of those creatures gains persist until end of turn.
Effect effect = new GainAbilityTargetEffect(new PersistAbility(), Duration.EndOfTurn);
effect.setText("choose any number of target creatures. Each of those creatures gains persist until end of turn");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new TapSourceCost());
Ability ability = new SimpleActivatedAbility(effect, new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(0, Integer.MAX_VALUE, StaticFilters.FILTER_PERMANENT_CREATURE, false));
this.addAbility(ability);

View file

@ -30,7 +30,7 @@ public final class CausticCaterpillar extends CardImpl {
this.toughness = new MageInt(1);
// {1}{G}, Sacrifice Caustic Caterpillar: Destroy target artifact or enchantment.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{1}{G}"));
Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl<>("{1}{G}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPermanent(StaticFilters.FILTER_PERMANENT_ARTIFACT_OR_ENCHANTMENT));
this.addAbility(ability);

View file

@ -36,7 +36,7 @@ public final class CausticTar extends CardImpl {
this.addAbility(ability);
// Enchanted land has "{T}: Target player loses 3 life."
Ability tarAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(3), new TapSourceCost());
Ability tarAbility = new SimpleActivatedAbility(new LoseLifeTargetEffect(3), new TapSourceCost());
tarAbility.addTarget(new TargetPlayer());
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(tarAbility, AttachmentType.AURA,
Duration.WhileOnBattlefield,"Enchanted land has \"{T}: Target player loses 3 life.\"")));

View file

@ -44,7 +44,7 @@ public final class CaveOfTheFrostDragon extends CardImpl {
this.addAbility(new WhiteManaAbility());
// {4}{W}: Cave of the Frost Dragon becomes a 3/4 white Dragon creature with flying until end of turn. It's still a land.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(
this.addAbility(new SimpleActivatedAbility(new BecomesCreatureSourceEffect(
new CreatureToken(3, 4, "3/4 white Dragon creature with flying")
.withColor("W")
.withSubType(SubType.DRAGON)

View file

@ -35,7 +35,7 @@ public final class CavePeople extends CardImpl {
this.addAbility(new AttacksTriggeredAbility(new BoostSourceEffect(1, -2, Duration.EndOfTurn), false));
// {1}{R}{R}, {tap}: Target creature gains mountainwalk until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilityTargetEffect(new MountainwalkAbility(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}{R}"));
Ability ability = new SimpleActivatedAbility(new GainAbilityTargetEffect(new MountainwalkAbility(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -30,7 +30,7 @@ public final class CavernCrawler extends CardImpl {
this.addAbility(new MountainwalkAbility());
// {R}: Cavern Crawler 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}")));
}
private CavernCrawler(final CavernCrawler card) {

View file

@ -44,7 +44,7 @@ public final class CavernHarpy extends CardImpl {
// When Cavern Harpy enters the battlefield, return a blue or black creature you control to its owner's hand.
this.addAbility(new EntersBattlefieldTriggeredAbility(new ReturnToHandChosenControlledPermanentEffect(filter), false));
// Pay 1 life: Return Cavern Harpy to its owner's hand.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new PayLifeCost(1)));
this.addAbility(new SimpleActivatedAbility(new ReturnToHandSourceEffect(true), new PayLifeCost(1)));
}
private CavernHarpy(final CavernHarpy card) {

View file

@ -26,7 +26,7 @@ public final class CavernThoctar extends CardImpl {
this.power = new MageInt(5);
this.toughness = new MageInt(5);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}")));
}
private CavernThoctar(final CavernThoctar card) {

View file

@ -35,7 +35,7 @@ public final class CelestialColonnade extends CardImpl {
this.addAbility(new WhiteManaAbility());
// {3}{W}{U}: Until end of turn, Celestial Colonnade becomes a 4/4 white and blue Elemental creature with flying and vigilance. It's still a land.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(
this.addAbility(new SimpleActivatedAbility(new BecomesCreatureSourceEffect(
new CreatureToken(4, 4, "4/4 white and blue Elemental creature with flying and vigilance")
.withColor("WU")
.withSubType(SubType.ELEMENTAL)

View file

@ -28,7 +28,7 @@ public final class CellarDoor extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// {3}, {tap}: Target player puts the bottom card of their library into their graveyard. If it's a creature card, you create a 2/2 black Zombie creature token.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CellarDoorEffect(), new GenericManaCost(3));
SimpleActivatedAbility ability = new SimpleActivatedAbility(new CellarDoorEffect(), new GenericManaCost(3));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayer());
this.addAbility(ability);

View file

@ -44,7 +44,7 @@ public final class CemeteryReaper extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
// {2}{B}, {T} : Exile target creature card from a graveyard. Create a 2/2 black Zombie creature token.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl<>("{2}{B}"));
Ability ability = new SimpleActivatedAbility(new ExileTargetEffect(), new ManaCostsImpl<>("{2}{B}"));
ability.addCost(new TapSourceCost());
ability.addEffect(new CreateTokenEffect(new ZombieToken()));
ability.addTarget(new TargetCardInGraveyard(StaticFilters.FILTER_CARD_CREATURE_A_GRAVEYARD));

View file

@ -37,7 +37,7 @@ public final class CennsTactician extends CardImpl {
this.toughness = new MageInt(1);
// {W}, {tap}: Put a +1/+1 counter on target Soldier creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ColoredManaCost(ColoredManaSymbol.W));
Ability ability = new SimpleActivatedAbility(new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ColoredManaCost(ColoredManaSymbol.W));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(filterSoldier));
this.addAbility(ability);

View file

@ -38,7 +38,7 @@ public final class CentaurArcher extends CardImpl {
this.toughness = new MageInt(2);
// {tap}: Centaur Archer deals 1 damage to target creature with flying.
Ability activatedAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost());
Ability activatedAbility = new SimpleActivatedAbility(new DamageTargetEffect(1), new TapSourceCost());
activatedAbility.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(activatedAbility);
}

View file

@ -21,7 +21,7 @@ public final class CentaurGlade extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{3}{G}{G}");
// {2}{G}{G}: Create a 3/3 green Centaur creature token.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new CentaurToken(), 1), new ManaCostsImpl<>("{2}{G}{G}")));
this.addAbility(new SimpleActivatedAbility(new CreateTokenEffect(new CentaurToken(), 1), new ManaCostsImpl<>("{2}{G}{G}")));
}
private CentaurGlade(final CentaurGlade card) {

View file

@ -30,7 +30,7 @@ public final class CentaurVeteran extends CardImpl {
// Trample
this.addAbility(TrampleAbility.getInstance());
// {G}, Discard a card: Regenerate Centaur Veteran.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{G}"));
Ability ability = new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{G}"));
ability.addCost(new DiscardCardCost());
this.addAbility(ability);
}

View file

@ -30,7 +30,7 @@ public final class CentaursHerald extends CardImpl {
this.toughness = new MageInt(1);
// {2}{G}, Sacrifice Centaur's Herald: Create a 3/3 green Centaur creature token.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new CentaurToken()), new ManaCostsImpl<>("{2}{G}"));
Ability ability = new SimpleActivatedAbility(new CreateTokenEffect(new CentaurToken()), new ManaCostsImpl<>("{2}{G}"));
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);
}

View file

@ -29,7 +29,7 @@ public final class CephalidBroker extends CardImpl {
this.toughness = new MageInt(2);
// {tap}: Target player draws two cards, then discards two cards.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardTargetEffect(2), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new DrawCardTargetEffect(2), new TapSourceCost());
ability.addEffect(new DiscardTargetEffect(2).setText(", then discards two cards"));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);

View file

@ -41,7 +41,7 @@ public final class CephalidIllusionist extends CardImpl {
Effect effect = new PreventDamageToTargetEffect(Duration.EndOfTurn, true);
effect.setText("Prevent all combat damage that would be dealt to");
// and dealt by target creature you control this turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}{U}"));
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{2}{U}"));
effect = new PreventDamageByTargetEffect(Duration.EndOfTurn, true);
effect.setText("and dealt by target creature you control this turn.");
ability.addEffect(effect);

View file

@ -38,7 +38,7 @@ public final class CephalidRetainer extends CardImpl {
this.toughness = new MageInt(3);
// {U}{U}: Tap target creature without flying.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapTargetEffect(), new ManaCostsImpl<>("{U}{U}"));
Ability ability = new SimpleActivatedAbility(new TapTargetEffect(), new ManaCostsImpl<>("{U}{U}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
}

View file

@ -34,7 +34,7 @@ public final class CephalidScout extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {2}{U}, Sacrifice a land: Draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}{U}"));
Ability ability = new SimpleActivatedAbility(new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}{U}"));
ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_LAND));
this.addAbility(ability);
}

View file

@ -34,7 +34,7 @@ public final class CephalidSnitch extends CardImpl {
this.toughness = new MageInt(1);
// Sacrifice Cephalid Snitch: Target creature loses protection from black until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CephalidSnitchEffect(), new SacrificeSourceCost());
Ability ability = new SimpleActivatedAbility(new CephalidSnitchEffect(), new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -32,7 +32,7 @@ public final class CeruleanSphinx extends CardImpl {
// {U}: Cerulean Sphinx's owner shuffles it into their library.
Effect effect = new ShuffleIntoLibrarySourceEffect();
effect.setText("{this}'s owner shuffles it into their library.");
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{U}")));
this.addAbility(new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{U}")));
}
private CeruleanSphinx(final CeruleanSphinx card) {

View file

@ -30,7 +30,7 @@ public final class CetaDisciple extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
Ability firstAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(2, 0, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.R));
Ability firstAbility = new SimpleActivatedAbility(new BoostTargetEffect(2, 0, Duration.EndOfTurn), new ColoredManaCost(ColoredManaSymbol.R));
firstAbility.addCost(new TapSourceCost());
firstAbility.addTarget(new TargetCreaturePermanent());
this.addAbility(firstAbility);

View file

@ -55,7 +55,7 @@ public final class ChainerDementiaMaster extends CardImpl {
this.addAbility(new SimpleStaticAbility(new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filterCreature, false)));
// {B}{B}{B}, Pay 3 life: Put target creature card from a graveyard onto the battlefield under your control. That creature is black and is a Nightmare in addition to its other creature types.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ChainerDementiaMasterEffect(), new ManaCostsImpl<>("{B}{B}{B}"));
Ability ability = new SimpleActivatedAbility(new ChainerDementiaMasterEffect(), new ManaCostsImpl<>("{B}{B}{B}"));
ability.addCost(new PayLifeCost(3));
ability.addTarget(new TargetCardInGraveyard(StaticFilters.FILTER_CARD_CREATURE_A_GRAVEYARD));
this.addAbility(ability);

View file

@ -25,7 +25,7 @@ public final class ChaliceOfDeath extends CardImpl {
this.nightCard = true;
// {tap}: Target player loses 5 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(5), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new LoseLifeTargetEffect(5), new TapSourceCost());
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
}

View file

@ -30,7 +30,7 @@ public final class ChaliceOfLife extends CardImpl {
// {tap}: You gain 1 life. Then if you have at least 10 life more than your starting life total, transform Chalice of Life.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ChaliceOfLifeEffect(), new TapSourceCost()));
this.addAbility(new SimpleActivatedAbility(new ChaliceOfLifeEffect(), new TapSourceCost()));
}
private ChaliceOfLife(final ChaliceOfLife card) {

View file

@ -38,7 +38,7 @@ public final class ChamberOfManipulation extends CardImpl {
this.addAbility(ability);
// Enchanted land has "{tap}, Discard a card: Gain control of target creature until end of turn."
Ability controlAbility = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainControlTargetEffect(Duration.EndOfTurn), new TapSourceCost());
Ability controlAbility = new SimpleActivatedAbility(new GainControlTargetEffect(Duration.EndOfTurn), new TapSourceCost());
controlAbility.addTarget(new TargetCreaturePermanent());
controlAbility.addCost(new DiscardTargetCost(new TargetCardInHand()));
this.addAbility(new SimpleStaticAbility(new GainAbilityAttachedEffect(controlAbility, AttachmentType.AURA,

View file

@ -46,7 +46,7 @@ public final class ChamberSentry extends CardImpl {
"with a +1/+1 counter on it for each color of mana spent to cast it"));
// {X}, {T}, Remove X +1/+1 counters from Chamber Sentry: It deals X damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(GetXValue.instance)
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(GetXValue.instance)
.setText("It deals X damage to any target"),
new ManaCostsImpl<>("{X}"));
ability.addCost(new TapSourceCost());

View file

@ -49,7 +49,7 @@ public final class ChampionOfStraySouls extends CardImpl {
// {3}{B}{B}, {T}, Sacrifice X other creatures: Return X target creatures from your graveyard to the battlefield.
Effect effect = new ReturnFromGraveyardToBattlefieldTargetEffect();
effect.setText("Return X target creature cards from your graveyard to the battlefield");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{3}{B}{B}"));
Ability ability = new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{3}{B}{B}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeXTargetCost(filter));
ability.addTarget(new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURES_YOUR_GRAVEYARD));

View file

@ -38,7 +38,7 @@ public final class Chandler extends CardImpl {
this.toughness = new MageInt(3);
// {R}{R}{R}, {tap}: Destroy target artifact creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{R}{R}{R}"));
Ability ability = new SimpleActivatedAbility(new DestroyTargetEffect(), new ManaCostsImpl<>("{R}{R}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);

View file

@ -50,7 +50,7 @@ public final class ChandraFireOfKaladesh extends CardImpl {
// {T}: Chandra, Fire of Kaladesh deals 1 damage to target player. If Chandra has dealt 3 or more damage this turn, exile her, then return her to the battlefield transformed under her owner's control.
this.addAbility(new TransformAbility());
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new TapSourceCost());
ability.addEffect(new ConditionalOneShotEffect(new ExileAndReturnSourceEffect(PutCards.BATTLEFIELD_TRANSFORMED,Pronoun.SHE), new SourceDealtDamageCondition(3)));
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability, new DamageDoneWatcher());

View file

@ -29,7 +29,7 @@ public final class CharRumbler extends CardImpl {
// Double strike
this.addAbility(DoubleStrikeAbility.getInstance());
// {R}: Char-Rumbler 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 CharRumbler(final CharRumbler card) {

View file

@ -30,7 +30,7 @@ public final class ChargingTroll extends CardImpl {
// Vigilance
this.addAbility(VigilanceAbility.getInstance());
// {G}: Regenerate Charging Troll.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{G}"));
Ability ability = new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{G}"));
this.addAbility(ability);
}

View file

@ -31,7 +31,7 @@ public final class CharmPeddler extends CardImpl {
this.toughness = new MageInt(1);
// {W}, {T}, Discard a card: The next time a source of your choice would deal damage to target creature this turn, prevent that damage.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PreventNextDamageFromChosenSourceToTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{W}"));
Ability ability = new SimpleActivatedAbility(new PreventNextDamageFromChosenSourceToTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{W}"));
ability.addCost(new TapSourceCost());
ability.addCost(new DiscardCardCost());
ability.addTarget(new TargetCreaturePermanent());

View file

@ -29,7 +29,7 @@ public final class ChartoothCougar extends CardImpl {
this.toughness = new MageInt(4);
// {R}: Chartooth Cougar 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}")));
// Mountaincycling {2}
this.addAbility(new MountaincyclingAbility(new ManaCostsImpl<>("{2}")));
}

View file

@ -46,7 +46,7 @@ public final class ChickenALaKing extends CardImpl {
this.addAbility(new ChickenALaKingTriggeredAbility());
// Tap an untapped Bird you control: Roll a six-sided die.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RollDiceEffect(6), new TapTargetCost(new TargetControlledPermanent(1, 1, filter, false))));
this.addAbility(new SimpleActivatedAbility(new RollDiceEffect(6), new TapTargetCost(new TargetControlledPermanent(1, 1, filter, false))));
}
private ChickenALaKing(final ChickenALaKing card) {

View file

@ -31,7 +31,7 @@ public final class ChildOfGaea extends CardImpl {
this.addAbility(TrampleAbility.getInstance());
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{G}{G}"))));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{G}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{G}")));
}
private ChildOfGaea(final ChildOfGaea card) {

View file

@ -28,7 +28,7 @@ public final class ChildOfThorns extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
// Sacrifice Child of Thorns: Target creature gets +1/+1 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(1, 1, Duration.EndOfTurn), new SacrificeSourceCost());
Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(1, 1, Duration.EndOfTurn), new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -33,7 +33,7 @@ public final class ChildrenOfKorlis extends CardImpl {
this.toughness = new MageInt(1);
// Sacrifice Children of Korlis: You gain life equal to the life you've lost this turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
this.addAbility(new SimpleActivatedAbility(
new GainLifeEffect(new SourceControllerLostLifeCount(),"You gain life equal to the life you've lost this turn"),
new SacrificeSourceCost()));
}

View file

@ -27,7 +27,7 @@ public final class ChillingApparition extends CardImpl {
this.toughness = new MageInt(1);
// {B}: Regenerate Chilling Apparition.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
this.addAbility(new SimpleActivatedAbility(new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
// Whenever Chilling Apparition deals combat damage to a player, that player discards a card.
this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new DiscardTargetEffect(1), false, true));
}

View file

@ -31,7 +31,7 @@ public final class ChillingShade extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {S}: Chilling Shade gets +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{S}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{S}")));
}
private ChillingShade(final ChillingShade card) {

View file

@ -40,7 +40,7 @@ public final class ChimericEgg extends CardImpl {
this.addAbility(new SpellCastOpponentTriggeredAbility(new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), nonArtifactFilter, false));
// Remove three charge counters from Chimeric Egg: Chimeric Egg becomes a 6/6 Construct artifact creature with trample until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(
this.addAbility(new SimpleActivatedAbility(new BecomesCreatureSourceEffect(
new CreatureToken(6, 6, "6/6 Construct artifact creature with trample")
.withSubType(SubType.CONSTRUCT)
.withType(CardType.ARTIFACT)

View file

@ -26,7 +26,7 @@ public final class ChimericIdol extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}");
// {0}: Tap all lands you control. Chimeric Idol becomes a 3/3 Turtle artifact creature until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapAllEffect(new FilterControlledLandPermanent("lands you control")), new ManaCostsImpl<>("{0}"));
Ability ability = new SimpleActivatedAbility(new TapAllEffect(new FilterControlledLandPermanent("lands you control")), new ManaCostsImpl<>("{0}"));
ability.addEffect(new BecomesCreatureSourceEffect(
new CreatureToken(3, 3, "3/3 Turtle artifact creature")
.withSubType(SubType.TURTLE)

View file

@ -30,7 +30,7 @@ public final class ChimericMass extends CardImpl {
// {1}: Until end of turn, Chimeric Mass becomes a Construct artifact creature with "This creature's power and toughness are each equal to the number of charge counters on it."
CountersSourceCount count = new CountersSourceCount(CounterType.CHARGE);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(
this.addAbility(new SimpleActivatedAbility(new BecomesCreatureSourceEffect(
new CreatureToken(0, 0, "Construct artifact creature with \"This creature's power and toughness are each equal to the number of charge counters on it.\"")
.withType(CardType.ARTIFACT)
.withSubType(SubType.CONSTRUCT)

View file

@ -26,7 +26,7 @@ public final class ChimericSphere extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}");
// {2}: Until end of turn, Chimeric Sphere becomes a 2/1 Construct artifact creature with flying.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(
this.addAbility(new SimpleActivatedAbility(new BecomesCreatureSourceEffect(
new CreatureToken(2, 1, "2/1 Construct artifact creature with flying")
.withSubType(SubType.CONSTRUCT)
.withType(CardType.ARTIFACT)
@ -34,7 +34,7 @@ public final class ChimericSphere extends CardImpl {
CardType.ARTIFACT, Duration.EndOfTurn).withDurationRuleAtStart(true), new ManaCostsImpl<>("{2}")));
// {2}: Until end of turn, Chimeric Sphere becomes a 3/2 Construct artifact creature without flying.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(
Ability ability = new SimpleActivatedAbility(new BecomesCreatureSourceEffect(
new CreatureToken(3, 2, "3/2 Construct artifact creature")
.withSubType(SubType.CONSTRUCT)
.withType(CardType.ARTIFACT),

View file

@ -43,7 +43,7 @@ public final class ChirrutImwe extends CardImpl {
// {1}{W}: Prevent all combat damage that would be dealt to Chirrut Imwe until end of turn.
Effect effect = new PreventCombatDamageToSourceEffect(Duration.EndOfTurn);
effect.setText("Prevent all combat damage that would be dealt to {this} until end of turn");
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}{W}")));
this.addAbility(new SimpleActivatedAbility(effect, new ManaCostsImpl<>("{1}{W}")));
}
private ChirrutImwe(final ChirrutImwe card) {

View file

@ -43,7 +43,7 @@ public final class ChitteringWitch extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(effect));
// {1}{B}, Sacrifice a creature: Target creature gets -2/-2 until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(-2, -2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}"));
Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(-2, -2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new SacrificeTargetCost(StaticFilters.FILTER_PERMANENT_CREATURE));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -36,7 +36,7 @@ public final class ChoArrimAlchemist extends CardImpl {
this.toughness = new MageInt(1);
// {1}{W}{W}, {tap}, Discard a card: The next time a source of your choice would deal damage to you this turn, prevent that damage. You gain life equal to the damage prevented this way.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ChoArrimAlchemistEffect(), new ManaCostsImpl<>("{1}{W}{W}"));
Ability ability = new SimpleActivatedAbility(new ChoArrimAlchemistEffect(), new ManaCostsImpl<>("{1}{W}{W}"));
ability.addCost(new TapSourceCost());
ability.addCost(new DiscardCardCost());
this.addAbility(ability);

View file

@ -41,7 +41,7 @@ public final class ChokingRestraints extends CardImpl {
this.addAbility(new SimpleStaticAbility(new CantAttackBlockAttachedEffect(AttachmentType.AURA)));
// {3}{W}{W}, Sacrifice Choking Restraints: Exile enchanted creature.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileAttachedEffect(), new ManaCostsImpl<>("{3}{W}{W}"));
ability = new SimpleActivatedAbility(new ExileAttachedEffect(), new ManaCostsImpl<>("{3}{W}{W}"));
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);

View file

@ -41,7 +41,7 @@ public final class ChosenOfMarkov extends CardImpl {
// {tap}, Tap an untapped Vampire you control: Transform Chosen of Markov.
this.addAbility(new TransformAbility());
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TransformSourceEffect(), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new TransformSourceEffect(), new TapSourceCost());
ability.addCost(new TapTargetCost(new TargetControlledPermanent(filter)));
this.addAbility(ability);
}

View file

@ -29,7 +29,7 @@ public final class Chronomaton extends CardImpl {
this.toughness = new MageInt(1);
// {1}, {tap}: Put a +1/+1 counter on Chronomaton.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new GenericManaCost(1));
Ability ability = new SimpleActivatedAbility(new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new GenericManaCost(1));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}

View file

@ -31,7 +31,7 @@ public final class CinderElemental extends CardImpl {
this.toughness = new MageInt(2);
// {X}{R}, {tap}, Sacrifice Cinder Elemental: Cinder Elemental deals X damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(GetXValue.instance, "it"), new ManaCostsImpl<>("{X}{R}"));
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(GetXValue.instance, "it"), new ManaCostsImpl<>("{X}{R}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetAnyTarget());

View file

@ -38,7 +38,7 @@ public final class CinderPyromancer extends CardImpl {
this.power = new MageInt(0);
this.toughness = new MageInt(1);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new TapSourceCost());
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new TapSourceCost());
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability);
this.addAbility(new SpellCastControllerTriggeredAbility(new UntapSourceEffect(), filter, true));

View file

@ -31,10 +31,10 @@ public final class CinderShade extends CardImpl {
this.toughness = new MageInt(1);
// {B}: Cinder Shade gets +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{B}")));
this.addAbility(new SimpleActivatedAbility(new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{B}")));
// {R}, Sacrifice Cinder Shade: Cinder Shade deals damage equal to its power to target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(SourcePermanentPowerValue.NOT_NEGATIVE)
Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(SourcePermanentPowerValue.NOT_NEGATIVE)
.setText("It deals damage equal to its power to target creature"), new ManaCostsImpl<>("{R}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());

View file

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

View file

@ -40,7 +40,7 @@ public final class CinderhazeWretch extends CardImpl {
this.addAbility(ability);
// Put a -1/-1 counter on Cinderhaze Wretch: Untap Cinderhaze Wretch.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new PutCountersSourceCost(CounterType.M1M1.createInstance(1))));
this.addAbility(new SimpleActivatedAbility(new UntapSourceEffect(), new PutCountersSourceCost(CounterType.M1M1.createInstance(1))));
}
@ -52,4 +52,4 @@ public final class CinderhazeWretch extends CardImpl {
public CinderhazeWretch copy() {
return new CinderhazeWretch(this);
}
}
}

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