Refactor: fix raw use of parameterized class ManaCostsImpl - 'T' cards (#9085)

This commit is contained in:
DeepCrimson 2022-06-12 10:30:46 -07:00 committed by GitHub
parent 85e8b978b0
commit 22a64d4f1d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
179 changed files with 200 additions and 200 deletions

View file

@ -25,7 +25,7 @@ public final class TahCropSkirmisher extends CardImpl {
this.toughness = new MageInt(1);
// Embalm {3}{U}
this.addAbility(new EmbalmAbility(new ManaCostsImpl("{3}{U}"), this));
this.addAbility(new EmbalmAbility(new ManaCostsImpl<>("{3}{U}"), this));
}

View file

@ -34,7 +34,7 @@ public final class TahngarthTalruumHero extends CardImpl {
// Vigilance
this.addAbility(VigilanceAbility.getInstance());
// {1}{R}, {tap}: Tahngarth, Talruum Hero deals damage equal to its power to target creature. That creature deals damage equal to its power to Tahngarth.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEachOtherEffect(), new ManaCostsImpl("{1}{R}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEachOtherEffect(), new ManaCostsImpl<>("{1}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -62,7 +62,7 @@ public final class TajicLegionsEdge extends CardImpl {
new GainAbilitySourceEffect(
FirstStrikeAbility.getInstance(),
Duration.EndOfTurn
), new ManaCostsImpl("{R}{W}")
), new ManaCostsImpl<>("{R}{W}")
));
}

View file

@ -42,7 +42,7 @@ public final class TalonOfPain extends CardImpl {
this.addAbility(new TalonOfPainTriggeredAbility());
// {X}, {T}, Remove X charge counters from Talon of Pain: Talon of Pain deals X damage to any target.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(ManacostVariableValue.REGULAR), new ManaCostsImpl("{X}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(ManacostVariableValue.REGULAR), new ManaCostsImpl<>("{X}"));
ability.addCost(new TapSourceCost());
ability.addCost(new TalonOfPainRemoveVariableCountersSourceCost(CounterType.CHARGE.createInstance()));
ability.addTarget(new TargetAnyTarget());

View file

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

View file

@ -40,7 +40,7 @@ public final class TalonsOfFalkenrath extends CardImpl {
this.addAbility(new EnchantAbility(auraTarget.getTargetName()));
// Enchanted creature has "{1}{R}: This creature gets +2/+0 until end of turn."
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD,
new GainAbilityAttachedEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl("{1}{R}")),
new GainAbilityAttachedEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}")),
AttachmentType.AURA)));
}

View file

@ -54,7 +54,7 @@ public final class TalonsOfWildwood extends CardImpl {
this.addAbility(new SimpleActivatedAbility(
Zone.GRAVEYARD,
new ReturnSourceFromGraveyardToHandEffect(),
new ManaCostsImpl("{2}{G}")
new ManaCostsImpl<>("{2}{G}")
));
}

View file

@ -30,7 +30,7 @@ public final class TangleAngler extends CardImpl {
this.toughness = new MageInt(5);
this.addAbility(InfectAbility.getInstance());
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MustBeBlockedByTargetSourceEffect(), new ManaCostsImpl("{G}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MustBeBlockedByTargetSourceEffect(), new ManaCostsImpl<>("{G}"));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -25,7 +25,7 @@ public final class TangleHulk extends CardImpl {
this.subtype.add(SubType.BEAST);
this.power = new MageInt(5);
this.toughness = new MageInt(3);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{2}{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{2}{G}")));
}
public TangleHulk (final TangleHulk card) {

View file

@ -38,7 +38,7 @@ public final class TasigurTheGoldenFang extends CardImpl {
this.addAbility(new DelveAbility());
// {2}{G/U}{G/U}: Put the top two cards of your library into your graveyard, then return a nonland card of an opponent's choice from your graveyard to your hand.
Ability ability = new SimpleActivatedAbility(new MillCardsControllerEffect(2), new ManaCostsImpl("{2}{G/U}{G/U}"));
Ability ability = new SimpleActivatedAbility(new MillCardsControllerEffect(2), new ManaCostsImpl<>("{2}{G/U}{G/U}"));
ability.addEffect(new TasigurTheGoldenFangEffect());
this.addAbility(ability);
}

View file

@ -31,7 +31,7 @@ public final class TaskMageAssembly extends CardImpl {
this.addAbility(new TaskMageAssemblyStateTriggeredAbility());
// {2}: Task Mage Assembly deals 1 damage to target creature. Any player may activate this ability but only any time they could cast a sorcery.
ActivateAsSorceryActivatedAbility ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{2}"));
ActivateAsSorceryActivatedAbility ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{2}"));
ability.addTarget(new TargetCreaturePermanent());
ability.setMayActivate(TargetController.ANY);
ability.addEffect(new InfoEffect("Any player may activate this ability"));

View file

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

View file

@ -38,7 +38,7 @@ public final class TattermungeWitch extends CardImpl {
this.toughness = new MageInt(1);
// {R}{G}: Each blocked creature gets +1/+0 and gains trample until end of turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 0, Duration.EndOfTurn, filter, false).setText("each blocked creature gets +1/+0"), new ManaCostsImpl("{R}{G}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 0, Duration.EndOfTurn, filter, false).setText("each blocked creature gets +1/+0"), new ManaCostsImpl<>("{R}{G}"));
ability.addEffect(new GainAbilityAllEffect(TrampleAbility.getInstance(), Duration.EndOfTurn, filter, "and gains trample until end of turn"));
this.addAbility(ability);

View file

@ -50,7 +50,7 @@ public final class TawnosUrzasApprentice extends CardImpl {
this.addAbility(HasteAbility.getInstance());
// {U}{R}, {T}: Copy target activated or triggered ability you control from an artifact source. You may choose new targets for the copy.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TawnosUrzasApprenticeEffect(), new ManaCostsImpl("{U}{R}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TawnosUrzasApprenticeEffect(), new ManaCostsImpl<>("{U}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetActivatedOrTriggeredAbility(filter));
this.addAbility(ability);

View file

@ -44,7 +44,7 @@ public final class TawnossCoffin extends CardImpl {
this.addAbility(new SkipUntapOptionalAbility());
// {3}, {T}: Exile target creature and all Auras attached to it. Note the number and kind of counters that were on that creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TawnossCoffinEffect(), new TapSourceCost());
ability.addCost(new ManaCostsImpl("{3}"));
ability.addCost(new ManaCostsImpl<>("{3}"));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
//When Tawnos's Coffin leaves the battlefield or becomes untapped, return the exiled card to the battlefield under its owner's control tapped with the noted number and kind of counters on it, and if you do, return the exiled Aura cards to the battlefield under their owner's control attached to that permanent.

View file

@ -33,7 +33,7 @@ public final class TawnossWand extends CardImpl {
// {2}, {tap}: Target creature with power 2 or less is unblockable this turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CantBeBlockedTargetEffect(), new TapSourceCost());
ability.addCost(new ManaCostsImpl("{2}"));
ability.addCost(new ManaCostsImpl<>("{2}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
}

View file

@ -31,7 +31,7 @@ public final class TawnossWeaponry extends CardImpl {
// {2}, {tap}: Target creature gets +1/+1 for as long as Tawnos's Weaponry remains tapped.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ConditionalContinuousEffect(
new BoostTargetEffect(1, 1, Duration.Custom), SourceTappedCondition.TAPPED,
"target creature gets +1/+1 for as long as {this} remains tapped"), new ManaCostsImpl("{2}"));
"target creature gets +1/+1 for as long as {this} remains tapped"), new ManaCostsImpl<>("{2}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -39,7 +39,7 @@ public final class TectonicEdge extends CardImpl {
Ability ability = new ActivateIfConditionActivatedAbility(
Zone.BATTLEFIELD,
new DestroyTargetEffect(),
new ManaCostsImpl("{1}"),
new ManaCostsImpl<>("{1}"),
new OpponentControlsPermanentCondition(
new FilterLandPermanent("an opponent controls four or more lands"),
ComparisonType.MORE_THAN, 3));

View file

@ -27,7 +27,7 @@ public final class TectonicReformation extends CardImpl {
this.addAbility(new SimpleStaticAbility(new TectonicReformationEffect()));
// Cycling {2}
this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}")));
this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}")));
}
private TectonicReformation(final TectonicReformation card) {
@ -63,7 +63,7 @@ class TectonicReformationEffect extends ContinuousEffectImpl {
return false;
}
for (Card card : controller.getHand().getCards(StaticFilters.FILTER_CARD_LAND, game)) {
game.getState().addOtherAbility(card, new CyclingAbility(new ManaCostsImpl("{R}")));
game.getState().addOtherAbility(card, new CyclingAbility(new ManaCostsImpl<>("{R}")));
}
return true;
}

View file

@ -37,12 +37,12 @@ public final class TeferisCare extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{2}{W}");
// {W}, Sacrifice an enchantment: Destroy target enchantment.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{W}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{W}"));
ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(1, 1, filter, true)));
ability.addTarget(new TargetEnchantmentPermanent());
this.addAbility(ability);
// {3}{U}{U}: Counter target enchantment spell.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl("{3}{U}{U}"));
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl<>("{3}{U}{U}"));
ability.addTarget(new TargetSpell(filter2));
this.addAbility(ability);
}

View file

@ -30,7 +30,7 @@ public final class TeferisHonorGuard extends CardImpl {
this.addAbility(new FlankingAbility());
// {U}{U}: Teferi's Honor Guard phases out.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new PhaseOutSourceEffect(), new ManaCostsImpl("{U}{U}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new PhaseOutSourceEffect(), new ManaCostsImpl<>("{U}{U}")));
}
private TeferisHonorGuard(final TeferisHonorGuard card) {

View file

@ -28,7 +28,7 @@ public final class TeferisProtege extends CardImpl {
// {1}{U}, {T}: Draw a card, then discard a card.
Ability ability = new SimpleActivatedAbility(
new DrawDiscardControllerEffect(1, 1), new ManaCostsImpl("{1}{U}")
new DrawDiscardControllerEffect(1, 1), new ManaCostsImpl<>("{1}{U}")
);
ability.addCost(new TapSourceCost());
this.addAbility(ability);

View file

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

View file

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

View file

@ -21,7 +21,7 @@ public final class TelekineticBonds extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{U}{U}{U}");
// Whenever a player discards a card, you may pay {1}{U}. If you do, you may tap or untap target permanent.
Ability ability = new DiscardCardPlayerTriggeredAbility(new DoIfCostPaid(new MayTapOrUntapTargetEffect(), new ManaCostsImpl("{1}{U}")), false);
Ability ability = new DiscardCardPlayerTriggeredAbility(new DoIfCostPaid(new MayTapOrUntapTargetEffect(), new ManaCostsImpl<>("{1}{U}")), false);
ability.addTarget(new TargetPermanent());
this.addAbility(ability);

View file

@ -41,7 +41,7 @@ public final class Teleportal extends CardImpl {
this.getSpellAbility().addEffect(new CantBeBlockedTargetEffect());
// Overload {3}{U}{R} (You may cast this spell for its overload cost. If you do, change its text by replacing all instances of "target" with "each.")
OverloadAbility ability = new OverloadAbility(this, new BoostAllEffect(1, 0, Duration.EndOfTurn, filter, false), new ManaCostsImpl("{3}{U}{R}"));
OverloadAbility ability = new OverloadAbility(this, new BoostAllEffect(1, 0, Duration.EndOfTurn, filter, false), new ManaCostsImpl<>("{3}{U}{R}"));
ability.addEffect(new TeleportalEffect(filter));
this.addAbility(ability);
}

View file

@ -51,7 +51,7 @@ public final class TemmetVizierOfNaktamun extends CardImpl {
this.addAbility(ability);
// Embalm {3}{W}{U}
this.addAbility(new EmbalmAbility(new ManaCostsImpl("{3}{W}{U}"), this));
this.addAbility(new EmbalmAbility(new ManaCostsImpl<>("{3}{W}{U}"), this));
}
private TemmetVizierOfNaktamun(final TemmetVizierOfNaktamun card) {

View file

@ -32,7 +32,7 @@ public final class TemperedVeteran extends CardImpl {
// {W}, {T}: Put a +1/+1 counter on target creature with a +1/+1 counter on it.
Ability ability = new SimpleActivatedAbility(
new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl("{W}")
new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{W}")
);
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPermanent(StaticFilters.FILTER_CREATURE_P1P1));
@ -40,7 +40,7 @@ public final class TemperedVeteran extends CardImpl {
// {4}{W}{W}, {T}: Put a +1/+1 counter on target creature.
ability = new SimpleActivatedAbility(
new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl("{4}{W}{W}")
new AddCountersTargetEffect(CounterType.P1P1.createInstance()), new ManaCostsImpl<>("{4}{W}{W}")
);
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());

View file

@ -30,7 +30,7 @@ public final class TemporalAdept extends CardImpl {
this.toughness = new MageInt(1);
// {U}{U}{U}, {tap}: Return target permanent to its owner's hand.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ManaCostsImpl("{U}{U}{U}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ManaCostsImpl<>("{U}{U}{U}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPermanent());
this.addAbility(ability);

View file

@ -31,7 +31,7 @@ public final class TemporalAperture extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// {5}, {tap}: Shuffle your library, then reveal the top card. Until end of turn, for as long as that card remains on top of your library, play with the top card of your library revealed and you may play that card without paying its mana cost.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TemporalApertureEffect(), new ManaCostsImpl("{5}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TemporalApertureEffect(), new ManaCostsImpl<>("{5}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);

View file

@ -24,7 +24,7 @@ public final class TemporalMastery extends CardImpl {
this.getSpellAbility().addEffect(new ExileSpellEffect());
// Miracle {1}{U}
this.addAbility(new MiracleAbility(this, new ManaCostsImpl("{1}{U}")));
this.addAbility(new MiracleAbility(this, new ManaCostsImpl<>("{1}{U}")));
}
private TemporalMastery(final TemporalMastery card) {

View file

@ -31,7 +31,7 @@ public final class TemurBanner extends CardImpl {
this.addAbility(new RedManaAbility());
// {G}{U}{R}, {T}, Sacrifice Temur Banner: Draw a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{G}{U}{R}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{G}{U}{R}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);

View file

@ -37,7 +37,7 @@ public final class TemurSabertooth extends CardImpl {
this.toughness = new MageInt(3);
// {1}{G}: You may return another creature you control to its owner's hand. If you do, Temur Sabertooth gains indestructible until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TemurSabertoothEffect(), new ManaCostsImpl("{1}{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TemurSabertoothEffect(), new ManaCostsImpl<>("{1}{G}")));
}

View file

@ -28,7 +28,7 @@ public final class TenaciousDead extends CardImpl {
this.toughness = new MageInt(1);
// When Tenacious Dead dies, you may pay {1}{B}. If you do, return it to the battlefield tapped under its owner's control.
Effect effect = new DoIfCostPaid(new ReturnToBattlefieldUnderOwnerControlSourceEffect(true), new ManaCostsImpl("{1}{B}"));
Effect effect = new DoIfCostPaid(new ReturnToBattlefieldUnderOwnerControlSourceEffect(true), new ManaCostsImpl<>("{1}{B}"));
this.addAbility(new DiesSourceTriggeredAbility(effect, false));
}

View file

@ -36,7 +36,7 @@ public final class TenebTheHarvester extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// Whenever Teneb, the Harvester deals combat damage to a player, you may pay {2}{B}. If you do, put target creature card from a graveyard onto the battlefield under your control.
Ability ability = new DealsCombatDamageToAPlayerTriggeredAbility(
new DoIfCostPaid(new ReturnFromGraveyardToBattlefieldTargetEffect(), new ManaCostsImpl("{2}{B}")), false);
new DoIfCostPaid(new ReturnFromGraveyardToBattlefieldTargetEffect(), new ManaCostsImpl<>("{2}{B}")), false);
Target target = new TargetCardInGraveyard(new FilterCreatureCard("creature card from a graveyard"));
ability.addTarget(target);
this.addAbility(ability);

View file

@ -29,7 +29,7 @@ public final class Terminus extends CardImpl {
// Put all creatures on the bottom of their owners' libraries.
this.getSpellAbility().addEffect(new TerminusEffect());
// Miracle {W}
this.addAbility(new MiracleAbility(this, new ManaCostsImpl("{W}")));
this.addAbility(new MiracleAbility(this, new ManaCostsImpl<>("{W}")));
}
private Terminus(final Terminus card) {

View file

@ -28,7 +28,7 @@ public final class TerrainGenerator extends CardImpl {
// {2}, {T}: You may put a basic land card from your hand onto the battlefield tapped.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new PutCardFromHandOntoBattlefieldEffect(StaticFilters.FILTER_CARD_BASIC_LAND_A, false, true), new ManaCostsImpl("{2}"));
new PutCardFromHandOntoBattlefieldEffect(StaticFilters.FILTER_CARD_BASIC_LAND_A, false, true), new ManaCostsImpl<>("{2}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}

View file

@ -25,7 +25,7 @@ public final class TerrusWurm extends CardImpl {
this.toughness = new MageInt(5);
// Scavenge {6}{B} ({6}{B}, Exile this card from your graveyard: Put a number of +1/+1 counters equal to this card's power on target creature. Scavenge only as a sorcery.)
this.addAbility(new ScavengeAbility(new ManaCostsImpl("{6}{B}")));
this.addAbility(new ScavengeAbility(new ManaCostsImpl<>("{6}{B}")));
}
private TerrusWurm(final TerrusWurm card) {

View file

@ -49,7 +49,7 @@ public final class TetsuoUmezawa extends CardImpl {
// Tetsuo Umezawa can't be the target of Aura spells.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new TetsuoUmezawaEffect()));
// {U}{B}{B}{R}, {tap}: Destroy target tapped or blocking creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{U}{B}{B}{R}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{U}{B}{B}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(creatureFilter));
this.addAbility(ability);

View file

@ -45,7 +45,7 @@ public final class TetzimocPrimalDeath extends CardImpl {
this.addAbility(DeathtouchAbility.getInstance());
// {B}, Reveal Tetzimoc, Primal Death from your hand: Put a prey counter on target creature. Activate this ability only during your turn.
Ability ability = new ActivateIfConditionActivatedAbility(Zone.HAND, new AddCountersTargetEffect(CounterType.PREY.createInstance()), new ManaCostsImpl("{B}"), MyTurnCondition.instance);
Ability ability = new ActivateIfConditionActivatedAbility(Zone.HAND, new AddCountersTargetEffect(CounterType.PREY.createInstance()), new ManaCostsImpl<>("{B}"), MyTurnCondition.instance);
ability.addTarget(new TargetCreaturePermanent());
ability.addCost(new RevealSourceFromYourHandCost());
ability.addHint(MyTurnHint.instance);

View file

@ -48,7 +48,7 @@ public final class TezzeretsGatebreaker extends CardImpl {
StaticFilters.FILTER_CONTROLLED_CREATURES,
Duration.EndOfTurn
),
new ManaCostsImpl("{5}{U}")
new ManaCostsImpl<>("{5}{U}")
);
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());

View file

@ -29,7 +29,7 @@ public final class ThalakosMistfolk extends CardImpl {
// Shadow
this.addAbility(ShadowAbility.getInstance());
// {U}: Put Thalakos Mistfolk on top of its owner's library.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibrarySourceEffect(true), new ManaCostsImpl("{U}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new PutOnLibrarySourceEffect(true), new ManaCostsImpl<>("{U}")));
}
private ThalakosMistfolk(final ThalakosMistfolk card) {

View file

@ -67,7 +67,7 @@ public final class ThassaDeepDwelling extends CardImpl {
// {3}{U}: Tap another target creature.
ability = new SimpleActivatedAbility(
new TapTargetEffect("tap another target creature"), new ManaCostsImpl("{3}{U}")
new TapTargetEffect("tap another target creature"), new ManaCostsImpl<>("{3}{U}")
);
ability.addTarget(new TargetPermanent(filterAnother));
this.addAbility(ability);

View file

@ -46,7 +46,7 @@ public final class ThassaGodOfTheSea extends CardImpl {
// {1}{U}: Target creature you control can't be blocked this turn.
Ability ability = new SimpleActivatedAbility(
new CantBeBlockedTargetEffect(Duration.EndOfTurn), new ManaCostsImpl("{1}{U}")
new CantBeBlockedTargetEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{1}{U}")
);
ability.addTarget(new TargetControlledCreaturePermanent());
this.addAbility(ability);

View file

@ -23,7 +23,7 @@ public final class ThassasIre extends CardImpl {
// {3}{U}: You may tap or untap target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MayTapOrUntapTargetEffect(), new ManaCostsImpl("{3}{U}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MayTapOrUntapTargetEffect(), new ManaCostsImpl<>("{3}{U}"));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}

View file

@ -43,7 +43,7 @@ public final class TheBigIdea extends CardImpl {
this.toughness = new MageInt(4);
// {2}{B/R}{B/R}, {T}: Roll a six-sided dice. Create a number of 1/1 red Brainiac creature tokens equal to the result.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TheBigIdeaEffect(), new ManaCostsImpl("{2}{B/R}{B/R}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TheBigIdeaEffect(), new ManaCostsImpl<>("{2}{B/R}{B/R}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);

View file

@ -39,7 +39,7 @@ public final class TheBrute extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(1, 0)));
// {R}{R}{R}: Regenerate enchanted creature.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAttachedEffect(AttachmentType.AURA), new ManaCostsImpl("{R}{R}{R}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAttachedEffect(AttachmentType.AURA), new ManaCostsImpl<>("{R}{R}{R}")));
}
private TheBrute(final TheBrute card) {

View file

@ -48,7 +48,7 @@ public final class TheCauldronOfEternity extends CardImpl {
// {2}{B}, {T}, Pay 2 life: Return target creature card from your graveyard to the battlefield. Activate this ability only any time you could cast a sorcery.
ability = new ActivateAsSorceryActivatedAbility(
Zone.BATTLEFIELD, new ReturnFromGraveyardToBattlefieldTargetEffect(), new ManaCostsImpl("{2}{B}")
Zone.BATTLEFIELD, new ReturnFromGraveyardToBattlefieldTargetEffect(), new ManaCostsImpl<>("{2}{B}")
);
ability.addCost(new TapSourceCost());
ability.addCost(new PayLifeCost(2));

View file

@ -39,7 +39,7 @@ public final class TheChainVeil extends CardImpl {
// {4}, {T}: For each planeswalker you control, you may activate one of its loyalty abilities once this turn as though none of its loyalty abilities had been activated this turn.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new TheChainVeilIncreaseLoyaltyUseEffect(),
new ManaCostsImpl("{4}"));
new ManaCostsImpl<>("{4}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);

View file

@ -61,7 +61,7 @@ public final class TheCircleOfLoyalty extends CardImpl {
// {3}{W}, {T}: Create a 2/2 white Knight creature token with vigilance.
Ability ability = new SimpleActivatedAbility(
new CreateTokenEffect(new KnightToken()), new ManaCostsImpl("{3}{W}")
new CreateTokenEffect(new KnightToken()), new ManaCostsImpl<>("{3}{W}")
);
ability.addCost(new TapSourceCost());
this.addAbility(ability);

View file

@ -48,7 +48,7 @@ public final class TheLocustGod extends CardImpl {
this.addAbility(new DrawCardControllerTriggeredAbility(new CreateTokenEffect(new TheLocustGodInsectToken(), 1, false, false), false));
// {2}{U}{R}: Draw a card, then discard a card.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawDiscardControllerEffect(1, 1, false), new ManaCostsImpl("{2}{U}{R}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawDiscardControllerEffect(1, 1, false), new ManaCostsImpl<>("{2}{U}{R}"));
this.addAbility(ability);
// When The Locust God dies, return it to its owner's hand at the beginning of the next end step.

View file

@ -49,7 +49,7 @@ public final class TheScarabGod extends CardImpl {
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new TheScarabGodEffect(), TargetController.YOU, false));
// {2}{U}{B}: Exile target creature card from a graveyard. Create a token that's a copy of it, except it's a 4/4 black Zombie.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TheScarabGodEffect2(), new ManaCostsImpl("{2}{U}{B}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TheScarabGodEffect2(), new ManaCostsImpl<>("{2}{U}{B}"));
ability.addTarget(new TargetCardInGraveyard(1, 1, new FilterCreatureCard("creature card from a graveyard")));
this.addAbility(ability);

View file

@ -56,7 +56,7 @@ public final class TheScorpionGod extends CardImpl {
this.addAbility(new TheScorpionGodTriggeredAbility());
// {1}{B}{R}: Put a -1/-1 counter on another target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.M1M1.createInstance()), new ManaCostsImpl("{1}{B}{R}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.M1M1.createInstance()), new ManaCostsImpl<>("{1}{B}{R}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);

View file

@ -46,7 +46,7 @@ public final class TheloniteDruid extends CardImpl {
effect.getDependencyTypes().add(DependencyType.BecomeForest);
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
effect,
new ManaCostsImpl("{1}{G}"));
new ManaCostsImpl<>("{1}{G}"));
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
this.addAbility(ability);

View file

@ -42,7 +42,7 @@ public final class TheloniteHermit extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Duration.WhileOnBattlefield, filter, false)));
// Morph {3}{G}{G}
this.addAbility(new MorphAbility(new ManaCostsImpl("{3}{G}{G}")));
this.addAbility(new MorphAbility(new ManaCostsImpl<>("{3}{G}{G}")));
// When Thelonite Hermit is turned face up, create four 1/1 green Saproling creature tokens.
this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new CreateTokenEffect(new SaprolingToken(), 4)));

View file

@ -33,7 +33,7 @@ public final class ThelonsChant extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{G}{G}");
// At the beginning of your upkeep, sacrifice Thelon's Chant unless you pay {G}.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{G}")), TargetController.YOU, false));
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{G}")), TargetController.YOU, false));
// Whenever a player puts a Swamp onto the battlefield, Thelon's Chant deals 3 damage to that player unless they put a -1/-1 counter on a creature they control.
this.addAbility(new EntersBattlefieldAllTriggeredAbility(Zone.BATTLEFIELD, new ThelonsChantEffect(), filter, false, SetTargetPointer.PLAYER,

View file

@ -34,7 +34,7 @@ public final class ThermalDetonator extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{1}");
// {2}, Sacrifice Thermal Detonator: Thermal Detonator deals 2 damage to target creature without spaceflight or target player.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{2}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{2}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreatureOrPlayer(filter));
this.addAbility(ability);

View file

@ -37,7 +37,7 @@ public final class Thermopod extends CardImpl {
// {S}: Thermopod gains haste until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(
HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{S}")));
HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{S}")));
// Sacrifice a creature: Add {R}.
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(Mana.RedMana(1), CreaturesYouControlCount.instance),
new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT))));

View file

@ -34,7 +34,7 @@ public final class ThickSkinnedGoblin extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ThickSkinnedGoblinCostModificationEffect()));
// {R}: Thick-Skinned Goblin gains protection from red until end of turn.
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(ProtectionAbility.from(ObjectColor.RED), Duration.EndOfTurn), new ManaCostsImpl("{R}")));
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(ProtectionAbility.from(ObjectColor.RED), Duration.EndOfTurn), new ManaCostsImpl<>("{R}")));
}
private ThickSkinnedGoblin(final ThickSkinnedGoblin card) {

View file

@ -95,7 +95,7 @@ class ThievingAmalgamManifestEffect extends OneShotEffect {
if (card.isCreature(game)) {
manaCosts = card.getSpellAbility() != null ? card.getSpellAbility().getManaCosts() : null;
if (manaCosts == null) {
manaCosts = new ManaCostsImpl("{0}");
manaCosts = new ManaCostsImpl<>("{0}");
}
}
MageObjectReference objectReference = new MageObjectReference(card.getId(), card.getZoneChangeCounter(game) + 1, game);

View file

@ -24,7 +24,7 @@ public final class ThinkTwice extends CardImpl {
this.getSpellAbility().addEffect(new DrawCardSourceControllerEffect(1));
// Flashback {2}{U}
this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{2}{U}")));
this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{2}{U}")));
}
private ThinkTwice(final ThinkTwice card) {

View file

@ -41,7 +41,7 @@ public final class Thirst extends CardImpl {
// Enchanted creature doesn't untap during its controller's untap step.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new DontUntapInControllersUntapStepEnchantedEffect()));
// At the beginning of your upkeep, sacrifice Thirst unless you pay {U}.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{U}")),
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{U}")),
TargetController.YOU, false));
}

View file

@ -30,7 +30,7 @@ public final class ThirstingShade extends CardImpl {
// {2}{B}: Thirsting Shade gets +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(
new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{2}{B}")
new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{2}{B}")
));
}

View file

@ -54,7 +54,7 @@ public final class ThopterSquadron extends CardImpl {
this.addAbility(firstAbility);
// {1}, Sacrifice another Thopter: Put a +1/+1 counter on Thopter Squadron. Activate this secondAbility only any time you could cast a sorcery.
Ability secondAbility = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance(), true), new ManaCostsImpl("{1}"));
Ability secondAbility = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance(), true), new ManaCostsImpl<>("{1}"));
secondAbility.addCost(new SacrificeTargetCost(new TargetControlledPermanent(filter)));
this.addAbility(secondAbility);
}

View file

@ -38,7 +38,7 @@ public final class ThornLieutenant extends CardImpl {
// {5}{G}: Thorn Lieutenant gets +4/+4 until end of turn.
this.addAbility(new SimpleActivatedAbility(
new BoostSourceEffect(4, 4, Duration.EndOfTurn),
new ManaCostsImpl("{5}{G}")
new ManaCostsImpl<>("{5}{G}")
));
}

View file

@ -34,7 +34,7 @@ public final class ThornThrashViashino extends CardImpl {
this.addAbility(new DevourAbility(DevourFactor.Devour2));
// {G}: Thorn-Thrash Viashino gains trample until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn),new ManaCostsImpl("{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn),new ManaCostsImpl<>("{G}")));
}
private ThornThrashViashino(final ThornThrashViashino card) {

View file

@ -33,7 +33,7 @@ public final class Thornado extends CardImpl {
this.getSpellAbility().addTarget(new TargetPermanent(filter));
// Cycling {1}{G}
this.addAbility(new CyclingAbility(new ManaCostsImpl("{1}{G}")));
this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{1}{G}")));
}
private Thornado(final Thornado card) {

View file

@ -32,11 +32,11 @@ public final class Thornling extends CardImpl {
this.subtype.add(SubType.SHAPESHIFTER);
this.power = new MageInt(4);
this.toughness = new MageInt(4);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ManaCostsImpl("{1}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(-1, 1, Duration.EndOfTurn), new ManaCostsImpl("{1}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(HasteAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(IndestructibleAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, -1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(-1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}")));
}
private Thornling(final Thornling card) {

View file

@ -33,14 +33,14 @@ public final class ThornscapeApprentice extends CardImpl {
// {R}, {tap}: Target creature gains first strike until end of turn.
SimpleActivatedAbility ability1 = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new GainAbilityTargetEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn),
new ManaCostsImpl("{R}"));
new ManaCostsImpl<>("{R}"));
ability1.addCost(new TapSourceCost());
ability1.addTarget(new TargetCreaturePermanent());
this.addAbility(ability1);
// {W}, {tap}: Tap target creature.
SimpleActivatedAbility ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new TapTargetEffect(), new ManaCostsImpl("{W}"));
new TapTargetEffect(), new ManaCostsImpl<>("{W}"));
ability2.addCost(new TapSourceCost());
ability2.addTarget(new TargetCreaturePermanent());
this.addAbility(ability2);

View file

@ -33,14 +33,14 @@ public final class ThornscapeMaster extends CardImpl {
this.toughness = new MageInt(2);
// {R}{R}, {T}: Thornscape Master deals 2 damage to target creature.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{R}{R}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{R}{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
// {W}{W}, {T}: Target creature gains protection from the color of your choice until end of turn.
Effect effect = new GainProtectionFromColorTargetEffect(Duration.EndOfTurn);
effect.setText("Target creature gains protection from the color of your choice until end of turn.");
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{W}{W}"));
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{W}{W}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -33,7 +33,7 @@ public final class ThoughtcutterAgent extends CardImpl {
this.toughness = new MageInt(1);
// {U}{B}, {tap}: Target player loses 1 life and reveals their hand.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(1), new ManaCostsImpl("{U}{B}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(1), new ManaCostsImpl<>("{U}{B}"));
ability.addCost(new TapSourceCost());
Effect revealEffect = new RevealHandTargetEffect(TargetController.ANY);

View file

@ -39,7 +39,7 @@ public final class ThousandWinds extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// Morph {5}{U}{U}
this.addAbility(new MorphAbility(new ManaCostsImpl("{5}{U}{U}")));
this.addAbility(new MorphAbility(new ManaCostsImpl<>("{5}{U}{U}")));
// When Thousand Winds is turned face up, return all other tapped creatures to their owners' hands.
this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new ReturnToHandFromBattlefieldAllEffect(filter)));
}

View file

@ -36,7 +36,7 @@ public final class ThranTemporalGateway extends CardImpl {
new PutCardFromHandOntoBattlefieldEffect(filter)
.setText("You may put a historic permanent card from your hand onto the battlefield. "
+ "<i>(Artifacts, legendaries, and Sagas are historic.)</i>"),
new ManaCostsImpl("{4}"));
new ManaCostsImpl<>("{4}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}

View file

@ -29,7 +29,7 @@ public final class ThranTome extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{4}");
// Reveal the top three cards of your library. Target opponent chooses one of those cards. Put that card into your graveyard, then draw two cards.
Ability ability = new SimpleActivatedAbility(new ThranTomeEffect(), new ManaCostsImpl("{5}"));
Ability ability = new SimpleActivatedAbility(new ThranTomeEffect(), new ManaCostsImpl<>("{5}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}

View file

@ -32,7 +32,7 @@ public final class ThranWeaponry extends CardImpl {
this.addAbility(new SkipUntapOptionalAbility());
// {2}, {tap}: All creatures get +2/+2 for as long as Thran Weaponry remains tapped.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ThranWeaponryEffect(), new ManaCostsImpl("{2}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ThranWeaponryEffect(), new ManaCostsImpl<>("{2}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);

View file

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

View file

@ -31,7 +31,7 @@ public final class ThrashingMossdog extends CardImpl {
// Reach
this.addAbility(ReachAbility.getInstance());
// Scavenge {4}{G}{G}
this.addAbility(new ScavengeAbility(new ManaCostsImpl("{4}{G}{G}")));
this.addAbility(new ScavengeAbility(new ManaCostsImpl<>("{4}{G}{G}")));
}

View file

@ -26,7 +26,7 @@ public final class ThrashingWumpus extends CardImpl {
this.toughness = new MageInt(3);
// {B}: Thrashing Wumpus deals 1 damage to each creature and each player.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEverythingEffect(1), new ManaCostsImpl("{B}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEverythingEffect(1), new ManaCostsImpl<>("{B}")));
}
private ThrashingWumpus(final ThrashingWumpus card) {

View file

@ -25,7 +25,7 @@ public final class ThrillOfTheHunt extends CardImpl {
this.getSpellAbility().addEffect(new BoostTargetEffect(1, 2, Duration.EndOfTurn));
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
// Flashback {W}
this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{W}")));
this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{W}")));
}
private ThrillOfTheHunt(final ThrillOfTheHunt card) {

View file

@ -32,7 +32,7 @@ public final class ThrissNantukoPrimus extends CardImpl {
this.toughness = new MageInt(5);
//G}, {T}: Target creature gets +5/+5 until end of turn.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(5, 5, Duration.EndOfTurn), new ManaCostsImpl("{G}"));
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(5, 5, Duration.EndOfTurn), new ManaCostsImpl<>("{G}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);

View file

@ -39,7 +39,7 @@ public final class ThroughTheBreach extends CardImpl {
// You may put a creature card from your hand onto the battlefield. That creature gains haste. Sacrifice that creature at the beginning of the next end step.
this.getSpellAbility().addEffect(new ThroughTheBreachEffect());
// Splice onto Arcane {2}{R}{R}
this.addAbility(new SpliceOntoArcaneAbility(new ManaCostsImpl("{2}{R}{R}")));
this.addAbility(new SpliceOntoArcaneAbility(new ManaCostsImpl<>("{2}{R}{R}")));
}
private ThroughTheBreach(final ThroughTheBreach card) {

View file

@ -35,7 +35,7 @@ public final class ThrullSurgeon extends CardImpl {
this.toughness = new MageInt(1);
// {1}{B}, Sacrifice Thrull Surgeon: Look at target player's hand and choose a card from it. That player discards that card. Activate this ability only any time you could cast a sorcery.
Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new ThrullSurgeonEffect(), new ManaCostsImpl("{1}{B}"));
Ability ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new ThrullSurgeonEffect(), new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPlayer());
this.addAbility(ability);

View file

@ -41,7 +41,7 @@ public final class ThrullWizard extends CardImpl {
// {1}{B}: Counter target black spell unless that spell's controller pays {B} or {3}.
Cost cost = new OrCost("pay {B} or pay {3}", new ColoredManaCost(ColoredManaSymbol.B), new GenericManaCost(3));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterUnlessPaysEffect(cost), new ManaCostsImpl("{1}{B}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterUnlessPaysEffect(cost), new ManaCostsImpl<>("{1}{B}"));
ability.addTarget(new TargetSpell(filter));
this.addAbility(ability);
}

View file

@ -33,7 +33,7 @@ public final class ThrunTheLastTroll extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.ALL, new CantBeCounteredSourceEffect()));
this.addAbility(HexproofAbility.getInstance());
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{G}")));
}
private ThrunTheLastTroll(final ThrunTheLastTroll card) {

View file

@ -33,7 +33,7 @@ public final class ThunderTotem extends CardImpl {
this.addAbility(new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new BecomesCreatureSourceEffect(new ThunderTotemToken(), "", Duration.EndOfTurn),
new ManaCostsImpl("{1}{W}{W}")));
new ManaCostsImpl<>("{1}{W}{W}")));
}
private ThunderTotem(final ThunderTotem card) {

View file

@ -34,7 +34,7 @@ public final class ThunderWall extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {U}: Thunder Wall gets +1/+1 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{U}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{U}")));
}
private ThunderWall(final ThunderWall card) {

View file

@ -35,7 +35,7 @@ public final class ThunderbladeCharge extends CardImpl {
// if Thunderblade Charge is in your graveyard, you may pay {2}{R}{R}{R}.
// If you do, you may cast it without paying its mana cost.
this.addAbility(new DealCombatDamageControlledTriggeredAbility(Zone.GRAVEYARD,
new DoIfCostPaid(new ThunderbladeChargeCastEffect(), new ManaCostsImpl("{2}{R}{R}{R}"))
new DoIfCostPaid(new ThunderbladeChargeCastEffect(), new ManaCostsImpl<>("{2}{R}{R}{R}"))
.setText("if {this} is in your graveyard, you may pay {2}{R}{R}{R}. "
+ "If you do, you may cast it without paying its mana cost")));
}

View file

@ -44,12 +44,12 @@ public final class ThundercloudElemental extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {3}{U}: Tap all creatures with toughness 2 or less.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapAllEffect(toughnessFilter), new ManaCostsImpl("{3}{U}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TapAllEffect(toughnessFilter), new ManaCostsImpl<>("{3}{U}")));
// {3}{U}: All other creatures lose flying until end of turn.
Effect effect = new LoseAbilityAllEffect(FlyingAbility.getInstance(), Duration.EndOfTurn, flyingFilter);
effect.setText("All other creatures lose flying until end of turn");
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{3}{U}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{3}{U}")));
}

View file

@ -40,7 +40,7 @@ public final class ThunderingSpineback extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.WhileOnBattlefield, filter, true)));
// {5}{G}: Create a 3/3 green Dinosaur creature token with trample.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new DinosaurToken()), new ManaCostsImpl("{5}{G}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new DinosaurToken()), new ManaCostsImpl<>("{5}{G}")));
}
private ThunderingSpineback(final ThunderingSpineback card) {

View file

@ -25,7 +25,7 @@ public final class ThunderousWrath extends CardImpl {
this.getSpellAbility().addTarget(new TargetAnyTarget());
// Miracle {R}
this.addAbility(new MiracleAbility(this, new ManaCostsImpl("{R}")));
this.addAbility(new MiracleAbility(this, new ManaCostsImpl<>("{R}")));
}
private ThunderousWrath(final ThunderousWrath card) {

View file

@ -33,13 +33,13 @@ public final class ThunderscapeMaster extends CardImpl {
this.toughness = new MageInt(2);
// {B}{B}, {tap}: Target player loses 2 life and you gain 2 life.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(2), new ManaCostsImpl("{B}{B}"));
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LoseLifeTargetEffect(2), new ManaCostsImpl<>("{B}{B}"));
ability.addEffect(new GainLifeEffect(2).setText("and you gain 2 life"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
// {G}{G}, {tap}: Creatures you control get +2/+2 until end of turn.
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{G}{G}"));
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{G}{G}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}

View file

@ -35,7 +35,7 @@ public final class TibaltsRager extends CardImpl {
// {1}{R}: Tibalt's Rager gets +2/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(
new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl("{1}{R}")
new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}")
));
}

View file

@ -34,10 +34,10 @@ public final class TidalControl extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{U}{U}");
// Cumulative upkeep-Pay {2}.
this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl("{2}")));
this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl<>("{2}")));
// Pay 2 life or {2}: Counter target red or green spell. Any player may activate this ability.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new OrCost("pay 2 life or pay {2}", new PayLifeCost(2), new ManaCostsImpl("{2}")));
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new OrCost("pay 2 life or pay {2}", new PayLifeCost(2), new ManaCostsImpl<>("{2}")));
ability.addTarget(new TargetSpell(filter));
ability.setMayActivate(TargetController.ANY);
ability.addEffect(new InfoEffect("Any player may activate this ability"));

View file

@ -39,7 +39,7 @@ public final class TidalCourier extends CardImpl {
this.addAbility(new EntersBattlefieldTriggeredAbility(new RevealLibraryPutIntoHandEffect(4, filter, Zone.LIBRARY)));
// {3}{U}: Tidal Courier gains flying until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FlyingAbility.getInstance(),
Duration.EndOfTurn), new ManaCostsImpl("{3}{U}")));
Duration.EndOfTurn), new ManaCostsImpl<>("{3}{U}")));
}
private TidalCourier(final TidalCourier card) {

View file

@ -38,7 +38,7 @@ public final class TidalFlats extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{U}");
// {U}{U}: For each attacking creature without flying, its controller may pay {1}. If they don't, creatures you control blocking that creature gain first strike until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TidalFlatsEffect(), new ManaCostsImpl("{U}{U}")));
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new TidalFlatsEffect(), new ManaCostsImpl<>("{U}{U}")));
}
private TidalFlats(final TidalFlats card) {
@ -83,7 +83,7 @@ class TidalFlatsEffect extends OneShotEffect {
if (player == null) {
return false;
}
Cost cost = new ManaCostsImpl("{1}");
Cost cost = new ManaCostsImpl<>("{1}");
List<Permanent> affectedPermanents = new ArrayList<>();
for (Permanent permanent : game.getState().getBattlefield().getAllActivePermanents(filter, player.getId(), game)) {
cost.clearPaid();

View file

@ -38,7 +38,7 @@ public final class TidewaterMinion extends CardImpl {
this.addAbility(new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new LoseAbilitySourceEffect(DefenderAbility.getInstance(), Duration.EndOfTurn),
new ManaCostsImpl("{4}")));
new ManaCostsImpl<>("{4}")));
// {tap}: Untap target permanent.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new UntapTargetEffect(), new TapSourceCost());

View file

@ -76,7 +76,7 @@ class TilonallisSummonerEffect extends OneShotEffect {
public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
if (controller != null) {
ManaCosts cost = new ManaCostsImpl("{X}{R}");
ManaCosts cost = new ManaCostsImpl<>("{X}{R}");
if (controller.chooseUse(outcome, "Pay " + cost.getText() + "? If you do, you create X 1/1 red Elemental creature tokens that are tapped and attacking.", source, game)) {
int costX = controller.announceXMana(0, Integer.MAX_VALUE, "Announce the value for {X}", game, source);
cost.add(new GenericManaCost(costX));

View file

@ -48,7 +48,7 @@ public final class TimeElemental extends CardImpl {
this.addAbility(new AttacksOrBlocksTriggeredAbility(new CreateDelayedTriggeredAbilityEffect(ability, true), false));
// {2}{U}{U}, {tap}: Return target permanent that isn't enchanted to its owner's hand.
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ManaCostsImpl("{2}{U}{U}"));
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ManaCostsImpl<>("{2}{U}{U}"));
ability2.addCost(new TapSourceCost());
ability2.addTarget(new TargetPermanent(filter));
this.addAbility(ability2);

View file

@ -41,7 +41,7 @@ public final class Timebender extends CardImpl {
this.toughness = new MageInt(1);
// Morph {U}
this.addAbility(new MorphAbility(new ManaCostsImpl("{U}")));
this.addAbility(new MorphAbility(new ManaCostsImpl<>("{U}")));
// When Timebender is turned face up, choose one
// Remove two time counters from target permanent or suspended card.

View file

@ -38,7 +38,7 @@ public final class TimestreamNavigator extends CardImpl {
// {2}{U}{U}, {T}, Put Timestream Navigator on the bottom of its owner's library: Take an extra turn after this one. Activate this ability only if you have the city's blessing.
Ability ability = new ConditionalActivatedAbility(Zone.BATTLEFIELD,
new AddExtraTurnControllerEffect(),
new ManaCostsImpl("{2}{U}{U}"),
new ManaCostsImpl<>("{2}{U}{U}"),
CitysBlessingCondition.instance);
ability.addCost(new TapSourceCost());
ability.addCost(new PutSourceOnBottomOwnerLibraryCost());

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