diff --git a/Mage.Sets/src/mage/cards/l/LAATGunship.java b/Mage.Sets/src/mage/cards/l/LAATGunship.java
index 5486200d05c..5346535dd89 100644
--- a/Mage.Sets/src/mage/cards/l/LAATGunship.java
+++ b/Mage.Sets/src/mage/cards/l/LAATGunship.java
@@ -33,7 +33,7 @@ public final class LAATGunship extends CardImpl {
this.addAbility(new AttacksTriggeredAbility(new CreateTokenEffect(new TrooperToken(), 1, true, true), false));
// {W}: LAAT Gunship gains spaceflight until the end of turn. Activate this ability only as a sorcery
- this.addAbility(new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(SpaceflightAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{W}")));
+ this.addAbility(new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(SpaceflightAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{W}")));
}
diff --git a/Mage.Sets/src/mage/cards/l/LabyrinthGuardian.java b/Mage.Sets/src/mage/cards/l/LabyrinthGuardian.java
index 9204db31423..1ac7ca722cb 100644
--- a/Mage.Sets/src/mage/cards/l/LabyrinthGuardian.java
+++ b/Mage.Sets/src/mage/cards/l/LabyrinthGuardian.java
@@ -37,7 +37,7 @@ public final class LabyrinthGuardian extends CardImpl {
this.addAbility(new LabyrinthGuardianTriggeredAbility());
// 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/l/LabyrinthRaptor.java b/Mage.Sets/src/mage/cards/l/LabyrinthRaptor.java
index f7ed9df1318..33da0b8d7c9 100644
--- a/Mage.Sets/src/mage/cards/l/LabyrinthRaptor.java
+++ b/Mage.Sets/src/mage/cards/l/LabyrinthRaptor.java
@@ -61,7 +61,7 @@ public final class LabyrinthRaptor extends CardImpl {
// {B}{R}: Creatures you control with menace get +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(new BoostAllEffect(
1, 0, Duration.EndOfTurn, filter2, false
- ), new ManaCostsImpl("{B}{R}")));
+ ), new ManaCostsImpl<>("{B}{R}")));
}
private LabyrinthRaptor(final LabyrinthRaptor card) {
diff --git a/Mage.Sets/src/mage/cards/l/LadyEvangela.java b/Mage.Sets/src/mage/cards/l/LadyEvangela.java
index dada1a21e82..4190cd9419f 100644
--- a/Mage.Sets/src/mage/cards/l/LadyEvangela.java
+++ b/Mage.Sets/src/mage/cards/l/LadyEvangela.java
@@ -35,7 +35,7 @@ public final class LadyEvangela extends CardImpl {
// {W}{B}, {tap}: Prevent all combat damage that would be dealt by target creature this turn.
Effect effect = new PreventDamageByTargetEffect(Duration.EndOfTurn, true);
effect.setText("Prevent all combat damage that would be dealt by target creature this turn.");
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{W}{B}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{W}{B}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LairOfTheHydra.java b/Mage.Sets/src/mage/cards/l/LairOfTheHydra.java
index b79cd766930..b7331464ad7 100644
--- a/Mage.Sets/src/mage/cards/l/LairOfTheHydra.java
+++ b/Mage.Sets/src/mage/cards/l/LairOfTheHydra.java
@@ -47,7 +47,7 @@ public final class LairOfTheHydra extends CardImpl {
this.addAbility(new GreenManaAbility());
// {X}{G}: Until end of turn, Lair of the Hydra becomes an X/X green Hydra creature. It's still a land. X can't be 0.
- ManaCostsImpl manaCosts = new ManaCostsImpl("{X}{G}");
+ ManaCostsImpl manaCosts = new ManaCostsImpl<>("{X}{G}");
for (Object cost : manaCosts) {
if (cost instanceof VariableManaCost) {
((VariableManaCost) cost).setMinX(1);
diff --git a/Mage.Sets/src/mage/cards/l/LanternSpirit.java b/Mage.Sets/src/mage/cards/l/LanternSpirit.java
index 91d30add3f8..ca2bc272ede 100644
--- a/Mage.Sets/src/mage/cards/l/LanternSpirit.java
+++ b/Mage.Sets/src/mage/cards/l/LanternSpirit.java
@@ -28,7 +28,7 @@ public final class LanternSpirit extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {U}: Return Lantern Spirit to its owner's hand.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ManaCostsImpl("{U}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandSourceEffect(true), new ManaCostsImpl<>("{U}")));
}
private LanternSpirit(final LanternSpirit card) {
diff --git a/Mage.Sets/src/mage/cards/l/LapisLazuliTalisman.java b/Mage.Sets/src/mage/cards/l/LapisLazuliTalisman.java
index 032322c8938..46ee7b25574 100644
--- a/Mage.Sets/src/mage/cards/l/LapisLazuliTalisman.java
+++ b/Mage.Sets/src/mage/cards/l/LapisLazuliTalisman.java
@@ -30,7 +30,7 @@ public final class LapisLazuliTalisman extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
// Whenever a player casts a blue spell, you may pay {3}. If you do, untap target permanent.
- Ability ability = new SpellCastAllTriggeredAbility(new DoIfCostPaid(new UntapTargetEffect(), new ManaCostsImpl("{3}")), filter, false);
+ Ability ability = new SpellCastAllTriggeredAbility(new DoIfCostPaid(new UntapTargetEffect(), new ManaCostsImpl<>("{3}")), filter, false);
ability.addTarget(new TargetPermanent());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/LaquatussChampion.java b/Mage.Sets/src/mage/cards/l/LaquatussChampion.java
index 4c0310d07dc..2b92c4d594c 100644
--- a/Mage.Sets/src/mage/cards/l/LaquatussChampion.java
+++ b/Mage.Sets/src/mage/cards/l/LaquatussChampion.java
@@ -44,7 +44,7 @@ public final class LaquatussChampion extends CardImpl {
// When Laquatus's Champion leaves the battlefield, that player gains 6 life.
this.addAbility(new LaquatussChampionLeavesBattlefieldTriggeredAbility());
// {B}: Regenerate Laquatus's Champion.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
}
private LaquatussChampion(final LaquatussChampion card) {
diff --git a/Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java b/Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java
index 1d7828cb1ad..73a63ba2369 100644
--- a/Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java
+++ b/Mage.Sets/src/mage/cards/l/LathlissDragonQueen.java
@@ -59,7 +59,7 @@ public final class LathlissDragonQueen extends CardImpl {
1, 0, Duration.EndOfTurn,
filter2, false
),
- new ManaCostsImpl("{1}{R}")
+ new ManaCostsImpl<>("{1}{R}")
));
}
diff --git a/Mage.Sets/src/mage/cards/l/LatullaKeldonOverseer.java b/Mage.Sets/src/mage/cards/l/LatullaKeldonOverseer.java
index a1334d79684..3178a9b5420 100644
--- a/Mage.Sets/src/mage/cards/l/LatullaKeldonOverseer.java
+++ b/Mage.Sets/src/mage/cards/l/LatullaKeldonOverseer.java
@@ -35,7 +35,7 @@ public final class LatullaKeldonOverseer extends CardImpl {
this.toughness = new MageInt(3);
// {X}{R}, {tap}, Discard two cards: Latulla, Keldon Overseer deals X damage to any target.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(ManacostVariableValue.REGULAR), new ManaCostsImpl("{X}{R}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DamageTargetEffect(ManacostVariableValue.REGULAR), new ManaCostsImpl<>("{X}{R}"));
ability.addCost(new TapSourceCost());
ability.addCost(new DiscardTargetCost(new TargetCardInHand(2, 2, new FilterCard("two cards"))));
ability.addTarget(new TargetAnyTarget());
diff --git a/Mage.Sets/src/mage/cards/l/LavaSerpent.java b/Mage.Sets/src/mage/cards/l/LavaSerpent.java
index 7451bc2e680..6f495230907 100644
--- a/Mage.Sets/src/mage/cards/l/LavaSerpent.java
+++ b/Mage.Sets/src/mage/cards/l/LavaSerpent.java
@@ -28,7 +28,7 @@ public final class LavaSerpent extends CardImpl {
this.addAbility(HasteAbility.getInstance());
// Cycling {2}
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}")));
}
private LavaSerpent(final LavaSerpent card) {
diff --git a/Mage.Sets/src/mage/cards/l/LavaZombie.java b/Mage.Sets/src/mage/cards/l/LavaZombie.java
index 257ed34f42c..5708debdf71 100644
--- a/Mage.Sets/src/mage/cards/l/LavaZombie.java
+++ b/Mage.Sets/src/mage/cards/l/LavaZombie.java
@@ -41,7 +41,7 @@ public final class LavaZombie extends CardImpl {
// When Lava Zombie enters the battlefield, return a black or red creature you control to its owner's hand.
this.addAbility(new EntersBattlefieldTriggeredAbility(new ReturnToHandChosenControlledPermanentEffect(filter), false));
// {2}: Lava Zombie gets +1/+0 until end of turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl("{2}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1,0, Duration.EndOfTurn), new ManaCostsImpl<>("{2}")));
}
private LavaZombie(final LavaZombie card) {
diff --git a/Mage.Sets/src/mage/cards/l/LavaballTrap.java b/Mage.Sets/src/mage/cards/l/LavaballTrap.java
index f6bd230a4b2..787bfb20558 100644
--- a/Mage.Sets/src/mage/cards/l/LavaballTrap.java
+++ b/Mage.Sets/src/mage/cards/l/LavaballTrap.java
@@ -32,7 +32,7 @@ public final class LavaballTrap extends CardImpl {
this.subtype.add(SubType.TRAP);
// If an opponent had two or more lands enter the battlefield under their control this turn, you may pay {3}{R}{R} rather than pay Lavaball Trap's mana cost.
- this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl("{3}{R}{R}"), LavaballTrapCondition.instance), new PermanentsEnteredBattlefieldWatcher());
+ this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl<>("{3}{R}{R}"), LavaballTrapCondition.instance), new PermanentsEnteredBattlefieldWatcher());
// Destroy two target lands. Lavaball Trap deals 4 damage to each creature.
this.getSpellAbility().addEffect(new DestroyTargetEffect());
diff --git a/Mage.Sets/src/mage/cards/l/LavaclawReaches.java b/Mage.Sets/src/mage/cards/l/LavaclawReaches.java
index a8ae2337a2b..2c70d04c80c 100644
--- a/Mage.Sets/src/mage/cards/l/LavaclawReaches.java
+++ b/Mage.Sets/src/mage/cards/l/LavaclawReaches.java
@@ -36,7 +36,7 @@ public final class LavaclawReaches extends CardImpl {
this.addAbility(new RedManaAbility());
// {1}{B}{R}: Until end of turn, Lavaclaw Reaches becomes a 2/2 black and red Elemental creature with ": This creature gets +X/+0 until end of turn." It's still a land.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new LavaclawReachesToken(), "land", Duration.EndOfTurn), new ManaCostsImpl("{1}{B}{R}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new LavaclawReachesToken(), "land", Duration.EndOfTurn), new ManaCostsImpl<>("{1}{B}{R}")));
}
private LavaclawReaches(final LavaclawReaches card) {
@@ -60,7 +60,7 @@ class LavaclawReachesToken extends TokenImpl {
color.setBlack(true);
power = new MageInt(2);
toughness = new MageInt(2);
- addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(ManacostVariableValue.REGULAR, StaticValue.get(0), Duration.EndOfTurn), new ManaCostsImpl("{X}")));
+ addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(ManacostVariableValue.REGULAR, StaticValue.get(0), Duration.EndOfTurn), new ManaCostsImpl<>("{X}")));
}
public LavaclawReachesToken(final LavaclawReachesToken token) {
super(token);
diff --git a/Mage.Sets/src/mage/cards/l/LavafumeInvoker.java b/Mage.Sets/src/mage/cards/l/LavafumeInvoker.java
index d9efb2c675b..dceda4ad9c2 100644
--- a/Mage.Sets/src/mage/cards/l/LavafumeInvoker.java
+++ b/Mage.Sets/src/mage/cards/l/LavafumeInvoker.java
@@ -28,7 +28,7 @@ public final class LavafumeInvoker extends CardImpl {
this.toughness = new MageInt(2);
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
- new BoostControlledEffect(3, 0, Duration.EndOfTurn), new ManaCostsImpl("{8}")));
+ new BoostControlledEffect(3, 0, Duration.EndOfTurn), new ManaCostsImpl<>("{8}")));
}
private LavafumeInvoker(final LavafumeInvoker card) {
diff --git a/Mage.Sets/src/mage/cards/l/LayClaim.java b/Mage.Sets/src/mage/cards/l/LayClaim.java
index c0a11241af8..ccf96d255ea 100644
--- a/Mage.Sets/src/mage/cards/l/LayClaim.java
+++ b/Mage.Sets/src/mage/cards/l/LayClaim.java
@@ -39,7 +39,7 @@ public final class LayClaim extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new ControlEnchantedEffect("permanent")));
// Cycling {2}
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}")));
}
diff --git a/Mage.Sets/src/mage/cards/l/LayWaste.java b/Mage.Sets/src/mage/cards/l/LayWaste.java
index 9531ec34bd9..07773a38b11 100644
--- a/Mage.Sets/src/mage/cards/l/LayWaste.java
+++ b/Mage.Sets/src/mage/cards/l/LayWaste.java
@@ -23,7 +23,7 @@ public final class LayWaste extends CardImpl {
this.getSpellAbility().addEffect(new DestroyTargetEffect());
this.getSpellAbility().addTarget(new TargetLandPermanent());
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}")));
}
private LayWaste(final LayWaste card) {
diff --git a/Mage.Sets/src/mage/cards/l/LazavTheMultifarious.java b/Mage.Sets/src/mage/cards/l/LazavTheMultifarious.java
index e5f78b3f615..e42417634c5 100644
--- a/Mage.Sets/src/mage/cards/l/LazavTheMultifarious.java
+++ b/Mage.Sets/src/mage/cards/l/LazavTheMultifarious.java
@@ -52,7 +52,7 @@ public final class LazavTheMultifarious extends CardImpl {
// {X}: Lazav, the Multifarious becomes a copy of target creature card in your graveyard with converted mana cost X, except its name is Lazav, the Multifarious, it's legendary in addition to its other types, and it has this ability.
Ability ability = new SimpleActivatedAbility(
new LazavTheMultifariousEffect(),
- new ManaCostsImpl("{X}")
+ new ManaCostsImpl<>("{X}")
);
ability.setTargetAdjuster(LazavTheMultifariousAdjuster.instance);
this.addAbility(ability);
@@ -133,7 +133,7 @@ class LazavTheMultifariousCopyApplier extends CopyApplier {
public boolean apply(Game game, MageObject blueprint, Ability source, UUID copyToObjectId) {
Ability ability = new SimpleActivatedAbility(
new LazavTheMultifariousEffect(),
- new ManaCostsImpl("{X}")
+ new ManaCostsImpl<>("{X}")
);
ability.setTargetAdjuster(LazavTheMultifariousAdjuster.instance);
blueprint.getAbilities().add(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LeafdrakeRoost.java b/Mage.Sets/src/mage/cards/l/LeafdrakeRoost.java
index fbe495e9bba..4e0bea343e3 100644
--- a/Mage.Sets/src/mage/cards/l/LeafdrakeRoost.java
+++ b/Mage.Sets/src/mage/cards/l/LeafdrakeRoost.java
@@ -41,7 +41,7 @@ public final class LeafdrakeRoost extends CardImpl {
this.addAbility(ability);
// Enchanted land has "{G}{U}, {tap}: Create a 2/2 green and blue Drake creature token with flying."
- Ability abilityToGain = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new LeafdrakeRoostDrakeToken()), new ManaCostsImpl("{G}{U}"));
+ Ability abilityToGain = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new LeafdrakeRoostDrakeToken()), new ManaCostsImpl<>("{G}{U}"));
abilityToGain.addCost(new TapSourceCost());
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new GainAbilityAttachedEffect(abilityToGain, AttachmentType.AURA, Duration.WhileOnBattlefield,
"Enchanted land has \"{G}{U}, {t}: Create a 2/2 green and blue Drake creature token with flying.\"")));
diff --git a/Mage.Sets/src/mage/cards/l/LeafkinAvenger.java b/Mage.Sets/src/mage/cards/l/LeafkinAvenger.java
index 5a1e13ed873..9f44e17eb50 100644
--- a/Mage.Sets/src/mage/cards/l/LeafkinAvenger.java
+++ b/Mage.Sets/src/mage/cards/l/LeafkinAvenger.java
@@ -51,7 +51,7 @@ public final class LeafkinAvenger extends CardImpl {
Ability ability = new SimpleActivatedAbility(
new DamageTargetEffect(xValue2)
.setText("{this} deals damage equal to its power to target player or planeswalker"),
- new ManaCostsImpl("{7}{R}")
+ new ManaCostsImpl<>("{7}{R}")
);
ability.addTarget(new TargetPlayerOrPlaneswalker());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LeagueGuildmage.java b/Mage.Sets/src/mage/cards/l/LeagueGuildmage.java
index cb9c694d33e..f207e847d6c 100644
--- a/Mage.Sets/src/mage/cards/l/LeagueGuildmage.java
+++ b/Mage.Sets/src/mage/cards/l/LeagueGuildmage.java
@@ -44,7 +44,7 @@ public final class LeagueGuildmage extends CardImpl {
// {3}{U}, {T}: Draw a card.
Ability ability = new SimpleActivatedAbility(
new DrawCardSourceControllerEffect(1),
- new ManaCostsImpl("{3}{U}")
+ new ManaCostsImpl<>("{3}{U}")
);
ability.addCost(new TapSourceCost());
this.addAbility(ability);
@@ -52,7 +52,7 @@ public final class LeagueGuildmage extends CardImpl {
// {X}{R}, {T}: Copy target instant or sorcery spell you control with converted mana cost X. You may choose new targets for the copy.
ability = new SimpleActivatedAbility(
new CopyTargetSpellEffect(),
- new ManaCostsImpl("{X}{R}")
+ new ManaCostsImpl<>("{X}{R}")
);
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetSpell(filter));
diff --git a/Mage.Sets/src/mage/cards/l/LeapingLizard.java b/Mage.Sets/src/mage/cards/l/LeapingLizard.java
index 80a3878ff5d..1c4b6d9dd14 100644
--- a/Mage.Sets/src/mage/cards/l/LeapingLizard.java
+++ b/Mage.Sets/src/mage/cards/l/LeapingLizard.java
@@ -32,7 +32,7 @@ public final class LeapingLizard extends CardImpl {
// {1}{G}: Leaping Lizard gets -0/-1 and gains flying until end of turn.
Effect effect = new BoostSourceEffect(0, -1, Duration.EndOfTurn);
effect.setText("{this} gets -0/-1");
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{1}{G}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{1}{G}"));
effect = new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn);
effect.setText("and gains flying until end of turn");
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/l/LeapingMaster.java b/Mage.Sets/src/mage/cards/l/LeapingMaster.java
index 3023d2ea470..1bf0c722832 100644
--- a/Mage.Sets/src/mage/cards/l/LeapingMaster.java
+++ b/Mage.Sets/src/mage/cards/l/LeapingMaster.java
@@ -30,7 +30,7 @@ public final class LeapingMaster extends CardImpl {
// {2}{W}: Leaping Master gains flying until end of turn
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn),
- new ManaCostsImpl("{2}{W}")));
+ new ManaCostsImpl<>("{2}{W}")));
}
private LeapingMaster(final LeapingMaster card) {
diff --git a/Mage.Sets/src/mage/cards/l/LedevChampion.java b/Mage.Sets/src/mage/cards/l/LedevChampion.java
index 0a733a52153..3aec8816d6d 100644
--- a/Mage.Sets/src/mage/cards/l/LedevChampion.java
+++ b/Mage.Sets/src/mage/cards/l/LedevChampion.java
@@ -42,7 +42,7 @@ public final class LedevChampion extends CardImpl {
this.addAbility(new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new CreateTokenEffect(new SoldierLifelinkToken()),
- new ManaCostsImpl("{3}{G}{W}")
+ new ManaCostsImpl<>("{3}{G}{W}")
));
}
diff --git a/Mage.Sets/src/mage/cards/l/LeechBonder.java b/Mage.Sets/src/mage/cards/l/LeechBonder.java
index 9959fd28819..478d5007ebd 100644
--- a/Mage.Sets/src/mage/cards/l/LeechBonder.java
+++ b/Mage.Sets/src/mage/cards/l/LeechBonder.java
@@ -46,7 +46,7 @@ public final class LeechBonder extends CardImpl {
this.addAbility(new EntersBattlefieldAbility(new AddCountersSourceEffect(CounterType.M1M1.createInstance(2)), "with two -1/-1 counters on it"));
// {U}, {untap}: Move a counter from target creature onto another target creature.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LeechBonderEffect(), new ManaCostsImpl("{U}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new LeechBonderEffect(), new ManaCostsImpl<>("{U}"));
ability.addCost(new UntapSourceCost());
// target 1
TargetCreaturePermanent target1 = new TargetCreaturePermanent(new FilterCreaturePermanent("creature to remove counter from"));
diff --git a/Mage.Sets/src/mage/cards/l/LeechriddenSwamp.java b/Mage.Sets/src/mage/cards/l/LeechriddenSwamp.java
index 478f0e2ee25..2d1d6e334e1 100644
--- a/Mage.Sets/src/mage/cards/l/LeechriddenSwamp.java
+++ b/Mage.Sets/src/mage/cards/l/LeechriddenSwamp.java
@@ -50,7 +50,7 @@ public final class LeechriddenSwamp extends CardImpl {
Ability ability = new ActivateIfConditionActivatedAbility(
Zone.BATTLEFIELD,
new LeechriddenSwampLoseLifeEffect(),
- new ManaCostsImpl("{B}"),
+ new ManaCostsImpl<>("{B}"),
new PermanentsOnTheBattlefieldCondition(
filter,
ComparisonType.MORE_THAN,
diff --git a/Mage.Sets/src/mage/cards/l/LegacyWeapon.java b/Mage.Sets/src/mage/cards/l/LegacyWeapon.java
index f0203de56f5..ceab00aeb40 100644
--- a/Mage.Sets/src/mage/cards/l/LegacyWeapon.java
+++ b/Mage.Sets/src/mage/cards/l/LegacyWeapon.java
@@ -27,7 +27,7 @@ public final class LegacyWeapon extends CardImpl {
// {W}{U}{B}{R}{G}: Exile target permanent.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new ExileTargetEffect(),
- new ManaCostsImpl("{W}{U}{B}{R}{G}"));
+ new ManaCostsImpl<>("{W}{U}{B}{R}{G}"));
ability.addTarget(new TargetPermanent());
this.addAbility(ability);
// If Legacy Weapon would be put into a graveyard from anywhere, reveal Legacy Weapon and shuffle it into its owner's library instead.
diff --git a/Mage.Sets/src/mage/cards/l/LegionGuildmage.java b/Mage.Sets/src/mage/cards/l/LegionGuildmage.java
index d511b76f4c4..d14215bfff0 100644
--- a/Mage.Sets/src/mage/cards/l/LegionGuildmage.java
+++ b/Mage.Sets/src/mage/cards/l/LegionGuildmage.java
@@ -41,7 +41,7 @@ public final class LegionGuildmage extends CardImpl {
// {5}{R}, {T}: Legion Guildmage deals 3 damage to each opponent.
Ability ability = new SimpleActivatedAbility(
new DamagePlayersEffect(3, TargetController.OPPONENT),
- new ManaCostsImpl("{5}{R}")
+ new ManaCostsImpl<>("{5}{R}")
);
ability.addCost(new TapSourceCost());
this.addAbility(ability);
@@ -49,7 +49,7 @@ public final class LegionGuildmage extends CardImpl {
// {2}{W}, {T}: Tap another target creature.
ability = new SimpleActivatedAbility(
new TapTargetEffect("tap another target creature"),
- new ManaCostsImpl("{2}{W}")
+ new ManaCostsImpl<>("{2}{W}")
);
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetCreaturePermanent(filter));
diff --git a/Mage.Sets/src/mage/cards/l/LeoninArbiter.java b/Mage.Sets/src/mage/cards/l/LeoninArbiter.java
index e68cf59e25b..f5ed2b15f0b 100644
--- a/Mage.Sets/src/mage/cards/l/LeoninArbiter.java
+++ b/Mage.Sets/src/mage/cards/l/LeoninArbiter.java
@@ -54,7 +54,7 @@ class LeoninArbiterSpecialAction extends SpecialAction {
public LeoninArbiterSpecialAction(final String keyString) {
super(Zone.BATTLEFIELD);
- this.addCost(new ManaCostsImpl("{2}"));
+ this.addCost(new ManaCostsImpl<>("{2}"));
this.addEffect(new LeoninArbiterIgnoreEffect(keyString));
this.setMayActivate(TargetController.ANY);
}
diff --git a/Mage.Sets/src/mage/cards/l/LeoninSunStandard.java b/Mage.Sets/src/mage/cards/l/LeoninSunStandard.java
index 0774fb5fb23..7dc73f48d9d 100644
--- a/Mage.Sets/src/mage/cards/l/LeoninSunStandard.java
+++ b/Mage.Sets/src/mage/cards/l/LeoninSunStandard.java
@@ -20,7 +20,7 @@ public final class LeoninSunStandard extends CardImpl {
public LeoninSunStandard(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{2}");
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURE, false), new ManaCostsImpl("{1}{W}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostControlledEffect(1, 1, Duration.EndOfTurn, StaticFilters.FILTER_PERMANENT_CREATURE, false), new ManaCostsImpl<>("{1}{W}")));
}
private LeoninSunStandard(final LeoninSunStandard card) {
diff --git a/Mage.Sets/src/mage/cards/l/LeshracsSigil.java b/Mage.Sets/src/mage/cards/l/LeshracsSigil.java
index 941b5bea38f..8bcb6385200 100644
--- a/Mage.Sets/src/mage/cards/l/LeshracsSigil.java
+++ b/Mage.Sets/src/mage/cards/l/LeshracsSigil.java
@@ -34,10 +34,10 @@ public final class LeshracsSigil extends CardImpl {
// Whenever an opponent casts a green spell, you may pay {B}{B}. If you do, look at that player's hand and choose a card from it. The player discards that card.
this.addAbility(new SpellCastOpponentTriggeredAbility(
- Zone.BATTLEFIELD, new DoIfCostPaid(new DiscardCardYouChooseTargetEffect(), new ManaCostsImpl("{B}{B}")), filter, false, SetTargetPointer.PLAYER));
+ Zone.BATTLEFIELD, new DoIfCostPaid(new DiscardCardYouChooseTargetEffect(), new ManaCostsImpl<>("{B}{B}")), filter, false, SetTargetPointer.PLAYER));
// {B}{B}: Return Leshrac's Sigil to its owner's hand.
- this.addAbility(new SimpleActivatedAbility(new ReturnToHandSourceEffect(true), new ManaCostsImpl("{B}{B}")));
+ this.addAbility(new SimpleActivatedAbility(new ReturnToHandSourceEffect(true), new ManaCostsImpl<>("{B}{B}")));
}
private LeshracsSigil(final LeshracsSigil card) {
diff --git a/Mage.Sets/src/mage/cards/l/LethalVapors.java b/Mage.Sets/src/mage/cards/l/LethalVapors.java
index 6037fb3a8c3..9c69bf2f7b5 100644
--- a/Mage.Sets/src/mage/cards/l/LethalVapors.java
+++ b/Mage.Sets/src/mage/cards/l/LethalVapors.java
@@ -34,7 +34,7 @@ public final class LethalVapors extends CardImpl {
false, SetTargetPointer.PERMANENT, null));
// {0}: Destroy Lethal Vapors. You skip your next turn. Any player may activate this ability.
- SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroySourceEffect(), new ManaCostsImpl("{0}"));
+ SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DestroySourceEffect(), new ManaCostsImpl<>("{0}"));
ability.setMayActivate(TargetController.ANY);
ability.addEffect(new SkipNextTurnSourceEffect());
ability.addEffect(new InfoEffect("Any player may activate this ability"));
diff --git a/Mage.Sets/src/mage/cards/l/LethargyTrap.java b/Mage.Sets/src/mage/cards/l/LethargyTrap.java
index 6450f30c337..caec0fa8e63 100644
--- a/Mage.Sets/src/mage/cards/l/LethargyTrap.java
+++ b/Mage.Sets/src/mage/cards/l/LethargyTrap.java
@@ -26,7 +26,7 @@ public final class LethargyTrap extends CardImpl {
this.subtype.add(SubType.TRAP);
// If three or more creatures are attacking, you may pay {U} rather than pay Lethargy Trap's mana cost.
- this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl("{U}"), LethargyTrapCondition.instance));
+ this.addAbility(new AlternativeCostSourceAbility(new ManaCostsImpl<>("{U}"), LethargyTrapCondition.instance));
// Attacking creatures get -3/-0 until end of turn.
this.getSpellAbility().addEffect(new BoostAllEffect(-3, 0, Duration.EndOfTurn, StaticFilters.FILTER_ATTACKING_CREATURES, false));
diff --git a/Mage.Sets/src/mage/cards/l/LeylineOfAbundance.java b/Mage.Sets/src/mage/cards/l/LeylineOfAbundance.java
index 73234db3b79..5e2344fb419 100644
--- a/Mage.Sets/src/mage/cards/l/LeylineOfAbundance.java
+++ b/Mage.Sets/src/mage/cards/l/LeylineOfAbundance.java
@@ -43,7 +43,7 @@ public final class LeylineOfAbundance extends CardImpl {
this.addAbility(new SimpleActivatedAbility(new AddCountersAllEffect(
CounterType.P1P1.createInstance(),
StaticFilters.FILTER_CONTROLLED_CREATURE
- ), new ManaCostsImpl("{6}{G}{G}")));
+ ), new ManaCostsImpl<>("{6}{G}{G}")));
}
private LeylineOfAbundance(final LeylineOfAbundance card) {
diff --git a/Mage.Sets/src/mage/cards/l/LiberatedDwarf.java b/Mage.Sets/src/mage/cards/l/LiberatedDwarf.java
index 7377e6b9635..b466bb19c2c 100644
--- a/Mage.Sets/src/mage/cards/l/LiberatedDwarf.java
+++ b/Mage.Sets/src/mage/cards/l/LiberatedDwarf.java
@@ -43,7 +43,7 @@ public final class LiberatedDwarf extends CardImpl {
// {R}, Sacrifice Liberated Dwarf: Target green creature gets +1/+0 and gains first strike until end of turn.
Effect effect = new BoostTargetEffect(1, 0, Duration.EndOfTurn);
effect.setText("Target green creature gets +1/+0");
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{R}")); ability.addCost(new SacrificeSourceCost());
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{R}")); ability.addCost(new SacrificeSourceCost());
effect = new GainAbilityTargetEffect(FirstStrikeAbility.getInstance(), Duration.EndOfTurn);
effect.setText("and gains first strike until end of turn");
ability.addEffect(effect);
diff --git a/Mage.Sets/src/mage/cards/l/LiegeOfTheAxe.java b/Mage.Sets/src/mage/cards/l/LiegeOfTheAxe.java
index 4043a22eb3d..7c27c79b250 100644
--- a/Mage.Sets/src/mage/cards/l/LiegeOfTheAxe.java
+++ b/Mage.Sets/src/mage/cards/l/LiegeOfTheAxe.java
@@ -29,7 +29,7 @@ public final class LiegeOfTheAxe extends CardImpl {
// Vigilance
this.addAbility(VigilanceAbility.getInstance());
// Morph {1}{W}
- this.addAbility(new MorphAbility(new ManaCostsImpl("{1}{W}")));
+ this.addAbility(new MorphAbility(new ManaCostsImpl<>("{1}{W}")));
// When Liege of the Axe is turned face up, untap it.
this.addAbility(new TurnedFaceUpSourceTriggeredAbility(new UntapSourceEffect()));
}
diff --git a/Mage.Sets/src/mage/cards/l/LiegeOfThePit.java b/Mage.Sets/src/mage/cards/l/LiegeOfThePit.java
index 2e33b43f41f..ed94c745478 100644
--- a/Mage.Sets/src/mage/cards/l/LiegeOfThePit.java
+++ b/Mage.Sets/src/mage/cards/l/LiegeOfThePit.java
@@ -39,7 +39,7 @@ public final class LiegeOfThePit extends CardImpl {
// At the beginning of your upkeep, sacrifice a creature other than Liege of the Pit. If you can't, Liege of the Pit deals 7 damage to you.
this.addAbility(new BeginningOfUpkeepTriggeredAbility(new LiegeOfThePitEffect(), TargetController.YOU, false));
// Morph {B}{B}{B}{B}
- this.addAbility(new MorphAbility(new ManaCostsImpl("{B}{B}{B}{B}")));
+ this.addAbility(new MorphAbility(new ManaCostsImpl<>("{B}{B}{B}{B}")));
}
private LiegeOfThePit(final LiegeOfThePit card) {
diff --git a/Mage.Sets/src/mage/cards/l/LieutenantKirtar.java b/Mage.Sets/src/mage/cards/l/LieutenantKirtar.java
index 8f87a0ce94a..72e5348f028 100644
--- a/Mage.Sets/src/mage/cards/l/LieutenantKirtar.java
+++ b/Mage.Sets/src/mage/cards/l/LieutenantKirtar.java
@@ -35,7 +35,7 @@ public final class LieutenantKirtar extends CardImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
// {1}{W}, Sacrifice Lieutenant Kirtar: Exile target attacking creature.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl("{1}{W}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ExileTargetEffect(), new ManaCostsImpl<>("{1}{W}"));
ability.addTarget(new TargetAttackingCreature());
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LifecraftersBestiary.java b/Mage.Sets/src/mage/cards/l/LifecraftersBestiary.java
index 31a0a343772..fc5c3fd5823 100644
--- a/Mage.Sets/src/mage/cards/l/LifecraftersBestiary.java
+++ b/Mage.Sets/src/mage/cards/l/LifecraftersBestiary.java
@@ -28,7 +28,7 @@ public final class LifecraftersBestiary extends CardImpl {
this.addAbility(new BeginningOfUpkeepTriggeredAbility(Zone.BATTLEFIELD, new ScryEffect(1, false), TargetController.YOU, false));
// Whenever you cast a creature spell, you may pay {G}. If you do, draw a card.
- this.addAbility(new SpellCastControllerTriggeredAbility(new DoIfCostPaid(new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{G}")), StaticFilters.FILTER_SPELL_A_CREATURE, false));
+ this.addAbility(new SpellCastControllerTriggeredAbility(new DoIfCostPaid(new DrawCardSourceControllerEffect(1), new ManaCostsImpl<>("{G}")), StaticFilters.FILTER_SPELL_A_CREATURE, false));
}
private LifecraftersBestiary(final LifecraftersBestiary card) {
diff --git a/Mage.Sets/src/mage/cards/l/Lifeforce.java b/Mage.Sets/src/mage/cards/l/Lifeforce.java
index fee1aa0ee45..599cdc87294 100644
--- a/Mage.Sets/src/mage/cards/l/Lifeforce.java
+++ b/Mage.Sets/src/mage/cards/l/Lifeforce.java
@@ -30,7 +30,7 @@ public final class Lifeforce extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{G}{G}");
// {G}{G}: Counter target black spell.
- SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl("{G}{G}"));
+ SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CounterTargetEffect(), new ManaCostsImpl<>("{G}{G}"));
ability.addTarget(new TargetSpell(filter));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/LighthouseChronologist.java b/Mage.Sets/src/mage/cards/l/LighthouseChronologist.java
index aa3eec83733..577439ce7b2 100644
--- a/Mage.Sets/src/mage/cards/l/LighthouseChronologist.java
+++ b/Mage.Sets/src/mage/cards/l/LighthouseChronologist.java
@@ -33,7 +33,7 @@ public final class LighthouseChronologist extends LevelerCard {
this.power = new MageInt(1);
this.toughness = new MageInt(3);
- this.addAbility(new LevelUpAbility(new ManaCostsImpl("{U}")));
+ this.addAbility(new LevelUpAbility(new ManaCostsImpl<>("{U}")));
// LEVEL 4-6
// 2/4
diff --git a/Mage.Sets/src/mage/cards/l/LightningBerserker.java b/Mage.Sets/src/mage/cards/l/LightningBerserker.java
index 03da0b0da42..65f5612f9dc 100644
--- a/Mage.Sets/src/mage/cards/l/LightningBerserker.java
+++ b/Mage.Sets/src/mage/cards/l/LightningBerserker.java
@@ -30,7 +30,7 @@ public final class LightningBerserker extends CardImpl {
// {R}: Lightning Berserker gets +1/+0 until end of turn.
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD,
new BoostSourceEffect(1, 0, Duration.EndOfTurn),
- new ManaCostsImpl("{R}")));
+ new ManaCostsImpl<>("{R}")));
// Dash {R}
this.addAbility(new DashAbility("{R}"));
diff --git a/Mage.Sets/src/mage/cards/l/LightningCloud.java b/Mage.Sets/src/mage/cards/l/LightningCloud.java
index dbca8b0e4e1..48ca1cca645 100644
--- a/Mage.Sets/src/mage/cards/l/LightningCloud.java
+++ b/Mage.Sets/src/mage/cards/l/LightningCloud.java
@@ -31,7 +31,7 @@ public final class LightningCloud extends CardImpl {
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{3}{R}");
// Whenever a player casts a red spell, you may pay {R}. If you do, Lightning Cloud deals 1 damage to any target.
- Ability ability = new SpellCastAllTriggeredAbility(new DoIfCostPaid(new DamageTargetEffect(1), new ManaCostsImpl("{R}")), filter, false);
+ Ability ability = new SpellCastAllTriggeredAbility(new DoIfCostPaid(new DamageTargetEffect(1), new ManaCostsImpl<>("{R}")), filter, false);
ability.addTarget(new TargetAnyTarget());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/LightningMare.java b/Mage.Sets/src/mage/cards/l/LightningMare.java
index 194c5fdaca4..32f6f387f40 100644
--- a/Mage.Sets/src/mage/cards/l/LightningMare.java
+++ b/Mage.Sets/src/mage/cards/l/LightningMare.java
@@ -53,7 +53,7 @@ public final class LightningMare extends CardImpl {
this.addAbility(new SimpleActivatedAbility(
Zone.BATTLEFIELD,
new BoostSourceEffect(1, 0, Duration.EndOfTurn),
- new ManaCostsImpl("{1}{R}")
+ new ManaCostsImpl<>("{1}{R}")
));
}
diff --git a/Mage.Sets/src/mage/cards/l/LightningSurge.java b/Mage.Sets/src/mage/cards/l/LightningSurge.java
index 0c2bdf6f2e5..0f88f15f90a 100644
--- a/Mage.Sets/src/mage/cards/l/LightningSurge.java
+++ b/Mage.Sets/src/mage/cards/l/LightningSurge.java
@@ -33,7 +33,7 @@ public final class LightningSurge extends CardImpl {
this.getSpellAbility().addEffect(effect);
// Flashback {5}{R}{R}
- this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{5}{R}{R}")));
+ this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{5}{R}{R}")));
}
private LightningSurge(final LightningSurge card) {
diff --git a/Mage.Sets/src/mage/cards/l/LilianasDevotee.java b/Mage.Sets/src/mage/cards/l/LilianasDevotee.java
index 5ec22413107..ec0a33f35c6 100644
--- a/Mage.Sets/src/mage/cards/l/LilianasDevotee.java
+++ b/Mage.Sets/src/mage/cards/l/LilianasDevotee.java
@@ -44,7 +44,7 @@ public final class LilianasDevotee extends CardImpl {
// At the beginning of your end step, if a creature died this turn, you may pay {1}{B}. If you do, create a 2/2 black Zombie creature token.
this.addAbility(new ConditionalInterveningIfTriggeredAbility(
new BeginningOfEndStepTriggeredAbility(new DoIfCostPaid(
- new CreateTokenEffect(new ZombieToken()), new ManaCostsImpl("{1}{B}")
+ new CreateTokenEffect(new ZombieToken()), new ManaCostsImpl<>("{1}{B}")
), TargetController.YOU, false), MorbidCondition.instance,
"At the beginning of your end step, if a creature died this turn, " +
"you may pay {1}{B}. If you do, create a 2/2 black Zombie creature token."
diff --git a/Mage.Sets/src/mage/cards/l/LilianasShade.java b/Mage.Sets/src/mage/cards/l/LilianasShade.java
index 7b612d17bbb..817e07d473b 100644
--- a/Mage.Sets/src/mage/cards/l/LilianasShade.java
+++ b/Mage.Sets/src/mage/cards/l/LilianasShade.java
@@ -39,7 +39,7 @@ public final class LilianasShade extends CardImpl {
// When Liliana's Shade enters the battlefield, you may search your library for a Swamp card, reveal it, put it into your hand, then shuffle your library.
this.addAbility(new EntersBattlefieldTriggeredAbility(new SearchLibraryPutInHandEffect(new TargetCardInLibrary(filter), true, true), true));
// {B}: Liliana's Shade gets +1/+1 until end of turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{B}")));
}
private LilianasShade(final LilianasShade card) {
diff --git a/Mage.Sets/src/mage/cards/l/LimDulTheNecromancer.java b/Mage.Sets/src/mage/cards/l/LimDulTheNecromancer.java
index 912aca2b988..457aa13b6bf 100644
--- a/Mage.Sets/src/mage/cards/l/LimDulTheNecromancer.java
+++ b/Mage.Sets/src/mage/cards/l/LimDulTheNecromancer.java
@@ -45,10 +45,10 @@ public final class LimDulTheNecromancer extends CardImpl {
this.toughness = new MageInt(4);
// Whenever a creature an opponent controls dies, you may pay {1}{B}. If you do, return that card to the battlefield under your control. If it's a creature, it's a Zombie in addition to its other creature types.
- this.addAbility(new DiesCreatureTriggeredAbility(new DoIfCostPaid(new LimDulTheNecromancerEffect(), new ManaCostsImpl("{1}{B}")), false, StaticFilters.FILTER_OPPONENTS_PERMANENT_A_CREATURE, true));
+ this.addAbility(new DiesCreatureTriggeredAbility(new DoIfCostPaid(new LimDulTheNecromancerEffect(), new ManaCostsImpl<>("{1}{B}")), false, StaticFilters.FILTER_OPPONENTS_PERMANENT_A_CREATURE, true));
// {1}{B}: Regenerate target Zombie.
- Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl("{1}{B}"));
+ Ability ability2 = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateTargetEffect(), new ManaCostsImpl<>("{1}{B}"));
ability2.addTarget(new TargetPermanent(filter2));
this.addAbility(ability2);
diff --git a/Mage.Sets/src/mage/cards/l/LimDulsHex.java b/Mage.Sets/src/mage/cards/l/LimDulsHex.java
index 9dd7081f6a3..81b8bc7964d 100644
--- a/Mage.Sets/src/mage/cards/l/LimDulsHex.java
+++ b/Mage.Sets/src/mage/cards/l/LimDulsHex.java
@@ -61,7 +61,7 @@ class LimDulsHexEffect extends OneShotEffect {
for (UUID playerId : game.getState().getPlayersInRange(source.getControllerId(), game)) {
Player player = game.getPlayer(playerId);
if (player != null) {
- OrCost costToPay = new OrCost("{B} or {3}", new ManaCostsImpl("{B}"), new ManaCostsImpl("{3}"));
+ OrCost costToPay = new OrCost("{B} or {3}", new ManaCostsImpl<>("{B}"), new ManaCostsImpl<>("{3}"));
costToPay.clearPaid();
if (!(player.chooseUse(Outcome.Benefit, "Pay {B} or {3}?", source, game) && costToPay.pay(source, game, source, player.getId(), false, null))) {
game.informPlayers(player.getLogName() + " chooses not to pay " + costToPay.getText() + " to prevent 1 damage from " + sourcePermanent.getLogName());
diff --git a/Mage.Sets/src/mage/cards/l/LimDulsHighGuard.java b/Mage.Sets/src/mage/cards/l/LimDulsHighGuard.java
index 3a39f48780e..a0d95b8fc40 100644
--- a/Mage.Sets/src/mage/cards/l/LimDulsHighGuard.java
+++ b/Mage.Sets/src/mage/cards/l/LimDulsHighGuard.java
@@ -28,7 +28,7 @@ public final class LimDulsHighGuard extends CardImpl {
// First strike
this.addAbility(FirstStrikeAbility.getInstance());
// {1}{B}: Regenerate Lim-Dul's High Guard.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}{B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}{B}")));
}
private LimDulsHighGuard(final LimDulsHighGuard card) {
diff --git a/Mage.Sets/src/mage/cards/l/LimestoneGolem.java b/Mage.Sets/src/mage/cards/l/LimestoneGolem.java
index 8b7cae4b877..43968606ac2 100644
--- a/Mage.Sets/src/mage/cards/l/LimestoneGolem.java
+++ b/Mage.Sets/src/mage/cards/l/LimestoneGolem.java
@@ -29,7 +29,7 @@ public final class LimestoneGolem extends CardImpl {
this.toughness = new MageInt(4);
// {2}, Sacrifice Limestone Golem: Target player draws a card.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardTargetEffect(1), new ManaCostsImpl("{2}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardTargetEffect(1), new ManaCostsImpl<>("{2}"));
ability.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LimitsOfSolidarity.java b/Mage.Sets/src/mage/cards/l/LimitsOfSolidarity.java
index cd83cac2ab1..24e41d25111 100644
--- a/Mage.Sets/src/mage/cards/l/LimitsOfSolidarity.java
+++ b/Mage.Sets/src/mage/cards/l/LimitsOfSolidarity.java
@@ -35,7 +35,7 @@ public final class LimitsOfSolidarity extends CardImpl {
this.getSpellAbility().addEffect(effect);
// Cycling {2}
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}")));
}
diff --git a/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java b/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java
index 4e22fbe3f53..36680bdc786 100644
--- a/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java
+++ b/Mage.Sets/src/mage/cards/l/LinSivviDefiantHero.java
@@ -48,7 +48,7 @@ public final class LinSivviDefiantHero extends CardImpl {
// {X}, {tap}: Search your library for a Rebel permanent card with converted mana cost X or less and put it onto the battlefield. Then shuffle your library.
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
new LinSivviDefiantHeroEffect(),
- new ManaCostsImpl("{X}"));
+ new ManaCostsImpl<>("{X}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java b/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java
index bdc7d33c8a8..d07de0c991f 100644
--- a/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java
+++ b/Mage.Sets/src/mage/cards/l/LinessaZephyrMage.java
@@ -50,7 +50,7 @@ public final class LinessaZephyrMage extends CardImpl {
this.toughness = new MageInt(3);
// {X}{U}{U}, {tap}: Return target creature with converted mana cost X to its owner's hand.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ManaCostsImpl("{X}{U}{U}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new ReturnToHandTargetEffect(), new ManaCostsImpl<>("{X}{U}{U}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetPermanent(filter));
ability.setTargetAdjuster(XCMCPermanentAdjuster.instance);
diff --git a/Mage.Sets/src/mage/cards/l/LingeringMirage.java b/Mage.Sets/src/mage/cards/l/LingeringMirage.java
index 4ad16c9648d..355951d1692 100644
--- a/Mage.Sets/src/mage/cards/l/LingeringMirage.java
+++ b/Mage.Sets/src/mage/cards/l/LingeringMirage.java
@@ -39,7 +39,7 @@ public final class LingeringMirage extends CardImpl {
// Enchanted land is an Island.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BecomesBasicLandEnchantedEffect(SubType.ISLAND)));
// Cycling {2}
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}")));
}
private LingeringMirage(final LingeringMirage card) {
diff --git a/Mage.Sets/src/mage/cards/l/LingeringPhantom.java b/Mage.Sets/src/mage/cards/l/LingeringPhantom.java
index e112fb3a0af..712efe6e29f 100644
--- a/Mage.Sets/src/mage/cards/l/LingeringPhantom.java
+++ b/Mage.Sets/src/mage/cards/l/LingeringPhantom.java
@@ -37,7 +37,7 @@ public final class LingeringPhantom extends CardImpl {
this.addAbility(new SpellCastControllerTriggeredAbility(
Zone.GRAVEYARD, new DoIfCostPaid(new ReturnSourceFromGraveyardToHandEffect()
.setText("return {this} from your graveyard to your hand. (Artifacts, legendaries, and Sagas are historic.)"),
- new ManaCostsImpl("{B}")),
+ new ManaCostsImpl<>("{B}")),
filter, false, false
));
}
diff --git a/Mage.Sets/src/mage/cards/l/LingeringSouls.java b/Mage.Sets/src/mage/cards/l/LingeringSouls.java
index 109d50883ae..80100d3515e 100644
--- a/Mage.Sets/src/mage/cards/l/LingeringSouls.java
+++ b/Mage.Sets/src/mage/cards/l/LingeringSouls.java
@@ -23,7 +23,7 @@ public final class LingeringSouls extends CardImpl {
// Create two 1/1 white Spirit creature tokens with flying.
this.getSpellAbility().addEffect(new CreateTokenEffect(new SpiritWhiteToken(), 2));
// Flashback {1}{B}
- this.addAbility(new FlashbackAbility(this, new ManaCostsImpl("{1}{B}")));
+ this.addAbility(new FlashbackAbility(this, new ManaCostsImpl<>("{1}{B}")));
}
private LingeringSouls(final LingeringSouls card) {
diff --git a/Mage.Sets/src/mage/cards/l/LionheartMaverick.java b/Mage.Sets/src/mage/cards/l/LionheartMaverick.java
index c8026b9955f..757ba184b43 100644
--- a/Mage.Sets/src/mage/cards/l/LionheartMaverick.java
+++ b/Mage.Sets/src/mage/cards/l/LionheartMaverick.java
@@ -28,7 +28,7 @@ public final class LionheartMaverick extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
this.addAbility(VigilanceAbility.getInstance());
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 2, Duration.EndOfTurn), new ManaCostsImpl("{4}{W}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 2, Duration.EndOfTurn), new ManaCostsImpl<>("{4}{W}")));
}
private LionheartMaverick(final LionheartMaverick card) {
diff --git a/Mage.Sets/src/mage/cards/l/LivingAirship.java b/Mage.Sets/src/mage/cards/l/LivingAirship.java
index 01c5e0a7b2e..5a62add9ea8 100644
--- a/Mage.Sets/src/mage/cards/l/LivingAirship.java
+++ b/Mage.Sets/src/mage/cards/l/LivingAirship.java
@@ -25,7 +25,7 @@ public final class LivingAirship extends CardImpl {
this.power = new MageInt(2);
this.toughness = new MageInt(3);
this.addAbility(FlyingAbility.getInstance());
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{2}{G}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{2}{G}")));
}
private LivingAirship(final LivingAirship card) {
diff --git a/Mage.Sets/src/mage/cards/l/LivingEnd.java b/Mage.Sets/src/mage/cards/l/LivingEnd.java
index 2fe554d4d4a..871e0a2b6d9 100644
--- a/Mage.Sets/src/mage/cards/l/LivingEnd.java
+++ b/Mage.Sets/src/mage/cards/l/LivingEnd.java
@@ -20,7 +20,7 @@ public final class LivingEnd extends CardImpl {
this.color.setBlack(true);
// Suspend 3-{2}{B}{B}
- this.addAbility(new SuspendAbility(3, new ManaCostsImpl("{2}{B}{B}"), this));
+ this.addAbility(new SuspendAbility(3, new ManaCostsImpl<>("{2}{B}{B}"), this));
// Each player exiles all creature cards from their graveyard, then sacrifices all creatures
// they control, then puts all cards they exiled this way onto the battlefield.
this.getSpellAbility().addEffect(new LivingDeathEffect());
diff --git a/Mage.Sets/src/mage/cards/l/LivingTwister.java b/Mage.Sets/src/mage/cards/l/LivingTwister.java
index 83779f7deb9..2342366d310 100644
--- a/Mage.Sets/src/mage/cards/l/LivingTwister.java
+++ b/Mage.Sets/src/mage/cards/l/LivingTwister.java
@@ -41,7 +41,7 @@ public final class LivingTwister extends CardImpl {
// {1}{R}, Discard a land card: Living Twister deals 2 damage to any target.
Ability ability = new SimpleActivatedAbility(
- new DamageTargetEffect(2), new ManaCostsImpl("{1}{R}")
+ new DamageTargetEffect(2), new ManaCostsImpl<>("{1}{R}")
);
ability.addCost(new DiscardTargetCost(new TargetCardInHand(StaticFilters.FILTER_CARD_LAND_A)));
ability.addTarget(new TargetAnyTarget());
@@ -49,7 +49,7 @@ public final class LivingTwister extends CardImpl {
// {G}: Return a tapped land you control to its owner's hand.
this.addAbility(new SimpleActivatedAbility(
- new ReturnToHandChosenControlledPermanentEffect(filter), new ManaCostsImpl("{G}")
+ new ReturnToHandChosenControlledPermanentEffect(filter), new ManaCostsImpl<>("{G}")
));
}
diff --git a/Mage.Sets/src/mage/cards/l/LivingWall.java b/Mage.Sets/src/mage/cards/l/LivingWall.java
index cc1bdcc2928..57c093ddce8 100644
--- a/Mage.Sets/src/mage/cards/l/LivingWall.java
+++ b/Mage.Sets/src/mage/cards/l/LivingWall.java
@@ -29,7 +29,7 @@ public final class LivingWall extends CardImpl {
this.addAbility(DefenderAbility.getInstance());
// {1}: Regenerate Living Wall.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{1}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{1}")));
}
diff --git a/Mage.Sets/src/mage/cards/l/LivioOathswornSentinel.java b/Mage.Sets/src/mage/cards/l/LivioOathswornSentinel.java
index e835b0a746b..8aae31bc879 100644
--- a/Mage.Sets/src/mage/cards/l/LivioOathswornSentinel.java
+++ b/Mage.Sets/src/mage/cards/l/LivioOathswornSentinel.java
@@ -47,13 +47,13 @@ public final class LivioOathswornSentinel extends CardImpl {
// {1}{W}: Choose another target creature. Its controller may exile it with an aegis counter on it.
Ability ability = new SimpleActivatedAbility(
- new LivioOathswornSentinelExileEffect(), new ManaCostsImpl("{1}{W}")
+ new LivioOathswornSentinelExileEffect(), new ManaCostsImpl<>("{1}{W}")
);
ability.addTarget(new TargetPermanent(filter));
this.addAbility(ability);
// {2}{W}, {T}: Return all exiled cards with aegis counters on them to the battlefield under their owners' control.
- ability = new SimpleActivatedAbility(new LivioOathswornSentinelReturnEffect(), new ManaCostsImpl("{2}{W}"));
+ ability = new SimpleActivatedAbility(new LivioOathswornSentinelReturnEffect(), new ManaCostsImpl<>("{2}{W}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LlanowarCavalry.java b/Mage.Sets/src/mage/cards/l/LlanowarCavalry.java
index c0238b80d2e..2f2c0c25c6f 100644
--- a/Mage.Sets/src/mage/cards/l/LlanowarCavalry.java
+++ b/Mage.Sets/src/mage/cards/l/LlanowarCavalry.java
@@ -28,7 +28,7 @@ public final class LlanowarCavalry extends CardImpl {
this.toughness = new MageInt(4);
// {W}: Llanowar Cavalry 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 LlanowarCavalry(final LlanowarCavalry card) {
diff --git a/Mage.Sets/src/mage/cards/l/LlanowarEnvoy.java b/Mage.Sets/src/mage/cards/l/LlanowarEnvoy.java
index 48dc294d524..17613803ba4 100644
--- a/Mage.Sets/src/mage/cards/l/LlanowarEnvoy.java
+++ b/Mage.Sets/src/mage/cards/l/LlanowarEnvoy.java
@@ -26,7 +26,7 @@ public final class LlanowarEnvoy extends CardImpl {
this.toughness = new MageInt(2);
// {1}{G}: Add one mana of any color.
- Ability ability = new AnyColorManaAbility(new ManaCostsImpl("{1}{G}"));
+ Ability ability = new AnyColorManaAbility(new ManaCostsImpl<>("{1}{G}"));
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/LlanowarMentor.java b/Mage.Sets/src/mage/cards/l/LlanowarMentor.java
index f9338c39838..66989232c14 100644
--- a/Mage.Sets/src/mage/cards/l/LlanowarMentor.java
+++ b/Mage.Sets/src/mage/cards/l/LlanowarMentor.java
@@ -29,7 +29,7 @@ public final class LlanowarMentor extends CardImpl {
this.toughness = new MageInt(1);
// {G}, {T}, Discard a card: Create a 1/1 green Elf Druid creature token named Llanowar Elves. It has "{T}: Add {G}."
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new LlanowarElvesToken()), new ManaCostsImpl("{G}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new LlanowarElvesToken()), new ManaCostsImpl<>("{G}"));
ability.addCost(new TapSourceCost());
ability.addCost(new DiscardCardCost());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LoathsomeCatoblepas.java b/Mage.Sets/src/mage/cards/l/LoathsomeCatoblepas.java
index 372d8773813..9e314fe77dc 100644
--- a/Mage.Sets/src/mage/cards/l/LoathsomeCatoblepas.java
+++ b/Mage.Sets/src/mage/cards/l/LoathsomeCatoblepas.java
@@ -33,7 +33,7 @@ public final class LoathsomeCatoblepas extends CardImpl {
this.toughness = new MageInt(3);
// {2}{G}: Loathsome Catoblepas must be blocked this turn if able.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new MustBeBlockedByAtLeastOneSourceEffect(), new ManaCostsImpl("{2}{G}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new MustBeBlockedByAtLeastOneSourceEffect(), new ManaCostsImpl<>("{2}{G}")));
// When Loathsome Catoblepas dies, target creature an opponent controls gets -3/-3 until end of turn.
Ability ability = new DiesSourceTriggeredAbility(new BoostTargetEffect(-3,-3, Duration.EndOfTurn), false);
Target target = new TargetCreaturePermanent(StaticFilters.FILTER_OPPONENTS_PERMANENT_CREATURE);
diff --git a/Mage.Sets/src/mage/cards/l/LochKorrigan.java b/Mage.Sets/src/mage/cards/l/LochKorrigan.java
index f8bacd40916..a030f76204e 100644
--- a/Mage.Sets/src/mage/cards/l/LochKorrigan.java
+++ b/Mage.Sets/src/mage/cards/l/LochKorrigan.java
@@ -26,7 +26,7 @@ public final class LochKorrigan extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{U/B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{U/B}")));
}
private LochKorrigan(final LochKorrigan card) {
diff --git a/Mage.Sets/src/mage/cards/l/LochmereSerpent.java b/Mage.Sets/src/mage/cards/l/LochmereSerpent.java
index 80d89e826fa..0ca107fe5e3 100644
--- a/Mage.Sets/src/mage/cards/l/LochmereSerpent.java
+++ b/Mage.Sets/src/mage/cards/l/LochmereSerpent.java
@@ -47,13 +47,13 @@ public final class LochmereSerpent extends CardImpl {
// {U}, Sacrifice an Island: Lochmere Serpent can't be blocked this turn.
Ability ability = new SimpleActivatedAbility(
- new CantBeBlockedSourceEffect(Duration.EndOfTurn), new ManaCostsImpl("{U}")
+ new CantBeBlockedSourceEffect(Duration.EndOfTurn), new ManaCostsImpl<>("{U}")
);
ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(filter1)));
this.addAbility(ability);
// {B}, Sacrifice a Swamp: You gain 1 life and draw a card.
- ability = new SimpleActivatedAbility(new GainLifeEffect(1), new ManaCostsImpl("{B}"));
+ ability = new SimpleActivatedAbility(new GainLifeEffect(1), new ManaCostsImpl<>("{B}"));
ability.addEffect(new DrawCardSourceControllerEffect(1).concatBy("and"));
ability.addCost(new SacrificeTargetCost(new TargetControlledPermanent(filter2)));
this.addAbility(ability);
@@ -62,7 +62,7 @@ public final class LochmereSerpent extends CardImpl {
ability = new ActivateAsSorceryActivatedAbility(
Zone.GRAVEYARD,
new ExileTargetEffect().setText("Exile five target cards from an opponent's graveyard."),
- new ManaCostsImpl("{U}{B}")
+ new ManaCostsImpl<>("{U}{B}")
);
ability.addEffect(new ReturnSourceFromGraveyardToHandEffect());
ability.addTarget(new TargetCardInOpponentsGraveyard(
diff --git a/Mage.Sets/src/mage/cards/l/LocustSwarm.java b/Mage.Sets/src/mage/cards/l/LocustSwarm.java
index 74c81d9baa1..ca51b3b5275 100644
--- a/Mage.Sets/src/mage/cards/l/LocustSwarm.java
+++ b/Mage.Sets/src/mage/cards/l/LocustSwarm.java
@@ -31,10 +31,10 @@ public final class LocustSwarm extends CardImpl {
this.addAbility(FlyingAbility.getInstance());
// {G}: Regenerate Locust Swarm.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{G}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{G}")));
// {G}: Untap Locust Swarm. Activate this ability only once each turn.
- this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl("{G}")));
+ this.addAbility(new LimitedTimesPerTurnActivatedAbility(Zone.BATTLEFIELD, new UntapSourceEffect(), new ManaCostsImpl<>("{G}")));
}
private LocustSwarm(final LocustSwarm card) {
diff --git a/Mage.Sets/src/mage/cards/l/LonelySandbar.java b/Mage.Sets/src/mage/cards/l/LonelySandbar.java
index 70a8c69eadb..f525da35e9f 100644
--- a/Mage.Sets/src/mage/cards/l/LonelySandbar.java
+++ b/Mage.Sets/src/mage/cards/l/LonelySandbar.java
@@ -24,7 +24,7 @@ public final class LonelySandbar extends CardImpl {
// {tap}: Add {U}.
this.addAbility(new BlueManaAbility());
// Cycling {U}
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{U}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{U}")));
}
private LonelySandbar(final LonelySandbar card) {
diff --git a/Mage.Sets/src/mage/cards/l/LongshotSquad.java b/Mage.Sets/src/mage/cards/l/LongshotSquad.java
index 9c616c98e97..1b4c8a70e30 100644
--- a/Mage.Sets/src/mage/cards/l/LongshotSquad.java
+++ b/Mage.Sets/src/mage/cards/l/LongshotSquad.java
@@ -31,7 +31,7 @@ public final class LongshotSquad extends CardImpl {
this.toughness = new MageInt(3);
// Outlast 1G
- this.addAbility(new OutlastAbility(new ManaCostsImpl("{1}{G}")));
+ this.addAbility(new OutlastAbility(new ManaCostsImpl<>("{1}{G}")));
// Each creature you control with a +1/+1 counter on it has reach.
this.addAbility(new SimpleStaticAbility(
Zone.BATTLEFIELD,
diff --git a/Mage.Sets/src/mage/cards/l/LoomingShade.java b/Mage.Sets/src/mage/cards/l/LoomingShade.java
index 1f7fa8c5414..a60586c7920 100644
--- a/Mage.Sets/src/mage/cards/l/LoomingShade.java
+++ b/Mage.Sets/src/mage/cards/l/LoomingShade.java
@@ -26,7 +26,7 @@ public final class LoomingShade extends CardImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl("{B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BoostSourceEffect(1, 1, Duration.EndOfTurn), new ManaCostsImpl<>("{B}")));
}
private LoomingShade(final LoomingShade card) {
diff --git a/Mage.Sets/src/mage/cards/l/LordOfShatterskullPass.java b/Mage.Sets/src/mage/cards/l/LordOfShatterskullPass.java
index 090eec0977e..d4d855b5304 100644
--- a/Mage.Sets/src/mage/cards/l/LordOfShatterskullPass.java
+++ b/Mage.Sets/src/mage/cards/l/LordOfShatterskullPass.java
@@ -38,7 +38,7 @@ public final class LordOfShatterskullPass extends LevelerCard {
this.toughness = new MageInt(3);
// Level up {1}{R}
- this.addAbility(new LevelUpAbility(new ManaCostsImpl("{1}{R}")));
+ this.addAbility(new LevelUpAbility(new ManaCostsImpl<>("{1}{R}")));
// LEVEL 1-5
// 6/6
Abilities abilities1 = new AbilitiesImpl<>();
diff --git a/Mage.Sets/src/mage/cards/l/LordOfTheAccursed.java b/Mage.Sets/src/mage/cards/l/LordOfTheAccursed.java
index aeaecbd9c73..865c56683ab 100644
--- a/Mage.Sets/src/mage/cards/l/LordOfTheAccursed.java
+++ b/Mage.Sets/src/mage/cards/l/LordOfTheAccursed.java
@@ -42,7 +42,7 @@ public final class LordOfTheAccursed extends CardImpl {
new MenaceAbility(),
Duration.EndOfTurn,
filter, "All Zombies gain menace until end of turn."),
- new ManaCostsImpl("{1}{B}"));
+ new ManaCostsImpl<>("{1}{B}"));
ability.addCost(new TapSourceCost());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/LordOfTresserhorn.java b/Mage.Sets/src/mage/cards/l/LordOfTresserhorn.java
index c5826d22b67..89ff9082a88 100644
--- a/Mage.Sets/src/mage/cards/l/LordOfTresserhorn.java
+++ b/Mage.Sets/src/mage/cards/l/LordOfTresserhorn.java
@@ -45,7 +45,7 @@ public final class LordOfTresserhorn extends CardImpl {
this.addAbility(ability);
// {B}: Regenerate Lord of Tresserhorn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
}
private LordOfTresserhorn(final LordOfTresserhorn card) {
diff --git a/Mage.Sets/src/mage/cards/l/LoreWeaver.java b/Mage.Sets/src/mage/cards/l/LoreWeaver.java
index c1aa2fa579f..c0369de242a 100644
--- a/Mage.Sets/src/mage/cards/l/LoreWeaver.java
+++ b/Mage.Sets/src/mage/cards/l/LoreWeaver.java
@@ -32,7 +32,7 @@ public final class LoreWeaver extends CardImpl {
this.addAbility(new PartnerWithAbility("Ley Weaver"));
// {5}{U}{U}: Target player draws two cards.
- Ability ability = new SimpleActivatedAbility(new DrawCardTargetEffect(2), new ManaCostsImpl("{5}{U}{U}"));
+ Ability ability = new SimpleActivatedAbility(new DrawCardTargetEffect(2), new ManaCostsImpl<>("{5}{U}{U}"));
ability.addTarget(new TargetPlayer());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/LotlethTroll.java b/Mage.Sets/src/mage/cards/l/LotlethTroll.java
index a8c05bbbdb3..21caf815800 100644
--- a/Mage.Sets/src/mage/cards/l/LotlethTroll.java
+++ b/Mage.Sets/src/mage/cards/l/LotlethTroll.java
@@ -41,7 +41,7 @@ public final class LotlethTroll extends CardImpl {
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.P1P1.createInstance()), new DiscardTargetCost(new TargetCardInHand(filter))));
// {B}: Regenerate Lotleth Troll.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl<>("{B}")));
}
private LotlethTroll(final LotlethTroll card) {
diff --git a/Mage.Sets/src/mage/cards/l/LoxodonHierarch.java b/Mage.Sets/src/mage/cards/l/LoxodonHierarch.java
index 55b531e2140..143c5da68db 100644
--- a/Mage.Sets/src/mage/cards/l/LoxodonHierarch.java
+++ b/Mage.Sets/src/mage/cards/l/LoxodonHierarch.java
@@ -36,7 +36,7 @@ public final class LoxodonHierarch extends CardImpl {
Ability etbAbility = new EntersBattlefieldTriggeredAbility(new GainLifeEffect(4));
this.addAbility(etbAbility);
// {G}{W}, Sacrifice Loxodon Hierarch: Regenerate each creature you control.
- Ability activated = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAllEffect(StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED), new ManaCostsImpl("{G}{W}"));
+ Ability activated = new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateAllEffect(StaticFilters.FILTER_PERMANENT_CREATURE_CONTROLLED), new ManaCostsImpl<>("{G}{W}"));
activated.addCost(new SacrificeSourceCost());
this.addAbility(activated);
}
diff --git a/Mage.Sets/src/mage/cards/l/LoxodonLifechanter.java b/Mage.Sets/src/mage/cards/l/LoxodonLifechanter.java
index 239901d6070..e7efea15bbd 100644
--- a/Mage.Sets/src/mage/cards/l/LoxodonLifechanter.java
+++ b/Mage.Sets/src/mage/cards/l/LoxodonLifechanter.java
@@ -43,7 +43,7 @@ public final class LoxodonLifechanter extends CardImpl {
LoxodonLifechanterValue2.instance,
LoxodonLifechanterValue2.instance,
Duration.EndOfTurn, true
- ), new ManaCostsImpl("{5}{W}")));
+ ), new ManaCostsImpl<>("{5}{W}")));
}
private LoxodonLifechanter(final LoxodonLifechanter card) {
diff --git a/Mage.Sets/src/mage/cards/l/LoxodonStalwart.java b/Mage.Sets/src/mage/cards/l/LoxodonStalwart.java
index 81dbf50f7d7..0cc203253e7 100644
--- a/Mage.Sets/src/mage/cards/l/LoxodonStalwart.java
+++ b/Mage.Sets/src/mage/cards/l/LoxodonStalwart.java
@@ -31,7 +31,7 @@ public final class LoxodonStalwart extends CardImpl {
// Vigilance
this.addAbility(VigilanceAbility.getInstance());
// {W}: Loxodon Stalwart 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 LoxodonStalwart(final LoxodonStalwart card) {
diff --git a/Mage.Sets/src/mage/cards/l/LoyalTauntaun.java b/Mage.Sets/src/mage/cards/l/LoyalTauntaun.java
index 7a135dcbaf9..34465a19bbe 100644
--- a/Mage.Sets/src/mage/cards/l/LoyalTauntaun.java
+++ b/Mage.Sets/src/mage/cards/l/LoyalTauntaun.java
@@ -28,7 +28,7 @@ public final class LoyalTauntaun extends CardImpl {
this.toughness = new MageInt(3);
// {1}{G}, sacrifice Loyal Tauntaun: Regenerate target creature.
- 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.addCost(new SacrificeSourceCost());
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LudevicsTestSubject.java b/Mage.Sets/src/mage/cards/l/LudevicsTestSubject.java
index 509e225b80a..a443019c757 100644
--- a/Mage.Sets/src/mage/cards/l/LudevicsTestSubject.java
+++ b/Mage.Sets/src/mage/cards/l/LudevicsTestSubject.java
@@ -39,7 +39,7 @@ public final class LudevicsTestSubject extends CardImpl {
this.addAbility(DefenderAbility.getInstance());
// {1}{U}: Put a hatchling counter on Ludevic's Test Subject. Then if there are five or more hatchling counters on it, remove all of them and transform it.
this.addAbility(new TransformAbility());
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.HATCHLING.createInstance()), new ManaCostsImpl("{1}{U}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.HATCHLING.createInstance()), new ManaCostsImpl<>("{1}{U}"));
ability.addEffect(new LudevicsTestSubjectEffect());
this.addAbility(ability);
}
diff --git a/Mage.Sets/src/mage/cards/l/Lull.java b/Mage.Sets/src/mage/cards/l/Lull.java
index 55a2650e6dd..cef3932702d 100644
--- a/Mage.Sets/src/mage/cards/l/Lull.java
+++ b/Mage.Sets/src/mage/cards/l/Lull.java
@@ -23,7 +23,7 @@ public final class Lull extends CardImpl {
//Prevent all combat damage that would be dealt this turn.
this.getSpellAbility().addEffect(new PreventAllDamageByAllPermanentsEffect(Duration.EndOfTurn, true));
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{2}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{2}")));
}
private Lull(final Lull card) {
diff --git a/Mage.Sets/src/mage/cards/l/LumberingFalls.java b/Mage.Sets/src/mage/cards/l/LumberingFalls.java
index c5cae875f4b..20fdb4ef5f1 100644
--- a/Mage.Sets/src/mage/cards/l/LumberingFalls.java
+++ b/Mage.Sets/src/mage/cards/l/LumberingFalls.java
@@ -35,7 +35,7 @@ public final class LumberingFalls extends CardImpl {
this.addAbility(new GreenManaAbility());
// {2}{G}{U}: Lumbering Falls becomes a 3/3 green and blue Elemental creature with hexproof until end of turn. It's still a land.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new LumberingFallsToken(), "land", Duration.EndOfTurn), new ManaCostsImpl("{2}{G}{U}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureSourceEffect(new LumberingFallsToken(), "land", Duration.EndOfTurn), new ManaCostsImpl<>("{2}{G}{U}")));
}
private LumberingFalls(final LumberingFalls card) {
diff --git a/Mage.Sets/src/mage/cards/l/LuminousGuardian.java b/Mage.Sets/src/mage/cards/l/LuminousGuardian.java
index 2aceecc67fa..ae11a79c4e4 100644
--- a/Mage.Sets/src/mage/cards/l/LuminousGuardian.java
+++ b/Mage.Sets/src/mage/cards/l/LuminousGuardian.java
@@ -29,9 +29,9 @@ public final class LuminousGuardian extends CardImpl {
this.toughness = new MageInt(4);
// {W}: Luminous Guardian 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}")));
// {2}: Luminous Guardian can block an additional creature this turn.
- this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CanBlockAdditionalCreatureEffect(Duration.EndOfTurn, 1), new ManaCostsImpl("{2}")));
+ this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new CanBlockAdditionalCreatureEffect(Duration.EndOfTurn, 1), new ManaCostsImpl<>("{2}")));
}
private LuminousGuardian(final LuminousGuardian card) {
diff --git a/Mage.Sets/src/mage/cards/l/LumithreadField.java b/Mage.Sets/src/mage/cards/l/LumithreadField.java
index 9534763ff0b..4df5634ea69 100644
--- a/Mage.Sets/src/mage/cards/l/LumithreadField.java
+++ b/Mage.Sets/src/mage/cards/l/LumithreadField.java
@@ -25,7 +25,7 @@ public final class LumithreadField extends CardImpl {
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostControlledEffect(0, 1, Duration.WhileOnBattlefield)));
// Morph {1}{W}
- this.addAbility(new MorphAbility(new ManaCostsImpl("{1}{W}")));
+ this.addAbility(new MorphAbility(new ManaCostsImpl<>("{1}{W}")));
}
private LumithreadField(final LumithreadField card) {
diff --git a/Mage.Sets/src/mage/cards/l/LunarchMantle.java b/Mage.Sets/src/mage/cards/l/LunarchMantle.java
index 7928e2095e3..f443b6ac774 100644
--- a/Mage.Sets/src/mage/cards/l/LunarchMantle.java
+++ b/Mage.Sets/src/mage/cards/l/LunarchMantle.java
@@ -47,7 +47,7 @@ public final class LunarchMantle extends CardImpl {
// Enchanted creature gets +2/+2 and has "{1}, Sacrifice a permanent: This creature gains flying until end of turn."
SimpleStaticAbility ability2 = new SimpleStaticAbility(Zone.BATTLEFIELD, new BoostEnchantedEffect(2, 2, Duration.WhileOnBattlefield));
Ability abilityToGain = new SimpleActivatedAbility(Zone.BATTLEFIELD,
- new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl("{1}"));
+ new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.EndOfTurn), new ManaCostsImpl<>("{1}"));
abilityToGain.addCost(new SacrificeTargetCost(new TargetControlledPermanent()));
ability2.addEffect(new GainAbilityAttachedEffect(abilityToGain, AttachmentType.AURA, Duration.WhileOnBattlefield, rule));
this.addAbility(ability2);
diff --git a/Mage.Sets/src/mage/cards/l/LurchingRotbeast.java b/Mage.Sets/src/mage/cards/l/LurchingRotbeast.java
index 47a5d916ed1..88c1f0f55db 100644
--- a/Mage.Sets/src/mage/cards/l/LurchingRotbeast.java
+++ b/Mage.Sets/src/mage/cards/l/LurchingRotbeast.java
@@ -25,7 +25,7 @@ public final class LurchingRotbeast extends CardImpl {
this.toughness = new MageInt(2);
// Cycling {B}
- this.addAbility(new CyclingAbility(new ManaCostsImpl("{B}")));
+ this.addAbility(new CyclingAbility(new ManaCostsImpl<>("{B}")));
}
diff --git a/Mage.Sets/src/mage/cards/l/LurkingArynx.java b/Mage.Sets/src/mage/cards/l/LurkingArynx.java
index c4ec99597fd..510b8d5c25e 100644
--- a/Mage.Sets/src/mage/cards/l/LurkingArynx.java
+++ b/Mage.Sets/src/mage/cards/l/LurkingArynx.java
@@ -34,7 +34,7 @@ public final class LurkingArynx extends CardImpl {
Ability ability = new ActivateIfConditionActivatedAbility(
Zone.BATTLEFIELD,
new MustBeBlockedByTargetSourceEffect(Duration.EndOfTurn),
- new ManaCostsImpl("{2}{G}"),
+ new ManaCostsImpl<>("{2}{G}"),
FormidableCondition.instance);
ability.setAbilityWord(AbilityWord.FORMIDABLE);
ability.addTarget(new TargetCreaturePermanent());
diff --git a/Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java b/Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java
index 2c05b67606a..9f54bc28695 100644
--- a/Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java
+++ b/Mage.Sets/src/mage/cards/l/LuxaRiverShrine.java
@@ -29,7 +29,7 @@ public final class LuxaRiverShrine extends CardImpl {
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{3}");
// {1}, {T}: You gain 1 life. Put a brick counter on Luxa River Shrine.
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl("{1}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new GainLifeEffect(1), new ManaCostsImpl<>("{1}"));
ability.addCost(new TapSourceCost());
ability.addEffect(new AddCountersSourceEffect(CounterType.BRICK.createInstance()));
this.addAbility(ability);
diff --git a/Mage.Sets/src/mage/cards/l/LyzoldaTheBloodWitch.java b/Mage.Sets/src/mage/cards/l/LyzoldaTheBloodWitch.java
index 2b3d6af99db..77ae5e81942 100644
--- a/Mage.Sets/src/mage/cards/l/LyzoldaTheBloodWitch.java
+++ b/Mage.Sets/src/mage/cards/l/LyzoldaTheBloodWitch.java
@@ -56,7 +56,7 @@ public final class LyzoldaTheBloodWitch extends CardImpl {
new DamageTargetEffect(2),
new SacrificedWasCondition(redFilter),
"{this} deals 2 damage to any target if the sacrificed creature was red");
- Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl("{2}"));
+ Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, effect, new ManaCostsImpl<>("{2}"));
effect = new ConditionalOneShotEffect(
new DrawCardSourceControllerEffect(1),
new SacrificedWasCondition(blackFilter),