diff --git a/Mage.Sets/src/mage/cards/t/TahCropSkirmisher.java b/Mage.Sets/src/mage/cards/t/TahCropSkirmisher.java
index 7d9f2d9f81..51071bc5ed 100644
--- a/Mage.Sets/src/mage/cards/t/TahCropSkirmisher.java
+++ b/Mage.Sets/src/mage/cards/t/TahCropSkirmisher.java
@@ -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));
}
diff --git a/Mage.Sets/src/mage/cards/t/TahngarthTalruumHero.java b/Mage.Sets/src/mage/cards/t/TahngarthTalruumHero.java
index 4cec1369fe..cbc4b4dd67 100644
--- a/Mage.Sets/src/mage/cards/t/TahngarthTalruumHero.java
+++ b/Mage.Sets/src/mage/cards/t/TahngarthTalruumHero.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TajicLegionsEdge.java b/Mage.Sets/src/mage/cards/t/TajicLegionsEdge.java
index 6f4eb03c20..57e8595048 100644
--- a/Mage.Sets/src/mage/cards/t/TajicLegionsEdge.java
+++ b/Mage.Sets/src/mage/cards/t/TajicLegionsEdge.java
@@ -62,7 +62,7 @@ public final class TajicLegionsEdge extends CardImpl {
new GainAbilitySourceEffect(
FirstStrikeAbility.getInstance(),
Duration.EndOfTurn
- ), new ManaCostsImpl("{R}{W}")
+ ), new ManaCostsImpl<>("{R}{W}")
));
}
diff --git a/Mage.Sets/src/mage/cards/t/TalonOfPain.java b/Mage.Sets/src/mage/cards/t/TalonOfPain.java
index 47d58afe26..a49f7c57b2 100644
--- a/Mage.Sets/src/mage/cards/t/TalonOfPain.java
+++ b/Mage.Sets/src/mage/cards/t/TalonOfPain.java
@@ -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());
diff --git a/Mage.Sets/src/mage/cards/t/Talonrend.java b/Mage.Sets/src/mage/cards/t/Talonrend.java
index e078f19754..ad181db0e2 100644
--- a/Mage.Sets/src/mage/cards/t/Talonrend.java
+++ b/Mage.Sets/src/mage/cards/t/Talonrend.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TalonsOfFalkenrath.java b/Mage.Sets/src/mage/cards/t/TalonsOfFalkenrath.java
index c085bf6833..42842165f2 100644
--- a/Mage.Sets/src/mage/cards/t/TalonsOfFalkenrath.java
+++ b/Mage.Sets/src/mage/cards/t/TalonsOfFalkenrath.java
@@ -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)));
}
diff --git a/Mage.Sets/src/mage/cards/t/TalonsOfWildwood.java b/Mage.Sets/src/mage/cards/t/TalonsOfWildwood.java
index 8986bc1d68..2f95b45a14 100644
--- a/Mage.Sets/src/mage/cards/t/TalonsOfWildwood.java
+++ b/Mage.Sets/src/mage/cards/t/TalonsOfWildwood.java
@@ -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}")
));
}
diff --git a/Mage.Sets/src/mage/cards/t/TangleAngler.java b/Mage.Sets/src/mage/cards/t/TangleAngler.java
index 923170315f..312f301427 100644
--- a/Mage.Sets/src/mage/cards/t/TangleAngler.java
+++ b/Mage.Sets/src/mage/cards/t/TangleAngler.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/TangleHulk.java b/Mage.Sets/src/mage/cards/t/TangleHulk.java
index b07d14d693..99f9e8a94c 100644
--- a/Mage.Sets/src/mage/cards/t/TangleHulk.java
+++ b/Mage.Sets/src/mage/cards/t/TangleHulk.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TasigurTheGoldenFang.java b/Mage.Sets/src/mage/cards/t/TasigurTheGoldenFang.java
index ff96c8e499..55f3f95c11 100644
--- a/Mage.Sets/src/mage/cards/t/TasigurTheGoldenFang.java
+++ b/Mage.Sets/src/mage/cards/t/TasigurTheGoldenFang.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/TaskMageAssembly.java b/Mage.Sets/src/mage/cards/t/TaskMageAssembly.java
index 416b91bc35..07e8c9cb28 100644
--- a/Mage.Sets/src/mage/cards/t/TaskMageAssembly.java
+++ b/Mage.Sets/src/mage/cards/t/TaskMageAssembly.java
@@ -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"));
diff --git a/Mage.Sets/src/mage/cards/t/TatteredDrake.java b/Mage.Sets/src/mage/cards/t/TatteredDrake.java
index 31fac76f38..52fd52a8c4 100644
--- a/Mage.Sets/src/mage/cards/t/TatteredDrake.java
+++ b/Mage.Sets/src/mage/cards/t/TatteredDrake.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TattermungeWitch.java b/Mage.Sets/src/mage/cards/t/TattermungeWitch.java
index e1521f1b75..6983c45694 100644
--- a/Mage.Sets/src/mage/cards/t/TattermungeWitch.java
+++ b/Mage.Sets/src/mage/cards/t/TattermungeWitch.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TawnosUrzasApprentice.java b/Mage.Sets/src/mage/cards/t/TawnosUrzasApprentice.java
index 0e3fe8681a..670222b322 100644
--- a/Mage.Sets/src/mage/cards/t/TawnosUrzasApprentice.java
+++ b/Mage.Sets/src/mage/cards/t/TawnosUrzasApprentice.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TawnossCoffin.java b/Mage.Sets/src/mage/cards/t/TawnossCoffin.java
index c96299aa94..3ce697ab8a 100644
--- a/Mage.Sets/src/mage/cards/t/TawnossCoffin.java
+++ b/Mage.Sets/src/mage/cards/t/TawnossCoffin.java
@@ -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.
diff --git a/Mage.Sets/src/mage/cards/t/TawnossWand.java b/Mage.Sets/src/mage/cards/t/TawnossWand.java
index b0a7c9f05d..b7852d9e4d 100644
--- a/Mage.Sets/src/mage/cards/t/TawnossWand.java
+++ b/Mage.Sets/src/mage/cards/t/TawnossWand.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/TawnossWeaponry.java b/Mage.Sets/src/mage/cards/t/TawnossWeaponry.java
index bf91e99305..1ca1009206 100644
--- a/Mage.Sets/src/mage/cards/t/TawnossWeaponry.java
+++ b/Mage.Sets/src/mage/cards/t/TawnossWeaponry.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TectonicEdge.java b/Mage.Sets/src/mage/cards/t/TectonicEdge.java
index 7169132472..21b1a43df2 100644
--- a/Mage.Sets/src/mage/cards/t/TectonicEdge.java
+++ b/Mage.Sets/src/mage/cards/t/TectonicEdge.java
@@ -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));
diff --git a/Mage.Sets/src/mage/cards/t/TectonicReformation.java b/Mage.Sets/src/mage/cards/t/TectonicReformation.java
index b30837e192..dfe5bfea11 100644
--- a/Mage.Sets/src/mage/cards/t/TectonicReformation.java
+++ b/Mage.Sets/src/mage/cards/t/TectonicReformation.java
@@ -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;
}
diff --git a/Mage.Sets/src/mage/cards/t/TeferisCare.java b/Mage.Sets/src/mage/cards/t/TeferisCare.java
index b7c5de788c..4cf7414b44 100644
--- a/Mage.Sets/src/mage/cards/t/TeferisCare.java
+++ b/Mage.Sets/src/mage/cards/t/TeferisCare.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/TeferisHonorGuard.java b/Mage.Sets/src/mage/cards/t/TeferisHonorGuard.java
index 1c38b8ea53..ac64fb97e0 100644
--- a/Mage.Sets/src/mage/cards/t/TeferisHonorGuard.java
+++ b/Mage.Sets/src/mage/cards/t/TeferisHonorGuard.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TeferisProtege.java b/Mage.Sets/src/mage/cards/t/TeferisProtege.java
index cf392d9350..238bbb4b96 100644
--- a/Mage.Sets/src/mage/cards/t/TeferisProtege.java
+++ b/Mage.Sets/src/mage/cards/t/TeferisProtege.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TelJiladExile.java b/Mage.Sets/src/mage/cards/t/TelJiladExile.java
index c0faf21a07..6b4b514608 100644
--- a/Mage.Sets/src/mage/cards/t/TelJiladExile.java
+++ b/Mage.Sets/src/mage/cards/t/TelJiladExile.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TelJiladLifebreather.java b/Mage.Sets/src/mage/cards/t/TelJiladLifebreather.java
index a27457e31e..5b96f77dcd 100644
--- a/Mage.Sets/src/mage/cards/t/TelJiladLifebreather.java
+++ b/Mage.Sets/src/mage/cards/t/TelJiladLifebreather.java
@@ -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());
diff --git a/Mage.Sets/src/mage/cards/t/TelekineticBonds.java b/Mage.Sets/src/mage/cards/t/TelekineticBonds.java
index b914687f8f..f4a037626e 100644
--- a/Mage.Sets/src/mage/cards/t/TelekineticBonds.java
+++ b/Mage.Sets/src/mage/cards/t/TelekineticBonds.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/Teleportal.java b/Mage.Sets/src/mage/cards/t/Teleportal.java
index 8e30b1ea4d..201f6c010f 100644
--- a/Mage.Sets/src/mage/cards/t/Teleportal.java
+++ b/Mage.Sets/src/mage/cards/t/Teleportal.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/TemmetVizierOfNaktamun.java b/Mage.Sets/src/mage/cards/t/TemmetVizierOfNaktamun.java
index 9aed56cd6c..1536548d23 100644
--- a/Mage.Sets/src/mage/cards/t/TemmetVizierOfNaktamun.java
+++ b/Mage.Sets/src/mage/cards/t/TemmetVizierOfNaktamun.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TemperedVeteran.java b/Mage.Sets/src/mage/cards/t/TemperedVeteran.java
index f4b6b68f81..2dd2e15540 100644
--- a/Mage.Sets/src/mage/cards/t/TemperedVeteran.java
+++ b/Mage.Sets/src/mage/cards/t/TemperedVeteran.java
@@ -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());
diff --git a/Mage.Sets/src/mage/cards/t/TemporalAdept.java b/Mage.Sets/src/mage/cards/t/TemporalAdept.java
index 540f253cc7..eaad47f794 100644
--- a/Mage.Sets/src/mage/cards/t/TemporalAdept.java
+++ b/Mage.Sets/src/mage/cards/t/TemporalAdept.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TemporalAperture.java b/Mage.Sets/src/mage/cards/t/TemporalAperture.java
index 5e4b74f6f7..1dc6a28d32 100644
--- a/Mage.Sets/src/mage/cards/t/TemporalAperture.java
+++ b/Mage.Sets/src/mage/cards/t/TemporalAperture.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TemporalMastery.java b/Mage.Sets/src/mage/cards/t/TemporalMastery.java
index 444cfff28f..c4569461a2 100644
--- a/Mage.Sets/src/mage/cards/t/TemporalMastery.java
+++ b/Mage.Sets/src/mage/cards/t/TemporalMastery.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TemurBanner.java b/Mage.Sets/src/mage/cards/t/TemurBanner.java
index fd9f6b196e..2ba92e8d33 100644
--- a/Mage.Sets/src/mage/cards/t/TemurBanner.java
+++ b/Mage.Sets/src/mage/cards/t/TemurBanner.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TemurSabertooth.java b/Mage.Sets/src/mage/cards/t/TemurSabertooth.java
index d92e8faa54..820dc95629 100644
--- a/Mage.Sets/src/mage/cards/t/TemurSabertooth.java
+++ b/Mage.Sets/src/mage/cards/t/TemurSabertooth.java
@@ -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}")));
}
diff --git a/Mage.Sets/src/mage/cards/t/TenaciousDead.java b/Mage.Sets/src/mage/cards/t/TenaciousDead.java
index 8fc7dcf21c..449e31f9bc 100644
--- a/Mage.Sets/src/mage/cards/t/TenaciousDead.java
+++ b/Mage.Sets/src/mage/cards/t/TenaciousDead.java
@@ -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));
}
diff --git a/Mage.Sets/src/mage/cards/t/TenebTheHarvester.java b/Mage.Sets/src/mage/cards/t/TenebTheHarvester.java
index 28ec14b9b9..c60c2557b5 100644
--- a/Mage.Sets/src/mage/cards/t/TenebTheHarvester.java
+++ b/Mage.Sets/src/mage/cards/t/TenebTheHarvester.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/Terminus.java b/Mage.Sets/src/mage/cards/t/Terminus.java
index 87a06e7b08..5935ada548 100644
--- a/Mage.Sets/src/mage/cards/t/Terminus.java
+++ b/Mage.Sets/src/mage/cards/t/Terminus.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TerrainGenerator.java b/Mage.Sets/src/mage/cards/t/TerrainGenerator.java
index 9fa8a4ff90..ec84d32346 100644
--- a/Mage.Sets/src/mage/cards/t/TerrainGenerator.java
+++ b/Mage.Sets/src/mage/cards/t/TerrainGenerator.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/TerrusWurm.java b/Mage.Sets/src/mage/cards/t/TerrusWurm.java
index 01f75a2a02..2e10e84b0c 100644
--- a/Mage.Sets/src/mage/cards/t/TerrusWurm.java
+++ b/Mage.Sets/src/mage/cards/t/TerrusWurm.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java b/Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java
index 1ef56a097c..d44b5208aa 100644
--- a/Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java
+++ b/Mage.Sets/src/mage/cards/t/TetsuoUmezawa.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TetzimocPrimalDeath.java b/Mage.Sets/src/mage/cards/t/TetzimocPrimalDeath.java
index 86196314df..a2033e0155 100644
--- a/Mage.Sets/src/mage/cards/t/TetzimocPrimalDeath.java
+++ b/Mage.Sets/src/mage/cards/t/TetzimocPrimalDeath.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java b/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java
index cc18ad958e..bb256ce107 100644
--- a/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java
+++ b/Mage.Sets/src/mage/cards/t/TezzeretsGatebreaker.java
@@ -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());
diff --git a/Mage.Sets/src/mage/cards/t/ThalakosMistfolk.java b/Mage.Sets/src/mage/cards/t/ThalakosMistfolk.java
index d25812d05b..f1391609d9 100644
--- a/Mage.Sets/src/mage/cards/t/ThalakosMistfolk.java
+++ b/Mage.Sets/src/mage/cards/t/ThalakosMistfolk.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThassaDeepDwelling.java b/Mage.Sets/src/mage/cards/t/ThassaDeepDwelling.java
index ae5f1f1f4d..674257bff9 100644
--- a/Mage.Sets/src/mage/cards/t/ThassaDeepDwelling.java
+++ b/Mage.Sets/src/mage/cards/t/ThassaDeepDwelling.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThassaGodOfTheSea.java b/Mage.Sets/src/mage/cards/t/ThassaGodOfTheSea.java
index d9b66b2fc6..33592fa59b 100644
--- a/Mage.Sets/src/mage/cards/t/ThassaGodOfTheSea.java
+++ b/Mage.Sets/src/mage/cards/t/ThassaGodOfTheSea.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThassasIre.java b/Mage.Sets/src/mage/cards/t/ThassasIre.java
index 365c72c2c7..fa55fde68c 100644
--- a/Mage.Sets/src/mage/cards/t/ThassasIre.java
+++ b/Mage.Sets/src/mage/cards/t/ThassasIre.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/TheBigIdea.java b/Mage.Sets/src/mage/cards/t/TheBigIdea.java
index 06678e915b..8ab12ec961 100644
--- a/Mage.Sets/src/mage/cards/t/TheBigIdea.java
+++ b/Mage.Sets/src/mage/cards/t/TheBigIdea.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TheBrute.java b/Mage.Sets/src/mage/cards/t/TheBrute.java
index 87bb7927b3..3ad37eb408 100644
--- a/Mage.Sets/src/mage/cards/t/TheBrute.java
+++ b/Mage.Sets/src/mage/cards/t/TheBrute.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TheCauldronOfEternity.java b/Mage.Sets/src/mage/cards/t/TheCauldronOfEternity.java
index a1d627c1de..4941bbb71a 100644
--- a/Mage.Sets/src/mage/cards/t/TheCauldronOfEternity.java
+++ b/Mage.Sets/src/mage/cards/t/TheCauldronOfEternity.java
@@ -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));
diff --git a/Mage.Sets/src/mage/cards/t/TheChainVeil.java b/Mage.Sets/src/mage/cards/t/TheChainVeil.java
index 341386a6a5..01ffec7138 100644
--- a/Mage.Sets/src/mage/cards/t/TheChainVeil.java
+++ b/Mage.Sets/src/mage/cards/t/TheChainVeil.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TheCircleOfLoyalty.java b/Mage.Sets/src/mage/cards/t/TheCircleOfLoyalty.java
index 6acd774073..fb0adc9b18 100644
--- a/Mage.Sets/src/mage/cards/t/TheCircleOfLoyalty.java
+++ b/Mage.Sets/src/mage/cards/t/TheCircleOfLoyalty.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TheLocustGod.java b/Mage.Sets/src/mage/cards/t/TheLocustGod.java
index 3a958cb301..74e59645d0 100644
--- a/Mage.Sets/src/mage/cards/t/TheLocustGod.java
+++ b/Mage.Sets/src/mage/cards/t/TheLocustGod.java
@@ -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.
diff --git a/Mage.Sets/src/mage/cards/t/TheScarabGod.java b/Mage.Sets/src/mage/cards/t/TheScarabGod.java
index 4d873c822a..0bf88907da 100644
--- a/Mage.Sets/src/mage/cards/t/TheScarabGod.java
+++ b/Mage.Sets/src/mage/cards/t/TheScarabGod.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TheScorpionGod.java b/Mage.Sets/src/mage/cards/t/TheScorpionGod.java
index d994b58d3d..678a8f7efd 100644
--- a/Mage.Sets/src/mage/cards/t/TheScorpionGod.java
+++ b/Mage.Sets/src/mage/cards/t/TheScorpionGod.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TheloniteDruid.java b/Mage.Sets/src/mage/cards/t/TheloniteDruid.java
index b0e4f92e09..29e15754ac 100644
--- a/Mage.Sets/src/mage/cards/t/TheloniteDruid.java
+++ b/Mage.Sets/src/mage/cards/t/TheloniteDruid.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/TheloniteHermit.java b/Mage.Sets/src/mage/cards/t/TheloniteHermit.java
index 1460dbc320..e9eb5dbaaa 100644
--- a/Mage.Sets/src/mage/cards/t/TheloniteHermit.java
+++ b/Mage.Sets/src/mage/cards/t/TheloniteHermit.java
@@ -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)));
diff --git a/Mage.Sets/src/mage/cards/t/ThelonsChant.java b/Mage.Sets/src/mage/cards/t/ThelonsChant.java
index ea959e1838..bdc4314eb7 100644
--- a/Mage.Sets/src/mage/cards/t/ThelonsChant.java
+++ b/Mage.Sets/src/mage/cards/t/ThelonsChant.java
@@ -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,
diff --git a/Mage.Sets/src/mage/cards/t/ThermalDetonator.java b/Mage.Sets/src/mage/cards/t/ThermalDetonator.java
index 30e5fc12c5..090982519b 100644
--- a/Mage.Sets/src/mage/cards/t/ThermalDetonator.java
+++ b/Mage.Sets/src/mage/cards/t/ThermalDetonator.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/Thermopod.java b/Mage.Sets/src/mage/cards/t/Thermopod.java
index ac8c86dc38..3d6ba5a758 100644
--- a/Mage.Sets/src/mage/cards/t/Thermopod.java
+++ b/Mage.Sets/src/mage/cards/t/Thermopod.java
@@ -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))));
diff --git a/Mage.Sets/src/mage/cards/t/ThickSkinnedGoblin.java b/Mage.Sets/src/mage/cards/t/ThickSkinnedGoblin.java
index 6c665e4c81..a0e6f4f006 100644
--- a/Mage.Sets/src/mage/cards/t/ThickSkinnedGoblin.java
+++ b/Mage.Sets/src/mage/cards/t/ThickSkinnedGoblin.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThievingAmalgam.java b/Mage.Sets/src/mage/cards/t/ThievingAmalgam.java
index 23ae3c69f1..4c38a68ec5 100644
--- a/Mage.Sets/src/mage/cards/t/ThievingAmalgam.java
+++ b/Mage.Sets/src/mage/cards/t/ThievingAmalgam.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThinkTwice.java b/Mage.Sets/src/mage/cards/t/ThinkTwice.java
index 093263187e..53a4550d6b 100644
--- a/Mage.Sets/src/mage/cards/t/ThinkTwice.java
+++ b/Mage.Sets/src/mage/cards/t/ThinkTwice.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/Thirst.java b/Mage.Sets/src/mage/cards/t/Thirst.java
index 2efa29a556..f3ea8ae7f5 100644
--- a/Mage.Sets/src/mage/cards/t/Thirst.java
+++ b/Mage.Sets/src/mage/cards/t/Thirst.java
@@ -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));
}
diff --git a/Mage.Sets/src/mage/cards/t/ThirstingShade.java b/Mage.Sets/src/mage/cards/t/ThirstingShade.java
index 4bc4ae12c0..6677795311 100644
--- a/Mage.Sets/src/mage/cards/t/ThirstingShade.java
+++ b/Mage.Sets/src/mage/cards/t/ThirstingShade.java
@@ -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}")
));
}
diff --git a/Mage.Sets/src/mage/cards/t/ThopterSquadron.java b/Mage.Sets/src/mage/cards/t/ThopterSquadron.java
index 5020ada93e..e1e5f97091 100644
--- a/Mage.Sets/src/mage/cards/t/ThopterSquadron.java
+++ b/Mage.Sets/src/mage/cards/t/ThopterSquadron.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/ThornLieutenant.java b/Mage.Sets/src/mage/cards/t/ThornLieutenant.java
index 6c53e67587..df2f20406f 100644
--- a/Mage.Sets/src/mage/cards/t/ThornLieutenant.java
+++ b/Mage.Sets/src/mage/cards/t/ThornLieutenant.java
@@ -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}")
));
}
diff --git a/Mage.Sets/src/mage/cards/t/ThornThrashViashino.java b/Mage.Sets/src/mage/cards/t/ThornThrashViashino.java
index f651de90e0..4adcf3c75b 100644
--- a/Mage.Sets/src/mage/cards/t/ThornThrashViashino.java
+++ b/Mage.Sets/src/mage/cards/t/ThornThrashViashino.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/Thornado.java b/Mage.Sets/src/mage/cards/t/Thornado.java
index 10a5923a00..e730a192c8 100644
--- a/Mage.Sets/src/mage/cards/t/Thornado.java
+++ b/Mage.Sets/src/mage/cards/t/Thornado.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/Thornling.java b/Mage.Sets/src/mage/cards/t/Thornling.java
index 1972ba299f..94b65e2a2b 100644
--- a/Mage.Sets/src/mage/cards/t/Thornling.java
+++ b/Mage.Sets/src/mage/cards/t/Thornling.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThornscapeApprentice.java b/Mage.Sets/src/mage/cards/t/ThornscapeApprentice.java
index 081f08df17..18768412e5 100644
--- a/Mage.Sets/src/mage/cards/t/ThornscapeApprentice.java
+++ b/Mage.Sets/src/mage/cards/t/ThornscapeApprentice.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThornscapeMaster.java b/Mage.Sets/src/mage/cards/t/ThornscapeMaster.java
index c04b14121a..0d339ea3cb 100644
--- a/Mage.Sets/src/mage/cards/t/ThornscapeMaster.java
+++ b/Mage.Sets/src/mage/cards/t/ThornscapeMaster.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThoughtcutterAgent.java b/Mage.Sets/src/mage/cards/t/ThoughtcutterAgent.java
index 70e68f0668..2cc35a2252 100644
--- a/Mage.Sets/src/mage/cards/t/ThoughtcutterAgent.java
+++ b/Mage.Sets/src/mage/cards/t/ThoughtcutterAgent.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThousandWinds.java b/Mage.Sets/src/mage/cards/t/ThousandWinds.java
index d47f697661..239d7c14a9 100644
--- a/Mage.Sets/src/mage/cards/t/ThousandWinds.java
+++ b/Mage.Sets/src/mage/cards/t/ThousandWinds.java
@@ -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)));
}
diff --git a/Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java b/Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java
index 90c077d026..7f3b8ae3dd 100644
--- a/Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java
+++ b/Mage.Sets/src/mage/cards/t/ThranTemporalGateway.java
@@ -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. "
+ "(Artifacts, legendaries, and Sagas are historic.)"),
- new ManaCostsImpl("{4}"));
+ new ManaCostsImpl<>("{4}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/ThranTome.java b/Mage.Sets/src/mage/cards/t/ThranTome.java
index 1452548854..4dd2ae0341 100644
--- a/Mage.Sets/src/mage/cards/t/ThranTome.java
+++ b/Mage.Sets/src/mage/cards/t/ThranTome.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/ThranWeaponry.java b/Mage.Sets/src/mage/cards/t/ThranWeaponry.java
index 18010f8b4c..f72198b598 100644
--- a/Mage.Sets/src/mage/cards/t/ThranWeaponry.java
+++ b/Mage.Sets/src/mage/cards/t/ThranWeaponry.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThrashingBrontodon.java b/Mage.Sets/src/mage/cards/t/ThrashingBrontodon.java
index 4e29766e97..ab2e9984ab 100644
--- a/Mage.Sets/src/mage/cards/t/ThrashingBrontodon.java
+++ b/Mage.Sets/src/mage/cards/t/ThrashingBrontodon.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThrashingMossdog.java b/Mage.Sets/src/mage/cards/t/ThrashingMossdog.java
index c107bab3a1..b0e34fbd08 100644
--- a/Mage.Sets/src/mage/cards/t/ThrashingMossdog.java
+++ b/Mage.Sets/src/mage/cards/t/ThrashingMossdog.java
@@ -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}")));
}
diff --git a/Mage.Sets/src/mage/cards/t/ThrashingWumpus.java b/Mage.Sets/src/mage/cards/t/ThrashingWumpus.java
index 00a9432cc2..c55288ed66 100644
--- a/Mage.Sets/src/mage/cards/t/ThrashingWumpus.java
+++ b/Mage.Sets/src/mage/cards/t/ThrashingWumpus.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThrillOfTheHunt.java b/Mage.Sets/src/mage/cards/t/ThrillOfTheHunt.java
index edae096557..851cd2da69 100644
--- a/Mage.Sets/src/mage/cards/t/ThrillOfTheHunt.java
+++ b/Mage.Sets/src/mage/cards/t/ThrillOfTheHunt.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThrissNantukoPrimus.java b/Mage.Sets/src/mage/cards/t/ThrissNantukoPrimus.java
index 5147f6ae2d..7cf8344897 100644
--- a/Mage.Sets/src/mage/cards/t/ThrissNantukoPrimus.java
+++ b/Mage.Sets/src/mage/cards/t/ThrissNantukoPrimus.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThroughTheBreach.java b/Mage.Sets/src/mage/cards/t/ThroughTheBreach.java
index f23160de05..acf7a860ad 100644
--- a/Mage.Sets/src/mage/cards/t/ThroughTheBreach.java
+++ b/Mage.Sets/src/mage/cards/t/ThroughTheBreach.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThrullSurgeon.java b/Mage.Sets/src/mage/cards/t/ThrullSurgeon.java
index 4f6d42651c..550b65b21e 100644
--- a/Mage.Sets/src/mage/cards/t/ThrullSurgeon.java
+++ b/Mage.Sets/src/mage/cards/t/ThrullSurgeon.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/ThrullWizard.java b/Mage.Sets/src/mage/cards/t/ThrullWizard.java
index 72a6723170..3670181f23 100644
--- a/Mage.Sets/src/mage/cards/t/ThrullWizard.java
+++ b/Mage.Sets/src/mage/cards/t/ThrullWizard.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/ThrunTheLastTroll.java b/Mage.Sets/src/mage/cards/t/ThrunTheLastTroll.java
index 7cc769fb51..b2a8f21bfd 100644
--- a/Mage.Sets/src/mage/cards/t/ThrunTheLastTroll.java
+++ b/Mage.Sets/src/mage/cards/t/ThrunTheLastTroll.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThunderTotem.java b/Mage.Sets/src/mage/cards/t/ThunderTotem.java
index 5886c4fae3..1b97230276 100644
--- a/Mage.Sets/src/mage/cards/t/ThunderTotem.java
+++ b/Mage.Sets/src/mage/cards/t/ThunderTotem.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThunderWall.java b/Mage.Sets/src/mage/cards/t/ThunderWall.java
index dbee1b519b..70a0302991 100644
--- a/Mage.Sets/src/mage/cards/t/ThunderWall.java
+++ b/Mage.Sets/src/mage/cards/t/ThunderWall.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThunderbladeCharge.java b/Mage.Sets/src/mage/cards/t/ThunderbladeCharge.java
index 46efa1a3ef..29e05a7942 100644
--- a/Mage.Sets/src/mage/cards/t/ThunderbladeCharge.java
+++ b/Mage.Sets/src/mage/cards/t/ThunderbladeCharge.java
@@ -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")));
}
diff --git a/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java b/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java
index e0a0e42685..f483a192bb 100644
--- a/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java
+++ b/Mage.Sets/src/mage/cards/t/ThundercloudElemental.java
@@ -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}")));
}
diff --git a/Mage.Sets/src/mage/cards/t/ThunderingSpineback.java b/Mage.Sets/src/mage/cards/t/ThunderingSpineback.java
index 35d3650a84..16a65420fe 100644
--- a/Mage.Sets/src/mage/cards/t/ThunderingSpineback.java
+++ b/Mage.Sets/src/mage/cards/t/ThunderingSpineback.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThunderousWrath.java b/Mage.Sets/src/mage/cards/t/ThunderousWrath.java
index ffb7761114..8ec894b24f 100644
--- a/Mage.Sets/src/mage/cards/t/ThunderousWrath.java
+++ b/Mage.Sets/src/mage/cards/t/ThunderousWrath.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/ThunderscapeMaster.java b/Mage.Sets/src/mage/cards/t/ThunderscapeMaster.java
index 0ec7811658..0a4f7b762c 100644
--- a/Mage.Sets/src/mage/cards/t/ThunderscapeMaster.java
+++ b/Mage.Sets/src/mage/cards/t/ThunderscapeMaster.java
@@ -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);
}
diff --git a/Mage.Sets/src/mage/cards/t/TibaltsRager.java b/Mage.Sets/src/mage/cards/t/TibaltsRager.java
index 8599f5a070..3b610ec832 100644
--- a/Mage.Sets/src/mage/cards/t/TibaltsRager.java
+++ b/Mage.Sets/src/mage/cards/t/TibaltsRager.java
@@ -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}")
));
}
diff --git a/Mage.Sets/src/mage/cards/t/TidalControl.java b/Mage.Sets/src/mage/cards/t/TidalControl.java
index 34278e0fc7..0ca2a356d4 100644
--- a/Mage.Sets/src/mage/cards/t/TidalControl.java
+++ b/Mage.Sets/src/mage/cards/t/TidalControl.java
@@ -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"));
diff --git a/Mage.Sets/src/mage/cards/t/TidalCourier.java b/Mage.Sets/src/mage/cards/t/TidalCourier.java
index 38686bd766..70cf4cda5c 100644
--- a/Mage.Sets/src/mage/cards/t/TidalCourier.java
+++ b/Mage.Sets/src/mage/cards/t/TidalCourier.java
@@ -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) {
diff --git a/Mage.Sets/src/mage/cards/t/TidalFlats.java b/Mage.Sets/src/mage/cards/t/TidalFlats.java
index b282176c8f..121f7663c4 100644
--- a/Mage.Sets/src/mage/cards/t/TidalFlats.java
+++ b/Mage.Sets/src/mage/cards/t/TidalFlats.java
@@ -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 affectedPermanents = new ArrayList<>();
for (Permanent permanent : game.getState().getBattlefield().getAllActivePermanents(filter, player.getId(), game)) {
cost.clearPaid();
diff --git a/Mage.Sets/src/mage/cards/t/TidewaterMinion.java b/Mage.Sets/src/mage/cards/t/TidewaterMinion.java
index 1c60ba6a63..b341a95364 100644
--- a/Mage.Sets/src/mage/cards/t/TidewaterMinion.java
+++ b/Mage.Sets/src/mage/cards/t/TidewaterMinion.java
@@ -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());
diff --git a/Mage.Sets/src/mage/cards/t/TilonallisSummoner.java b/Mage.Sets/src/mage/cards/t/TilonallisSummoner.java
index 2818ad31a8..9db19cc5cd 100644
--- a/Mage.Sets/src/mage/cards/t/TilonallisSummoner.java
+++ b/Mage.Sets/src/mage/cards/t/TilonallisSummoner.java
@@ -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));
diff --git a/Mage.Sets/src/mage/cards/t/TimeElemental.java b/Mage.Sets/src/mage/cards/t/TimeElemental.java
index 500edb1956..ef8b29d9df 100644
--- a/Mage.Sets/src/mage/cards/t/TimeElemental.java
+++ b/Mage.Sets/src/mage/cards/t/TimeElemental.java
@@ -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);
diff --git a/Mage.Sets/src/mage/cards/t/Timebender.java b/Mage.Sets/src/mage/cards/t/Timebender.java
index e8ad5090cd..88d9b6aa4b 100644
--- a/Mage.Sets/src/mage/cards/t/Timebender.java
+++ b/Mage.Sets/src/mage/cards/t/Timebender.java
@@ -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.
diff --git a/Mage.Sets/src/mage/cards/t/TimestreamNavigator.java b/Mage.Sets/src/mage/cards/t/TimestreamNavigator.java
index 127c4c5dd2..2e53082b8f 100644
--- a/Mage.Sets/src/mage/cards/t/TimestreamNavigator.java
+++ b/Mage.Sets/src/mage/cards/t/TimestreamNavigator.java
@@ -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());
diff --git a/Mage.Sets/src/mage/cards/t/TimmyPowerGamer.java b/Mage.Sets/src/mage/cards/t/TimmyPowerGamer.java
index 004c05233b..152f0e6657 100644
--- a/Mage.Sets/src/mage/cards/t/TimmyPowerGamer.java
+++ b/Mage.Sets/src/mage/cards/t/TimmyPowerGamer.java
@@ -35,7 +35,7 @@ public final class TimmyPowerGamer extends CardImpl {
// {4}: You may put a creature card from your hand onto the battlefield.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new PutCardFromHandOntoBattlefieldEffect(StaticFilters.FILTER_CARD_CREATURE_A),
- new ManaCostsImpl("{4}"));
+ new ManaCostsImpl<>("{4}"));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TinStreetDodger.java b/Mage.Sets/src/mage/cards/t/TinStreetDodger.java
index 064a804c41..91a2f7ad19 100644
--- a/Mage.Sets/src/mage/cards/t/TinStreetDodger.java
+++ b/Mage.Sets/src/mage/cards/t/TinStreetDodger.java
@@ -42,7 +42,7 @@ public final class TinStreetDodger extends CardImpl {
// {R}: Tin Street Dodger can't be blocked this turn except by creatures with defender.
this.addAbility(new SimpleActivatedAbility(
- new CantBeBlockedByCreaturesSourceEffect(filter, Duration.EndOfTurn), new ManaCostsImpl("{R}")
+ new CantBeBlockedByCreaturesSourceEffect(filter, Duration.EndOfTurn), new ManaCostsImpl<>("{R}")
));
}
diff --git a/Mage.Sets/src/mage/cards/t/TinybonesTrinketThief.java b/Mage.Sets/src/mage/cards/t/TinybonesTrinketThief.java
index 106b0dea56..c5ed40a2a8 100644
--- a/Mage.Sets/src/mage/cards/t/TinybonesTrinketThief.java
+++ b/Mage.Sets/src/mage/cards/t/TinybonesTrinketThief.java
@@ -48,7 +48,7 @@ public final class TinybonesTrinketThief extends CardImpl {
this.addAbility(ability, new TinybonesTrinketThiefWatcher());
// {4}{B}{B}: Each opponent with no cards in hand loses 10 life.
- this.addAbility(new SimpleActivatedAbility(new TinybonesTrinketThiefEffect(), new ManaCostsImpl("{4}{B}{B}")));
+ this.addAbility(new SimpleActivatedAbility(new TinybonesTrinketThiefEffect(), new ManaCostsImpl<>("{4}{B}{B}")));
}
private TinybonesTrinketThief(final TinybonesTrinketThief card) {
diff --git a/Mage.Sets/src/mage/cards/t/TitanHunter.java b/Mage.Sets/src/mage/cards/t/TitanHunter.java
index e121bae95e..3895a6cfb0 100644
--- a/Mage.Sets/src/mage/cards/t/TitanHunter.java
+++ b/Mage.Sets/src/mage/cards/t/TitanHunter.java
@@ -49,7 +49,7 @@ public final class TitanHunter extends CardImpl {
).addHint(MorbidHint.instance));
// {1}{B}, Sacrifice a creature: You gain 4 life.
- Ability ability = new SimpleActivatedAbility(new GainLifeEffect(4), new ManaCostsImpl("{1}{B}"));
+ Ability ability = new SimpleActivatedAbility(new GainLifeEffect(4), new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(StaticFilters.FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TitanOfEternalFire.java b/Mage.Sets/src/mage/cards/t/TitanOfEternalFire.java
index 0996ce80b2..9c5c5816ca 100644
--- a/Mage.Sets/src/mage/cards/t/TitanOfEternalFire.java
+++ b/Mage.Sets/src/mage/cards/t/TitanOfEternalFire.java
@@ -34,7 +34,7 @@ public final class TitanOfEternalFire extends CardImpl {
this.toughness = new MageInt(6);
// Each Human creature you control has "{R}, {T}: This creature deals 1 damage to any target."
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl("{R}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(1), new ManaCostsImpl<>("{R}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetAnyTarget());
Effect effect = new GainAbilityControlledEffect(ability, Duration.WhileOnBattlefield, new FilterCreaturePermanent(SubType.HUMAN, "Each Human creature"));
diff --git a/Mage.Sets/src/mage/cards/t/TitanicBulvox.java b/Mage.Sets/src/mage/cards/t/TitanicBulvox.java
index a5d328987b..2e81c03d26 100644
--- a/Mage.Sets/src/mage/cards/t/TitanicBulvox.java
+++ b/Mage.Sets/src/mage/cards/t/TitanicBulvox.java
@@ -26,7 +26,7 @@ public final class TitanicBulvox extends CardImpl {
// Trample
this.addAbility(TrampleAbility.getInstance());
// Morph {4}{G}{G}{G}
- this.addAbility(new MorphAbility(new ManaCostsImpl("{4}{G}{G}{G}")));
+ this.addAbility(new MorphAbility(new ManaCostsImpl<>("{4}{G}{G}{G}")));
}
private TitanicBulvox(final TitanicBulvox card) {
diff --git a/Mage.Sets/src/mage/cards/t/TitaniumGolem.java b/Mage.Sets/src/mage/cards/t/TitaniumGolem.java
index 0222cc3b3e..7e70a6c04f 100644
--- a/Mage.Sets/src/mage/cards/t/TitaniumGolem.java
+++ b/Mage.Sets/src/mage/cards/t/TitaniumGolem.java
@@ -25,7 +25,7 @@ public final class TitaniumGolem extends CardImpl {
this.subtype.add(SubType.GOLEM);
this.power = new MageInt(3);
this.toughness = new MageInt(3);
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}{W}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}{W}")));
}
private TitaniumGolem(final TitaniumGolem card) {
diff --git a/Mage.Sets/src/mage/cards/t/TitanothRex.java b/Mage.Sets/src/mage/cards/t/TitanothRex.java
index e9bc2eaffb..22ca372e98 100644
--- a/Mage.Sets/src/mage/cards/t/TitanothRex.java
+++ b/Mage.Sets/src/mage/cards/t/TitanothRex.java
@@ -33,7 +33,7 @@ public final class TitanothRex extends CardImpl {
this.addAbility(TrampleAbility.getInstance());
// Cycling {1}{G}
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{1}{G}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{1}{G}")));
// When you cycle Titanoth Rex, put a trample counter on target creature you control.
Ability ability = new CycleTriggeredAbility(
diff --git a/Mage.Sets/src/mage/cards/t/TombOfUrami.java b/Mage.Sets/src/mage/cards/t/TombOfUrami.java
index c65d759bd8..72b3414116 100644
--- a/Mage.Sets/src/mage/cards/t/TombOfUrami.java
+++ b/Mage.Sets/src/mage/cards/t/TombOfUrami.java
@@ -36,7 +36,7 @@ public final class TombOfUrami extends CardImpl {
ability.addEffect(new DamageControllerEffect(1));
this.addAbility(ability);
// {2}{B}{B}, {tap}, Sacrifice all lands you control: Create a legendary 5/5 black Demon Spirit creature token with flying named Urami.
- Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new UramiToken()), new ManaCostsImpl("{2}{B}{B}"));
+ Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new UramiToken()), new ManaCostsImpl<>("{2}{B}{B}"));
ability2.addCost(new TapSourceCost());
ability2.addCost(new SacrificeAllLandCost());
this.addAbility(ability2);
diff --git a/Mage.Sets/src/mage/cards/t/TombRobber.java b/Mage.Sets/src/mage/cards/t/TombRobber.java
index 1397fc404d..9382711005 100644
--- a/Mage.Sets/src/mage/cards/t/TombRobber.java
+++ b/Mage.Sets/src/mage/cards/t/TombRobber.java
@@ -36,7 +36,7 @@ public final class TombRobber extends CardImpl {
// {1}, Discard a card: Tomb Robber explores. (Reveal the top card of your library. Put that card into your hand if it's a land. Otherwise, put a +1/+1 counter on this creature, then put the card back or put it into your graveyard.)
Effect effect = new ExploreSourceEffect(true, "{this}");
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new DiscardCardCost());
- ability.addCost(new ManaCostsImpl("{1}"));
+ ability.addCost(new ManaCostsImpl<>("{1}"));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TombstoneStairwell.java b/Mage.Sets/src/mage/cards/t/TombstoneStairwell.java
index a4ebffdc6b..b06bb59727 100644
--- a/Mage.Sets/src/mage/cards/t/TombstoneStairwell.java
+++ b/Mage.Sets/src/mage/cards/t/TombstoneStairwell.java
@@ -39,7 +39,7 @@ public final class TombstoneStairwell extends CardImpl {
addSuperType(SuperType.WORLD);
// Cumulative upkeep-Pay {1}{B}.
- this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl("{1}{B}")));
+ this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl<>("{1}{B}")));
// At the beginning of each upkeep, if Tombstone Stairwell is on the battlefield, each player creates a 2/2 black Zombie creature token with haste named Tombspawn for each creature card in their graveyard.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new TombstoneStairwellCreateTokenEffect(), TargetController.ANY, false));
diff --git a/Mage.Sets/src/mage/cards/t/TonicPeddler.java b/Mage.Sets/src/mage/cards/t/TonicPeddler.java
index 5526b74667..922eee02a1 100644
--- a/Mage.Sets/src/mage/cards/t/TonicPeddler.java
+++ b/Mage.Sets/src/mage/cards/t/TonicPeddler.java
@@ -30,7 +30,7 @@ public final class TonicPeddler extends CardImpl {
this.toughness = new MageInt(1);
// {W}, {tap}, Discard a card: Target player gains 3 life.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeTargetEffect(3), new ManaCostsImpl("{W}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeTargetEffect(3), new ManaCostsImpl<>("{W}"));
ability.addCost(new TapSourceCost());
ability.addCost(new DiscardCardCost());
ability.addTarget(new TargetPlayer());
diff --git a/Mage.Sets/src/mage/cards/t/TorchDrake.java b/Mage.Sets/src/mage/cards/t/TorchDrake.java
index 401ba58745..d0f315d352 100644
--- a/Mage.Sets/src/mage/cards/t/TorchDrake.java
+++ b/Mage.Sets/src/mage/cards/t/TorchDrake.java
@@ -29,7 +29,7 @@ public final class TorchDrake extends CardImpl {
this.power = new MageInt(2);
this.toughness = new MageInt(2);
this.addAbility(FlyingAbility.getInstance());
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl("{1}{R}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{R}")));
}
public TorchDrake (final TorchDrake card) {
diff --git a/Mage.Sets/src/mage/cards/t/TorchSong.java b/Mage.Sets/src/mage/cards/t/TorchSong.java
index b1f17dfcbf..6feb0bd532 100644
--- a/Mage.Sets/src/mage/cards/t/TorchSong.java
+++ b/Mage.Sets/src/mage/cards/t/TorchSong.java
@@ -35,7 +35,7 @@ public final class TorchSong extends CardImpl {
Ability ability = new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new DamageTargetEffect(new CountersSourceCount(CounterType.VERSE)),
- new ManaCostsImpl("{2}{R}")
+ new ManaCostsImpl<>("{2}{R}")
);
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetAnyTarget());
diff --git a/Mage.Sets/src/mage/cards/t/Tornado.java b/Mage.Sets/src/mage/cards/t/Tornado.java
index ecce049d50..82450f5744 100644
--- a/Mage.Sets/src/mage/cards/t/Tornado.java
+++ b/Mage.Sets/src/mage/cards/t/Tornado.java
@@ -31,9 +31,9 @@ public final class Tornado extends CardImpl {
// Cumulative upkeep {G}
- this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl("{G}")));
+ this.addAbility(new CumulativeUpkeepAbility(new ManaCostsImpl<>("{G}")));
// {2}{G}, Pay 3 life for each velocity counter on Tornado: Destroy target permanent and put a velocity counter on Tornado. Activate this ability only once each turn.
- Ability ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{2}{G}"));
+ Ability ability = new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{2}{G}"));
DynamicValue lifeToPayAmount = new MultipliedValue(new CountersSourceCount(CounterType.VELOCITY), 3);
ability.addCost(new PayLifeCost(lifeToPayAmount, "3 life for each velocity counter on {this}"));
ability.addTarget(new TargetPermanent());
diff --git a/Mage.Sets/src/mage/cards/t/TorrentElemental.java b/Mage.Sets/src/mage/cards/t/TorrentElemental.java
index 2c3dee16e2..f6347ccca7 100644
--- a/Mage.Sets/src/mage/cards/t/TorrentElemental.java
+++ b/Mage.Sets/src/mage/cards/t/TorrentElemental.java
@@ -41,7 +41,7 @@ public final class TorrentElemental extends CardImpl {
effect.setText("tap all creatures defending player controls.");
this.addAbility(new AttacksTriggeredAbility(effect, false, null, SetTargetPointer.PLAYER));
// {3}{B/G}{B/G}: Put Torrent Elemental from exile onto the battlefield tapped. Activate this ability only any time you could cast a sorcery.
- Ability ability = new ActivateAsSorceryActivatedAbility(Zone.EXILED, new ReturnSourceFromExileToBattlefieldEffect(true), new ManaCostsImpl("{3}{B/G}{B/G}"));
+ Ability ability = new ActivateAsSorceryActivatedAbility(Zone.EXILED, new ReturnSourceFromExileToBattlefieldEffect(true), new ManaCostsImpl<>("{3}{B/G}{B/G}"));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/Torture.java b/Mage.Sets/src/mage/cards/t/Torture.java
index da01c582ef..482fde8087 100644
--- a/Mage.Sets/src/mage/cards/t/Torture.java
+++ b/Mage.Sets/src/mage/cards/t/Torture.java
@@ -44,7 +44,7 @@ public final class Torture extends CardImpl {
this.addAbility(new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new AddCountersAttachedEffect(CounterType.M1M1.createInstance(),"enchanted creature"),
- new ManaCostsImpl("{1}{B}")));
+ new ManaCostsImpl<>("{1}{B}")));
}
private Torture(final Torture card) {
diff --git a/Mage.Sets/src/mage/cards/t/TorturedExistence.java b/Mage.Sets/src/mage/cards/t/TorturedExistence.java
index a5b9f2787f..80df2b3606 100644
--- a/Mage.Sets/src/mage/cards/t/TorturedExistence.java
+++ b/Mage.Sets/src/mage/cards/t/TorturedExistence.java
@@ -23,7 +23,7 @@ public final class TorturedExistence extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{B}");
// {B}, Discard a creature card: Return target creature card from your graveyard to your hand.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl("{B}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnFromGraveyardToHandTargetEffect(), new ManaCostsImpl<>("{B}"));
ability.addCost(new DiscardCardCost(StaticFilters.FILTER_CARD_CREATURE_A));
ability.addTarget(new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TourachsChant.java b/Mage.Sets/src/mage/cards/t/TourachsChant.java
index 0dc26eb98e..348b7ce4bc 100644
--- a/Mage.Sets/src/mage/cards/t/TourachsChant.java
+++ b/Mage.Sets/src/mage/cards/t/TourachsChant.java
@@ -33,7 +33,7 @@ public final class TourachsChant extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{1}{B}{B}");
// At the beginning of your upkeep, sacrifice Tourach's Chant unless you pay {B}.
- this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{B}")), TargetController.YOU, false));
+ this.addAbility(new BeginningOfUpkeepTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl<>("{B}")), TargetController.YOU, false));
// Whenever a player puts a Forest onto the battlefield, Tourach'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 TourachsChantEffect(), filter, false, SetTargetPointer.PLAYER,
diff --git a/Mage.Sets/src/mage/cards/t/TowerDrake.java b/Mage.Sets/src/mage/cards/t/TowerDrake.java
index 012640c4d7..6a23163f95 100644
--- a/Mage.Sets/src/mage/cards/t/TowerDrake.java
+++ b/Mage.Sets/src/mage/cards/t/TowerDrake.java
@@ -32,7 +32,7 @@ public final class TowerDrake extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {W}: Tower Drake 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(Zone.BATTLEFIELD, new BoostSourceEffect(0, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{W}")));
}
private TowerDrake(final TowerDrake card) {
diff --git a/Mage.Sets/src/mage/cards/t/TowerOfCalamities.java b/Mage.Sets/src/mage/cards/t/TowerOfCalamities.java
index ff1165bf21..851cf7824c 100644
--- a/Mage.Sets/src/mage/cards/t/TowerOfCalamities.java
+++ b/Mage.Sets/src/mage/cards/t/TowerOfCalamities.java
@@ -22,7 +22,7 @@ public final class TowerOfCalamities extends CardImpl {
public TowerOfCalamities (UUID ownerId, CardSetInfo setInfo) {
super(ownerId,setInfo,new CardType[]{CardType.ARTIFACT},"{4}");
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(12), new ManaCostsImpl("{8}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(12), new ManaCostsImpl<>("{8}"));
ability.addTarget(new TargetCreaturePermanent());
ability.addCost(new TapSourceCost());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/ToweringBaloth.java b/Mage.Sets/src/mage/cards/t/ToweringBaloth.java
index 115a8bf9d3..9562dff86a 100644
--- a/Mage.Sets/src/mage/cards/t/ToweringBaloth.java
+++ b/Mage.Sets/src/mage/cards/t/ToweringBaloth.java
@@ -23,7 +23,7 @@ public final class ToweringBaloth extends CardImpl {
this.toughness = new MageInt(6);
// Morph {6}{G}
- this.addAbility(new MorphAbility(new ManaCostsImpl("{6}{G}")));
+ this.addAbility(new MorphAbility(new ManaCostsImpl<>("{6}{G}")));
}
private ToweringBaloth(final ToweringBaloth card) {
diff --git a/Mage.Sets/src/mage/cards/t/ToweringThunderfist.java b/Mage.Sets/src/mage/cards/t/ToweringThunderfist.java
index f3366fafa0..cbe5473070 100644
--- a/Mage.Sets/src/mage/cards/t/ToweringThunderfist.java
+++ b/Mage.Sets/src/mage/cards/t/ToweringThunderfist.java
@@ -29,7 +29,7 @@ public final class ToweringThunderfist extends CardImpl {
this.toughness = new MageInt(4);
// {W}: Towering Thunderfist gains vigilance until end of turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{W}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(VigilanceAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{W}")));
}
private ToweringThunderfist(final ToweringThunderfist card) {
diff --git a/Mage.Sets/src/mage/cards/t/ToxicNim.java b/Mage.Sets/src/mage/cards/t/ToxicNim.java
index 5e24e935af..5896fbbf3d 100644
--- a/Mage.Sets/src/mage/cards/t/ToxicNim.java
+++ b/Mage.Sets/src/mage/cards/t/ToxicNim.java
@@ -28,7 +28,7 @@ public final class ToxicNim extends CardImpl {
this.toughness = new MageInt(1);
this.addAbility(InfectAbility.getInstance());
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
}
private ToxicNim(final ToxicNim card) {
diff --git a/Mage.Sets/src/mage/cards/t/Toymaker.java b/Mage.Sets/src/mage/cards/t/Toymaker.java
index 2e1a6c3241..b3e7f6b3b9 100644
--- a/Mage.Sets/src/mage/cards/t/Toymaker.java
+++ b/Mage.Sets/src/mage/cards/t/Toymaker.java
@@ -44,7 +44,7 @@ public final class Toymaker extends CardImpl {
this.toughness = new MageInt(1);
// {1}, {tap}, Discard a card: Target noncreature artifact becomes an artifact creature with power and toughness each equal to its converted mana cost until end of turn.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ToymakerEffect(), new ManaCostsImpl("{1}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ToymakerEffect(), new ManaCostsImpl<>("{1}"));
ability.addCost(new TapSourceCost());
ability.addCost(new DiscardCardCost());
ability.addTarget(new TargetPermanent(filter));
diff --git a/Mage.Sets/src/mage/cards/t/Tracker.java b/Mage.Sets/src/mage/cards/t/Tracker.java
index e5abd24488..7bc575077b 100644
--- a/Mage.Sets/src/mage/cards/t/Tracker.java
+++ b/Mage.Sets/src/mage/cards/t/Tracker.java
@@ -28,7 +28,7 @@ public final class Tracker extends CardImpl {
this.toughness = new MageInt(2);
// {G}{G}, {tap}: Tracker deals damage equal to its power to target creature. That creature deals damage equal to its power to Tracker.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEachOtherEffect(), new ManaCostsImpl("{G}{G}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageEachOtherEffect(), new ManaCostsImpl<>("{G}{G}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TrackersInstincts.java b/Mage.Sets/src/mage/cards/t/TrackersInstincts.java
index 55591bf01d..2bc1425fee 100644
--- a/Mage.Sets/src/mage/cards/t/TrackersInstincts.java
+++ b/Mage.Sets/src/mage/cards/t/TrackersInstincts.java
@@ -24,7 +24,7 @@ public final class TrackersInstincts extends CardImpl {
4, 1, StaticFilters.FILTER_CARD_CREATURE_A, PutCards.HAND, PutCards.GRAVEYARD, false));
// Flashback {2}{U}
- this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{2}{U}")));
+ this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{2}{U}")));
}
private TrackersInstincts(final TrackersInstincts card) {
diff --git a/Mage.Sets/src/mage/cards/t/TranquilGrove.java b/Mage.Sets/src/mage/cards/t/TranquilGrove.java
index 8e59930e7d..ef469aa248 100644
--- a/Mage.Sets/src/mage/cards/t/TranquilGrove.java
+++ b/Mage.Sets/src/mage/cards/t/TranquilGrove.java
@@ -30,7 +30,7 @@ public final class TranquilGrove extends CardImpl {
// {1}{G}{G}: Destroy all other enchantments.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyAllEffect(filter), new ManaCostsImpl("{1}{G}{G}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyAllEffect(filter), new ManaCostsImpl<>("{1}{G}{G}")));
}
private TranquilGrove(final TranquilGrove card) {
diff --git a/Mage.Sets/src/mage/cards/t/TranquilThicket.java b/Mage.Sets/src/mage/cards/t/TranquilThicket.java
index c95b0c3c7c..7ff032f966 100644
--- a/Mage.Sets/src/mage/cards/t/TranquilThicket.java
+++ b/Mage.Sets/src/mage/cards/t/TranquilThicket.java
@@ -24,7 +24,7 @@ public final class TranquilThicket extends CardImpl {
// {tap}: Add {G}.
this.addAbility(new GreenManaAbility());
// Cycling {G}
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{G}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{G}")));
}
private TranquilThicket(final TranquilThicket card) {
diff --git a/Mage.Sets/src/mage/cards/t/TranscendentMaster.java b/Mage.Sets/src/mage/cards/t/TranscendentMaster.java
index deb10185fb..735cfb82a0 100644
--- a/Mage.Sets/src/mage/cards/t/TranscendentMaster.java
+++ b/Mage.Sets/src/mage/cards/t/TranscendentMaster.java
@@ -31,7 +31,7 @@ public final class TranscendentMaster extends LevelerCard {
this.power = new MageInt(3);
this.toughness = new MageInt(3);
- this.addAbility(new LevelUpAbility(new ManaCostsImpl("{1}")));
+ this.addAbility(new LevelUpAbility(new ManaCostsImpl<>("{1}")));
// Level up {1} ({1}: Put a level counter on this. Level up only as a sorcery.)
// LEVEL 6-11
diff --git a/Mage.Sets/src/mage/cards/t/Transluminant.java b/Mage.Sets/src/mage/cards/t/Transluminant.java
index 812da488e0..ef9a6b2b2d 100644
--- a/Mage.Sets/src/mage/cards/t/Transluminant.java
+++ b/Mage.Sets/src/mage/cards/t/Transluminant.java
@@ -33,7 +33,7 @@ public final class Transluminant extends CardImpl {
// {W}, Sacrifice Transluminant: Create a 1/1 white Spirit creature token with flying at the beginning of the next end step.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateDelayedTriggeredAbilityEffect(
new AtTheBeginOfNextEndStepDelayedTriggeredAbility(new CreateTokenEffect(new SpiritWhiteToken()))),
- new ManaCostsImpl("{W}"));
+ new ManaCostsImpl<>("{W}"));
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TrapDigger.java b/Mage.Sets/src/mage/cards/t/TrapDigger.java
index b9e8dbaff1..0d14144936 100644
--- a/Mage.Sets/src/mage/cards/t/TrapDigger.java
+++ b/Mage.Sets/src/mage/cards/t/TrapDigger.java
@@ -46,7 +46,7 @@ public final class TrapDigger extends CardImpl {
this.toughness = new MageInt(3);
// {2}{W}, {tap}: Put a trap counter on target land you control.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.TRAP.createInstance()), new ManaCostsImpl("{2}{W}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.TRAP.createInstance()), new ManaCostsImpl<>("{2}{W}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetControlledPermanent(new FilterControlledLandPermanent()));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TraumaticVisions.java b/Mage.Sets/src/mage/cards/t/TraumaticVisions.java
index 1dec24b6d4..24fd1aee52 100644
--- a/Mage.Sets/src/mage/cards/t/TraumaticVisions.java
+++ b/Mage.Sets/src/mage/cards/t/TraumaticVisions.java
@@ -23,7 +23,7 @@ public final class TraumaticVisions extends CardImpl {
// Counter target spell.
this.getSpellAbility().addTarget(new TargetSpell());
this.getSpellAbility().addEffect(new CounterTargetEffect());
- this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl("{1}{U}")));
+ this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl<>("{1}{U}")));
}
private TraumaticVisions(final TraumaticVisions card) {
diff --git a/Mage.Sets/src/mage/cards/t/TravelPreparations.java b/Mage.Sets/src/mage/cards/t/TravelPreparations.java
index ae2d1e296c..00dad3aeed 100644
--- a/Mage.Sets/src/mage/cards/t/TravelPreparations.java
+++ b/Mage.Sets/src/mage/cards/t/TravelPreparations.java
@@ -29,7 +29,7 @@ public final class TravelPreparations extends CardImpl {
this.getSpellAbility().addTarget(new TargetCreaturePermanent(0, 2));
// Flashback {1}{W}
- this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{1}{W}")));
+ this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{1}{W}")));
}
private TravelPreparations(final TravelPreparations card) {
diff --git a/Mage.Sets/src/mage/cards/t/TreacherousTerrain.java b/Mage.Sets/src/mage/cards/t/TreacherousTerrain.java
index 6c915d0a1a..a1402c15aa 100644
--- a/Mage.Sets/src/mage/cards/t/TreacherousTerrain.java
+++ b/Mage.Sets/src/mage/cards/t/TreacherousTerrain.java
@@ -28,7 +28,7 @@ public final class TreacherousTerrain extends CardImpl {
this.getSpellAbility().addEffect(new TreacherousTerrainEffect());
// Basic landcycling {2}
- this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl("{2}")));
+ this.addAbility(new BasicLandcyclingAbility(new ManaCostsImpl<>("{2}")));
}
private TreacherousTerrain(final TreacherousTerrain card) {
diff --git a/Mage.Sets/src/mage/cards/t/TreasureMap.java b/Mage.Sets/src/mage/cards/t/TreasureMap.java
index f641c5d6b1..8675e5261c 100644
--- a/Mage.Sets/src/mage/cards/t/TreasureMap.java
+++ b/Mage.Sets/src/mage/cards/t/TreasureMap.java
@@ -33,7 +33,7 @@ public final class TreasureMap extends CardImpl {
// {1}, {T}: Scry 1. Put a landmark counter on Treasure Map. Then if there are three or more landmark counters on it, remove those counters, transform Treasure Map, and create three colorless Treasure artifact tokens with "{T}, Sacrifice this artifact: Add one mana of any color."
this.addAbility(new TransformAbility());
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TreasureMapEffect(), new ManaCostsImpl("{1}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new TreasureMapEffect(), new ManaCostsImpl<>("{1}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TreasureTrove.java b/Mage.Sets/src/mage/cards/t/TreasureTrove.java
index b8bbb99636..f6ce0b37f6 100644
--- a/Mage.Sets/src/mage/cards/t/TreasureTrove.java
+++ b/Mage.Sets/src/mage/cards/t/TreasureTrove.java
@@ -21,7 +21,7 @@ public final class TreasureTrove extends CardImpl {
// {2}{U}{U}: Draw a card.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{2}{U}{U}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{2}{U}{U}")));
}
private TreasureTrove(final TreasureTrove card) {
diff --git a/Mage.Sets/src/mage/cards/t/TreasureVault.java b/Mage.Sets/src/mage/cards/t/TreasureVault.java
index d0f6bf2893..cc39a50629 100644
--- a/Mage.Sets/src/mage/cards/t/TreasureVault.java
+++ b/Mage.Sets/src/mage/cards/t/TreasureVault.java
@@ -30,7 +30,7 @@ public final class TreasureVault extends CardImpl {
// {X}{X}, {T}, Sacrifice Treasure Vault: Create X Treasure tokens.
Ability ability = new SimpleActivatedAbility(
new CreateTokenEffect(new TreasureToken(), ManacostVariableValue.REGULAR),
- new ManaCostsImpl("{X}{X}")
+ new ManaCostsImpl<>("{X}{X}")
);
ability.addCost(new TapSourceCost());
ability.addCost(new SacrificeSourceCost());
diff --git a/Mage.Sets/src/mage/cards/t/TreefolkHealer.java b/Mage.Sets/src/mage/cards/t/TreefolkHealer.java
index 33b3780af3..688569fae3 100644
--- a/Mage.Sets/src/mage/cards/t/TreefolkHealer.java
+++ b/Mage.Sets/src/mage/cards/t/TreefolkHealer.java
@@ -33,7 +33,7 @@ public final class TreefolkHealer extends CardImpl {
Ability ability = new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new PreventDamageToTargetEffect(Duration.EndOfTurn, 2),
- new ManaCostsImpl("{2}{W}"));
+ new ManaCostsImpl<>("{2}{W}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TreespringLorian.java b/Mage.Sets/src/mage/cards/t/TreespringLorian.java
index 1c54d8e614..f7643496c2 100644
--- a/Mage.Sets/src/mage/cards/t/TreespringLorian.java
+++ b/Mage.Sets/src/mage/cards/t/TreespringLorian.java
@@ -23,7 +23,7 @@ public final class TreespringLorian extends CardImpl {
this.toughness = new MageInt(4);
// Morph {5}{G}
- this.addAbility(new MorphAbility(new ManaCostsImpl("{5}{G}")));
+ this.addAbility(new MorphAbility(new ManaCostsImpl<>("{5}{G}")));
}
private TreespringLorian(final TreespringLorian card) {
diff --git a/Mage.Sets/src/mage/cards/t/TreetopVillage.java b/Mage.Sets/src/mage/cards/t/TreetopVillage.java
index 50382caf00..f571d9935c 100644
--- a/Mage.Sets/src/mage/cards/t/TreetopVillage.java
+++ b/Mage.Sets/src/mage/cards/t/TreetopVillage.java
@@ -32,7 +32,7 @@ public final class TreetopVillage extends CardImpl {
this.addAbility(new GreenManaAbility());
// {1}{G}: Treetop Village becomes a 3/3 green Ape creature with trample until end of turn. It’s still a land. (It can deal excess combat damage to the player or planeswalker it’s attacking.)
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new ApeToken(), "land", Duration.EndOfTurn), new ManaCostsImpl("{1}{G}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new ApeToken(), "land", Duration.EndOfTurn), new ManaCostsImpl<>("{1}{G}")));
}
private TreetopVillage(final TreetopVillage card) {
diff --git a/Mage.Sets/src/mage/cards/t/TrenchWurm.java b/Mage.Sets/src/mage/cards/t/TrenchWurm.java
index 24f412d72f..1078932b4f 100644
--- a/Mage.Sets/src/mage/cards/t/TrenchWurm.java
+++ b/Mage.Sets/src/mage/cards/t/TrenchWurm.java
@@ -28,7 +28,7 @@ public final class TrenchWurm extends CardImpl {
this.toughness = new MageInt(3);
// {2}{R}, {tap}: Destroy target nonbasic land.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl("{2}{R}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(), new ManaCostsImpl<>("{2}{R}"));
ability.addTarget(new TargetNonBasicLandPermanent());
ability.addCost(new TapSourceCost());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TrestleTroll.java b/Mage.Sets/src/mage/cards/t/TrestleTroll.java
index 852d85d327..b486ce5059 100644
--- a/Mage.Sets/src/mage/cards/t/TrestleTroll.java
+++ b/Mage.Sets/src/mage/cards/t/TrestleTroll.java
@@ -35,7 +35,7 @@ public final class TrestleTroll extends CardImpl {
this.addAbility(ReachAbility.getInstance());
// {1}{B}{G}: Regenerate Trestle Troll.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{B}{G}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}{G}")));
}
private TrestleTroll(final TrestleTroll card) {
diff --git a/Mage.Sets/src/mage/cards/t/TrevaTheRenewer.java b/Mage.Sets/src/mage/cards/t/TrevaTheRenewer.java
index 8df3e49fe2..1051b7f08e 100644
--- a/Mage.Sets/src/mage/cards/t/TrevaTheRenewer.java
+++ b/Mage.Sets/src/mage/cards/t/TrevaTheRenewer.java
@@ -38,7 +38,7 @@ public final class TrevaTheRenewer extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// Whenever Treva, the Renewer deals combat damage to a player, you may pay {2}{W}. If you do, choose a color, then you gain 1 life for each permanent of that color.
- this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new DoIfCostPaid(new TrevaTheRenewerEffect(), new ManaCostsImpl("{2}{W}")), false));
+ this.addAbility(new DealsCombatDamageToAPlayerTriggeredAbility(new DoIfCostPaid(new TrevaTheRenewerEffect(), new ManaCostsImpl<>("{2}{W}")), false));
}
private TrevaTheRenewer(final TrevaTheRenewer card) {
diff --git a/Mage.Sets/src/mage/cards/t/TrevasAttendant.java b/Mage.Sets/src/mage/cards/t/TrevasAttendant.java
index 872ff91d6a..eadfbc0156 100644
--- a/Mage.Sets/src/mage/cards/t/TrevasAttendant.java
+++ b/Mage.Sets/src/mage/cards/t/TrevasAttendant.java
@@ -28,7 +28,7 @@ public final class TrevasAttendant extends CardImpl {
this.toughness = new MageInt(3);
// {1}, Sacrifice Treva's Attendant: Add {G}{W}{U}.
- Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 1, 0, 0, 1, 0, 0, 0), new ManaCostsImpl("{1}"));
+ Ability ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(1, 1, 0, 0, 1, 0, 0, 0), new ManaCostsImpl<>("{1}"));
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TriadOfFates.java b/Mage.Sets/src/mage/cards/t/TriadOfFates.java
index bcf55fefcf..26f83d1e85 100644
--- a/Mage.Sets/src/mage/cards/t/TriadOfFates.java
+++ b/Mage.Sets/src/mage/cards/t/TriadOfFates.java
@@ -47,14 +47,14 @@ public final class TriadOfFates extends CardImpl {
this.toughness = new MageInt(3);
// {1}, {T}: Put a fate counter on another target creature.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.FATE.createInstance()), new ManaCostsImpl("{1}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersTargetEffect(CounterType.FATE.createInstance()), new ManaCostsImpl<>("{1}"));
ability.addCost(new TapSourceCost());
Target target = new TargetCreaturePermanent(filter);
ability.addTarget(target);
this.addAbility(ability);
// {W}, {T}: Exile target creature that has a fate counter on it, then return it to the battlefield under its owner's control.
- ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetForSourceEffect(), new ManaCostsImpl("{W}"));
+ ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetForSourceEffect(), new ManaCostsImpl<>("{W}"));
ability.addCost(new TapSourceCost());
target = new TargetCreaturePermanent(filterCounter);
ability.addTarget(target);
@@ -62,7 +62,7 @@ public final class TriadOfFates extends CardImpl {
this.addAbility(ability);
// {B}, {T}: Exile target creature that has a fate counter on it. Its controller draws two cards.
- ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl("{B}"));
+ ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl<>("{B}"));
ability.addCost(new TapSourceCost());
target = new TargetCreaturePermanent(filterCounter);
ability.addTarget(target);
diff --git a/Mage.Sets/src/mage/cards/t/TriangleOfWar.java b/Mage.Sets/src/mage/cards/t/TriangleOfWar.java
index 19a6ac1601..f4a8cef656 100644
--- a/Mage.Sets/src/mage/cards/t/TriangleOfWar.java
+++ b/Mage.Sets/src/mage/cards/t/TriangleOfWar.java
@@ -27,7 +27,7 @@ public final class TriangleOfWar extends CardImpl {
// {2}, Sacrifice Triangle of War: Target creature you control fights target creature an opponent controls.
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new FightTargetsEffect(),
- new ManaCostsImpl("{2}"));
+ new ManaCostsImpl<>("{2}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetControlledCreaturePermanent());
ability.addTarget(new TargetCreaturePermanent(StaticFilters.FILTER_OPPONENTS_PERMANENT_CREATURE));
diff --git a/Mage.Sets/src/mage/cards/t/TribalForcemage.java b/Mage.Sets/src/mage/cards/t/TribalForcemage.java
index a0efc902fe..f94bf85abb 100644
--- a/Mage.Sets/src/mage/cards/t/TribalForcemage.java
+++ b/Mage.Sets/src/mage/cards/t/TribalForcemage.java
@@ -34,7 +34,7 @@ public final class TribalForcemage extends CardImpl {
this.toughness = new MageInt(1);
// Morph {1}{G}
- this.addAbility(new MorphAbility(new ManaCostsImpl("{1}{G}")));
+ this.addAbility(new MorphAbility(new ManaCostsImpl<>("{1}{G}")));
// When Tribal Forcemage is turned face up, creatures of the creature type of your choice get +2/+2 and gain trample until end of turn.
Effect effect = new ChooseCreatureTypeEffect(Outcome.BoostCreature);
diff --git a/Mage.Sets/src/mage/cards/t/TribalGolem.java b/Mage.Sets/src/mage/cards/t/TribalGolem.java
index 82e2ace284..805f3b153c 100644
--- a/Mage.Sets/src/mage/cards/t/TribalGolem.java
+++ b/Mage.Sets/src/mage/cards/t/TribalGolem.java
@@ -75,7 +75,7 @@ public final class TribalGolem extends CardImpl {
new GainAbilitySourceEffect(new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new RegenerateSourceEffect(),
- new ManaCostsImpl("{B}")
+ new ManaCostsImpl<>("{B}")
)),
new PermanentsOnTheBattlefieldCondition(filter5),
", and \"{B}: Regenerate {this}\" as long as you control a Zombie"
diff --git a/Mage.Sets/src/mage/cards/t/TricksterMage.java b/Mage.Sets/src/mage/cards/t/TricksterMage.java
index 2809bceae7..cf2d02464b 100644
--- a/Mage.Sets/src/mage/cards/t/TricksterMage.java
+++ b/Mage.Sets/src/mage/cards/t/TricksterMage.java
@@ -41,7 +41,7 @@ public final class TricksterMage extends CardImpl {
this.toughness = new MageInt(1);
// {U}, {tap}, Discard a card: You may tap or untap target artifact, creature, or land.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MayTapOrUntapTargetEffect(), new ManaCostsImpl("{U}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MayTapOrUntapTargetEffect(), new ManaCostsImpl<>("{U}"));
ability.addCost(new TapSourceCost());
ability.addCost(new DiscardCardCost());
ability.addTarget(new TargetPermanent(filter));
diff --git a/Mage.Sets/src/mage/cards/t/TrigonOfCorruption.java b/Mage.Sets/src/mage/cards/t/TrigonOfCorruption.java
index da011c26c4..b41d309d76 100644
--- a/Mage.Sets/src/mage/cards/t/TrigonOfCorruption.java
+++ b/Mage.Sets/src/mage/cards/t/TrigonOfCorruption.java
@@ -45,7 +45,7 @@ public final class TrigonOfCorruption extends CardImpl {
// {B}{B}, {T}: Put a charge counter on Trigon of Corruption.
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new TapSourceCost());
- ability2.addManaCost(new ManaCostsImpl("{B}{B}"));
+ ability2.addManaCost(new ManaCostsImpl<>("{B}{B}"));
this.addAbility(ability2);
}
diff --git a/Mage.Sets/src/mage/cards/t/TrigonOfInfestation.java b/Mage.Sets/src/mage/cards/t/TrigonOfInfestation.java
index 8ff7ce64fc..90b120ab93 100644
--- a/Mage.Sets/src/mage/cards/t/TrigonOfInfestation.java
+++ b/Mage.Sets/src/mage/cards/t/TrigonOfInfestation.java
@@ -41,7 +41,7 @@ public final class TrigonOfInfestation extends CardImpl {
this.addAbility(ability);
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new TapSourceCost());
- ability2.addManaCost(new ManaCostsImpl("{G}{G}"));
+ ability2.addManaCost(new ManaCostsImpl<>("{G}{G}"));
this.addAbility(ability2);
}
diff --git a/Mage.Sets/src/mage/cards/t/TrigonOfMending.java b/Mage.Sets/src/mage/cards/t/TrigonOfMending.java
index e0df6b686d..83df9c834c 100644
--- a/Mage.Sets/src/mage/cards/t/TrigonOfMending.java
+++ b/Mage.Sets/src/mage/cards/t/TrigonOfMending.java
@@ -44,7 +44,7 @@ public final class TrigonOfMending extends CardImpl {
// {W}{W}, {T}: Put a charge counter on Trigon of Mending.
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new TapSourceCost());
- ability2.addManaCost(new ManaCostsImpl("{W}{W}"));
+ ability2.addManaCost(new ManaCostsImpl<>("{W}{W}"));
this.addAbility(ability2);
}
diff --git a/Mage.Sets/src/mage/cards/t/TrigonOfRage.java b/Mage.Sets/src/mage/cards/t/TrigonOfRage.java
index fe2f93f3a9..017eb8dbd7 100644
--- a/Mage.Sets/src/mage/cards/t/TrigonOfRage.java
+++ b/Mage.Sets/src/mage/cards/t/TrigonOfRage.java
@@ -45,7 +45,7 @@ public final class TrigonOfRage extends CardImpl {
this.addAbility(ability);
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new TapSourceCost());
- ability2.addManaCost(new ManaCostsImpl("{R}{R}"));
+ ability2.addManaCost(new ManaCostsImpl<>("{R}{R}"));
this.addAbility(ability2);
}
diff --git a/Mage.Sets/src/mage/cards/t/TrigonOfThought.java b/Mage.Sets/src/mage/cards/t/TrigonOfThought.java
index 901d7eadfe..e1eb7272de 100644
--- a/Mage.Sets/src/mage/cards/t/TrigonOfThought.java
+++ b/Mage.Sets/src/mage/cards/t/TrigonOfThought.java
@@ -38,7 +38,7 @@ public final class TrigonOfThought extends CardImpl {
this.addAbility(ability);
Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new TapSourceCost());
- ability2.addManaCost(new ManaCostsImpl("{U}{U}"));
+ ability2.addManaCost(new ManaCostsImpl<>("{U}{U}"));
this.addAbility(ability2);
}
diff --git a/Mage.Sets/src/mage/cards/t/TrollAscetic.java b/Mage.Sets/src/mage/cards/t/TrollAscetic.java
index 53e17250c0..d398090318 100644
--- a/Mage.Sets/src/mage/cards/t/TrollAscetic.java
+++ b/Mage.Sets/src/mage/cards/t/TrollAscetic.java
@@ -27,7 +27,7 @@ public final class TrollAscetic extends CardImpl {
this.power = new MageInt(3);
this.toughness = new MageInt(2);
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}")));
}
public TrollAscetic (final TrollAscetic card) {
diff --git a/Mage.Sets/src/mage/cards/t/Trollhide.java b/Mage.Sets/src/mage/cards/t/Trollhide.java
index 7252b8ab7d..1f0115030e 100644
--- a/Mage.Sets/src/mage/cards/t/Trollhide.java
+++ b/Mage.Sets/src/mage/cards/t/Trollhide.java
@@ -44,7 +44,7 @@ public final class Trollhide extends CardImpl {
// Enchanted creature gets +2/+2 and has "{1}{G}: Regenerate this creature."
ability = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
Effect effect = new GainAbilityAttachedEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD,
- new RegenerateSourceEffect(), new ManaCostsImpl("{1}{G}")), AttachmentType.AURA);
+ new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{G}")), AttachmentType.AURA);
effect.setText("and has \"{1}{G}: Regenerate this creature.\"");
ability.addEffect(effect);
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TrollsOfTelJilad.java b/Mage.Sets/src/mage/cards/t/TrollsOfTelJilad.java
index c5814edfd8..3e61e9534c 100644
--- a/Mage.Sets/src/mage/cards/t/TrollsOfTelJilad.java
+++ b/Mage.Sets/src/mage/cards/t/TrollsOfTelJilad.java
@@ -36,7 +36,7 @@ public final class TrollsOfTelJilad extends CardImpl {
this.power = new MageInt(5);
this.toughness = new MageInt(6);
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl("{1}{G}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl<>("{1}{G}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TrophyHunter.java b/Mage.Sets/src/mage/cards/t/TrophyHunter.java
index 2fc17065e7..2c1fd9962d 100644
--- a/Mage.Sets/src/mage/cards/t/TrophyHunter.java
+++ b/Mage.Sets/src/mage/cards/t/TrophyHunter.java
@@ -40,7 +40,7 @@ public final class TrophyHunter extends CardImpl {
this.toughness = new MageInt(3);
// {1}{G}: Trophy Hunter deals 1 damage to target creature with flying.
- Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new ManaCostsImpl("{1}{G}"));
+ Ability ability = new SimpleActivatedAbility(new DamageTargetEffect(1), new ManaCostsImpl<>("{1}{G}"));
ability.addTarget(new TargetCreaturePermanent(filter));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TrostaniSelesnyasVoice.java b/Mage.Sets/src/mage/cards/t/TrostaniSelesnyasVoice.java
index 75eaee752a..0ef9762c9b 100644
--- a/Mage.Sets/src/mage/cards/t/TrostaniSelesnyasVoice.java
+++ b/Mage.Sets/src/mage/cards/t/TrostaniSelesnyasVoice.java
@@ -43,7 +43,7 @@ public final class TrostaniSelesnyasVoice extends CardImpl {
this.addAbility(new TrostaniSelesnyasVoiceTriggeredAbility());
// {1}{G}{W}, {T}: Populate. (Create a token that's a copy of a creature token you control.)
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PopulateEffect(), new ManaCostsImpl("{1}{G}{W}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new PopulateEffect(), new ManaCostsImpl<>("{1}{G}{W}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TruefirePaladin.java b/Mage.Sets/src/mage/cards/t/TruefirePaladin.java
index 13105fc6bd..5e14889874 100644
--- a/Mage.Sets/src/mage/cards/t/TruefirePaladin.java
+++ b/Mage.Sets/src/mage/cards/t/TruefirePaladin.java
@@ -34,10 +34,10 @@ public final class TruefirePaladin extends CardImpl {
this.addAbility(VigilanceAbility.getInstance());
// {R}{W}: Truefire Paladin gets +2/+0 until end of turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl("{R}{W}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{R}{W}")));
// {R}{W}: Truefire Paladin gets first strike until end of turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{R}{W}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{R}{W}")));
}
diff --git a/Mage.Sets/src/mage/cards/t/TrueheartDuelist.java b/Mage.Sets/src/mage/cards/t/TrueheartDuelist.java
index 38b498e562..4a263ec13a 100644
--- a/Mage.Sets/src/mage/cards/t/TrueheartDuelist.java
+++ b/Mage.Sets/src/mage/cards/t/TrueheartDuelist.java
@@ -32,7 +32,7 @@ public final class TrueheartDuelist extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CanBlockAdditionalCreatureEffect(Duration.WhileOnBattlefield, 1)));
// Embalm {2}{W}
- this.addAbility(new EmbalmAbility(new ManaCostsImpl("{2}{W}"), this));
+ this.addAbility(new EmbalmAbility(new ManaCostsImpl<>("{2}{W}"), this));
}
private TrueheartDuelist(final TrueheartDuelist card) {
diff --git a/Mage.Sets/src/mage/cards/t/TrumpetingArmodon.java b/Mage.Sets/src/mage/cards/t/TrumpetingArmodon.java
index 66654cd773..8d5e6a325c 100644
--- a/Mage.Sets/src/mage/cards/t/TrumpetingArmodon.java
+++ b/Mage.Sets/src/mage/cards/t/TrumpetingArmodon.java
@@ -27,7 +27,7 @@ public final class TrumpetingArmodon extends CardImpl {
this.toughness = new MageInt(3);
// {1}{G}: Target creature blocks Trumpeting Armodon this turn if able.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MustBeBlockedByTargetSourceEffect(), new ManaCostsImpl("{1}{G}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new MustBeBlockedByTargetSourceEffect(), new ManaCostsImpl<>("{1}{G}"));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TrustworthyScout.java b/Mage.Sets/src/mage/cards/t/TrustworthyScout.java
index 10474a88bb..08dfefa498 100644
--- a/Mage.Sets/src/mage/cards/t/TrustworthyScout.java
+++ b/Mage.Sets/src/mage/cards/t/TrustworthyScout.java
@@ -41,7 +41,7 @@ public final class TrustworthyScout extends CardImpl {
Zone.GRAVEYARD,
new SearchLibraryPutInHandEffect(
new TargetCardInLibrary(filter), true
- ), new ManaCostsImpl("{1}{W}"));
+ ), new ManaCostsImpl<>("{1}{W}"));
ability.addCost(new ExileSourceFromGraveCost());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TsaboTavoc.java b/Mage.Sets/src/mage/cards/t/TsaboTavoc.java
index 3bd7bfbd3a..083aaf6d35 100644
--- a/Mage.Sets/src/mage/cards/t/TsaboTavoc.java
+++ b/Mage.Sets/src/mage/cards/t/TsaboTavoc.java
@@ -47,7 +47,7 @@ public final class TsaboTavoc extends CardImpl {
// protection from legendary creatures
this.addAbility(new ProtectionAbility(filter));
// {B}{B}, {tap}: Destroy target legendary creature. It can't be regenerated.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(true), new ManaCostsImpl("{B}{B}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroyTargetEffect(true), new ManaCostsImpl<>("{B}{B}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(filterDestroy));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TuknirDeathlock.java b/Mage.Sets/src/mage/cards/t/TuknirDeathlock.java
index 676c77bbb5..2ffa897289 100644
--- a/Mage.Sets/src/mage/cards/t/TuknirDeathlock.java
+++ b/Mage.Sets/src/mage/cards/t/TuknirDeathlock.java
@@ -35,7 +35,7 @@ public final class TuknirDeathlock extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {R}{G}, {tap}: Target creature gets +2/+2 until end of turn.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{R}{G}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostTargetEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{R}{G}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TurtleshellChangeling.java b/Mage.Sets/src/mage/cards/t/TurtleshellChangeling.java
index 1ebdddedc0..723bf16926 100644
--- a/Mage.Sets/src/mage/cards/t/TurtleshellChangeling.java
+++ b/Mage.Sets/src/mage/cards/t/TurtleshellChangeling.java
@@ -31,7 +31,7 @@ public final class TurtleshellChangeling extends CardImpl {
this.addAbility(new ChangelingAbility());
//{1}{U}: Switch {this}'s power and toughness until end of turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SwitchPowerToughnessSourceEffect(Duration.EndOfTurn), new ManaCostsImpl("{1}{U}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new SwitchPowerToughnessSourceEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{1}{U}")));
}
private TurtleshellChangeling(final TurtleshellChangeling card) {
diff --git a/Mage.Sets/src/mage/cards/t/TuskguardCaptain.java b/Mage.Sets/src/mage/cards/t/TuskguardCaptain.java
index bd626b6799..f1efa67572 100644
--- a/Mage.Sets/src/mage/cards/t/TuskguardCaptain.java
+++ b/Mage.Sets/src/mage/cards/t/TuskguardCaptain.java
@@ -31,7 +31,7 @@ public final class TuskguardCaptain extends CardImpl {
this.toughness = new MageInt(3);
// Outlast G
- this.addAbility(new OutlastAbility(new ManaCostsImpl("{G}")));
+ this.addAbility(new OutlastAbility(new ManaCostsImpl<>("{G}")));
// Each creature you control with a +1/+1 counter on it has trample.
this.addAbility(new SimpleStaticAbility(
Zone.BATTLEFIELD,
diff --git a/Mage.Sets/src/mage/cards/t/Twigwalker.java b/Mage.Sets/src/mage/cards/t/Twigwalker.java
index e0fcaaf031..0455ef556b 100644
--- a/Mage.Sets/src/mage/cards/t/Twigwalker.java
+++ b/Mage.Sets/src/mage/cards/t/Twigwalker.java
@@ -30,7 +30,7 @@ public final class Twigwalker extends CardImpl {
this.toughness = new MageInt(2);
// {1}{G}, Sacrifice Twigwalker: Two target creatures each get +2/+2 until end of turn.
- Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{1}{G}"));
+ Ability ability = new SimpleActivatedAbility(new BoostTargetEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{G}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent(2, 2, new FilterCreaturePermanent("creatures each"), false));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/TwilightMire.java b/Mage.Sets/src/mage/cards/t/TwilightMire.java
index 38f5fe6e4b..025e2ae32a 100644
--- a/Mage.Sets/src/mage/cards/t/TwilightMire.java
+++ b/Mage.Sets/src/mage/cards/t/TwilightMire.java
@@ -26,15 +26,15 @@ public final class TwilightMire extends CardImpl {
this.addAbility(new ColorlessManaAbility());
// {B/G}, {tap}: Add {B}{B}, {B}{G}, or {G}{G}.
- SimpleManaAbility ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.BlackMana(2), new ManaCostsImpl("{B/G}"));
+ SimpleManaAbility ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.BlackMana(2), new ManaCostsImpl<>("{B/G}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
- ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(0, 0, 1, 0, 1, 0, 0, 0), new ManaCostsImpl("{B/G}"));
+ ability = new SimpleManaAbility(Zone.BATTLEFIELD, new Mana(0, 0, 1, 0, 1, 0, 0, 0), new ManaCostsImpl<>("{B/G}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
- ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.GreenMana(2), new ManaCostsImpl("{B/G}"));
+ ability = new SimpleManaAbility(Zone.BATTLEFIELD, Mana.GreenMana(2), new ManaCostsImpl<>("{B/G}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability); }
diff --git a/Mage.Sets/src/mage/cards/t/TwilightPanther.java b/Mage.Sets/src/mage/cards/t/TwilightPanther.java
index 68955242d3..68907be4be 100644
--- a/Mage.Sets/src/mage/cards/t/TwilightPanther.java
+++ b/Mage.Sets/src/mage/cards/t/TwilightPanther.java
@@ -29,7 +29,7 @@ public final class TwilightPanther extends CardImpl {
// {B}: Twilight Panther gains deathtouch until end of turn.
this.addAbility(new SimpleActivatedAbility(new GainAbilitySourceEffect(
DeathtouchAbility.getInstance(), Duration.EndOfTurn
- ), new ManaCostsImpl("{B}")));
+ ), new ManaCostsImpl<>("{B}")));
}
private TwilightPanther(final TwilightPanther card) {
diff --git a/Mage.Sets/src/mage/cards/t/TwilightsCall.java b/Mage.Sets/src/mage/cards/t/TwilightsCall.java
index 6424e301f8..f67d7ef3f4 100644
--- a/Mage.Sets/src/mage/cards/t/TwilightsCall.java
+++ b/Mage.Sets/src/mage/cards/t/TwilightsCall.java
@@ -30,7 +30,7 @@ public final class TwilightsCall extends CardImpl {
Effect effect = new TwilightsCallEffect();
// You may cast Twilight's Call as though it had flash if you pay {2} more to cast it.
- Ability ability = new PayMoreToCastAsThoughtItHadFlashAbility(this, new ManaCostsImpl("{2}"));
+ Ability ability = new PayMoreToCastAsThoughtItHadFlashAbility(this, new ManaCostsImpl<>("{2}"));
ability.addEffect(effect);
this.addAbility(ability);
// Each player returns all creature cards from their graveyard to the battlefield.
diff --git a/Mage.Sets/src/mage/cards/t/TwinbladeSlasher.java b/Mage.Sets/src/mage/cards/t/TwinbladeSlasher.java
index 6968e6579f..1f613659f4 100644
--- a/Mage.Sets/src/mage/cards/t/TwinbladeSlasher.java
+++ b/Mage.Sets/src/mage/cards/t/TwinbladeSlasher.java
@@ -28,7 +28,7 @@ public final class TwinbladeSlasher extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
this.addAbility(WitherAbility.getInstance());
- this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl("{1}{G}")));
+ this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{G}")));
}
private TwinbladeSlasher(final TwinbladeSlasher card) {
diff --git a/Mage.Sets/src/mage/cards/t/TwinsOfMaurerEstate.java b/Mage.Sets/src/mage/cards/t/TwinsOfMaurerEstate.java
index b2c237c73a..0c981534f9 100644
--- a/Mage.Sets/src/mage/cards/t/TwinsOfMaurerEstate.java
+++ b/Mage.Sets/src/mage/cards/t/TwinsOfMaurerEstate.java
@@ -23,7 +23,7 @@ public final class TwinsOfMaurerEstate extends CardImpl {
this.toughness = new MageInt(5);
// Madness {2}{B} (If you discard this card, discard it into exile. When you do, cast it for its madness cost or put it into your graveyard.)
- this.addAbility(new MadnessAbility(new ManaCostsImpl("{2}{B}")));
+ this.addAbility(new MadnessAbility(new ManaCostsImpl<>("{2}{B}")));
}
private TwinsOfMaurerEstate(final TwinsOfMaurerEstate card) {
diff --git a/Mage.Sets/src/mage/cards/t/TwistedAbomination.java b/Mage.Sets/src/mage/cards/t/TwistedAbomination.java
index a943350c6e..2159dcba52 100644
--- a/Mage.Sets/src/mage/cards/t/TwistedAbomination.java
+++ b/Mage.Sets/src/mage/cards/t/TwistedAbomination.java
@@ -28,9 +28,9 @@ public final class TwistedAbomination extends CardImpl {
this.toughness = new MageInt(3);
// {B}: Regenerate Twisted Abomination.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
// Swampcycling {2}
- this.addAbility(new SwampcyclingAbility(new ManaCostsImpl("{2}")));
+ this.addAbility(new SwampcyclingAbility(new ManaCostsImpl<>("{2}")));
}
private TwistedAbomination(final TwistedAbomination card) {
diff --git a/Mage.Sets/src/mage/cards/t/TwoHeadedDragon.java b/Mage.Sets/src/mage/cards/t/TwoHeadedDragon.java
index a5667070a0..d1bcd5b596 100644
--- a/Mage.Sets/src/mage/cards/t/TwoHeadedDragon.java
+++ b/Mage.Sets/src/mage/cards/t/TwoHeadedDragon.java
@@ -34,7 +34,7 @@ public final class TwoHeadedDragon extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {1}{R}: Two-Headed Dragon gets +2/+0 until end of turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2,0, Duration.EndOfTurn),new ManaCostsImpl("{1}{R}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(2,0, Duration.EndOfTurn),new ManaCostsImpl<>("{1}{R}")));
// Menace (This creature can't be blocked except by two or more creatures.)
this.addAbility(new MenaceAbility());
diff --git a/Mage.Sets/src/mage/cards/t/TymaretChosenFromDeath.java b/Mage.Sets/src/mage/cards/t/TymaretChosenFromDeath.java
index 90c4a3c57a..c1011e08fd 100644
--- a/Mage.Sets/src/mage/cards/t/TymaretChosenFromDeath.java
+++ b/Mage.Sets/src/mage/cards/t/TymaretChosenFromDeath.java
@@ -41,7 +41,7 @@ public final class TymaretChosenFromDeath extends CardImpl {
);
// {1}{B}: Exile up to two target cards from graveyards. You gain 1 life for each creature card exiled this way.
- Ability ability = new SimpleActivatedAbility(new TymaretChosenFromDeathEffect(), new ManaCostsImpl("{1}{B}"));
+ Ability ability = new SimpleActivatedAbility(new TymaretChosenFromDeathEffect(), new ManaCostsImpl<>("{1}{B}"));
ability.addTarget(new TargetCardInGraveyard(0, 2, StaticFilters.FILTER_CARD));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/t/TymaretTheMurderKing.java b/Mage.Sets/src/mage/cards/t/TymaretTheMurderKing.java
index a45c579bb1..0240092a1b 100644
--- a/Mage.Sets/src/mage/cards/t/TymaretTheMurderKing.java
+++ b/Mage.Sets/src/mage/cards/t/TymaretTheMurderKing.java
@@ -36,12 +36,12 @@ public final class TymaretTheMurderKing extends CardImpl {
this.toughness = new MageInt(2);
// {1}{R}, Sacrifice another creature: Tymaret, the Murder King deals 2 damage to target player.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl("{1}{R}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(2), new ManaCostsImpl<>("{1}{R}"));
ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(1, 1, StaticFilters.FILTER_CONTROLLED_ANOTHER_CREATURE, false)));
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability);
// {1}{B}, Sacrifice a creature: Return Tymaret from your graveyard to your hand.
- ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToHandEffect(), new ManaCostsImpl("{1}{B}"));
+ ability = new SimpleActivatedAbility(Zone.GRAVEYARD, new ReturnSourceFromGraveyardToHandEffect(), new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new SacrificeTargetCost(new TargetControlledCreaturePermanent(FILTER_CONTROLLED_CREATURE_SHORT_TEXT)));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/t/Tyrranax.java b/Mage.Sets/src/mage/cards/t/Tyrranax.java
index 31e776bc20..0536257ab1 100644
--- a/Mage.Sets/src/mage/cards/t/Tyrranax.java
+++ b/Mage.Sets/src/mage/cards/t/Tyrranax.java
@@ -28,7 +28,7 @@ public final class Tyrranax extends CardImpl {
this.toughness = new MageInt(4);
// {1}{G}: Tyrranax gets -1/+1 until end of turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(-1, 1, Duration.EndOfTurn), new ManaCostsImpl("{1}{G}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(-1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{1}{G}")));
}
private Tyrranax(final Tyrranax card) {