mirror of
https://github.com/correl/mage.git
synced 2024-12-25 19:25:41 +00:00
Changed call of KickerAbility and replaced KickerAbility by new MultikickerAbility.
This commit is contained in:
parent
66ebfb6aa3
commit
6039429127
46 changed files with 80 additions and 144 deletions
|
@ -38,7 +38,6 @@ import mage.abilities.common.EntersBattlefieldAbility;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.condition.common.KickedCostCondition;
|
||||
import mage.abilities.costs.common.PayLifeCost;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.effects.EntersBattlefieldEffect;
|
||||
import mage.abilities.effects.common.RegenerateSourceEffect;
|
||||
import mage.abilities.effects.common.continious.GainAbilitySourceEffect;
|
||||
|
@ -62,23 +61,21 @@ public class Anavolver extends CardImpl<Anavolver> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Kicker {1}{U} and/or {B} (You may pay an additional {1}{U} and/or {B} as you cast this spell.)
|
||||
KickerManaCost kicker1 = new KickerManaCost("{1}{U}");
|
||||
KickerManaCost kicker2 = new KickerManaCost("{B}");
|
||||
KickerAbility kickerAbility = new KickerAbility(kicker1);
|
||||
kickerAbility.addKickerManaCost(kicker2);
|
||||
KickerAbility kickerAbility = new KickerAbility("{1}{U}");
|
||||
kickerAbility.addKickerCost("{B}");
|
||||
this.addAbility(kickerAbility);
|
||||
|
||||
// If Anavolver was kicked with its {1}{U} kicker, it enters the battlefield with two +1/+1 counters on it and with flying.
|
||||
EntersBattlefieldAbility ability1 = new EntersBattlefieldAbility(
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(2),false),
|
||||
new KickedCostCondition(kicker1), true, "If {this} was kicked with its {1}{U} kicker, it enters the battlefield with two +1/+1 counters on it and with flying.",
|
||||
new KickedCostCondition("{1}{U}"), true, "If {this} was kicked with its {1}{U} kicker, it enters the battlefield with two +1/+1 counters on it and with flying.",
|
||||
"{this} enters the battlefield with two +1/+1 counters on it and with flying");
|
||||
((EntersBattlefieldEffect)ability1.getEffects().get(0)).addEffect(new GainAbilitySourceEffect(FlyingAbility.getInstance(), Duration.WhileOnBattlefield));
|
||||
this.addAbility(ability1);
|
||||
|
||||
// If Anavolver was kicked with its {B} kicker, it enters the battlefield with a +1/+1 counter on it and with "Pay 3 life: Regenerate Anavolver."
|
||||
EntersBattlefieldAbility ability2 = new EntersBattlefieldAbility(
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(1),false), new KickedCostCondition(kicker2), true,
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(1),false), new KickedCostCondition("{B}"), true,
|
||||
"If {this} was kicked with its {B} kicker, it enters the battlefield with a +1/+1 counter on it and with \"Pay 3 life: Regenerate Anavolver.\"",
|
||||
"{this} enters the battlefield with a +1/+1 counter on it and with \"Pay 3 life: Regenerate Anavolver.\"");
|
||||
((EntersBattlefieldEffect)ability2.getEffects().get(0)).addEffect(new GainAbilitySourceEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new PayLifeCost(3)), Duration.WhileOnBattlefield));
|
||||
|
|
|
@ -34,7 +34,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.condition.common.KickedCostCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.effects.EntersBattlefieldEffect;
|
||||
import mage.abilities.effects.common.continious.GainAbilitySourceEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
|
@ -59,23 +58,21 @@ public class Cetavolver extends CardImpl<Cetavolver> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Kicker {1}{R} and/or {G} (You may pay an additional {1}{R} and/or {G} as you cast this spell.)
|
||||
KickerManaCost kicker1 = new KickerManaCost("{1}{R}");
|
||||
KickerManaCost kicker2 = new KickerManaCost("{G}");
|
||||
KickerAbility kickerAbility = new KickerAbility(kicker1);
|
||||
kickerAbility.addKickerManaCost(kicker2);
|
||||
KickerAbility kickerAbility = new KickerAbility("{1}{R}");
|
||||
kickerAbility.addKickerCost("{G}");
|
||||
this.addAbility(kickerAbility);
|
||||
|
||||
// If Cetavolver was kicked with its {1}{R} kicker, it enters the battlefield with two +1/+1 counters on it and with first strike.
|
||||
EntersBattlefieldAbility ability1 = new EntersBattlefieldAbility(
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(2),false),
|
||||
new KickedCostCondition(kicker1), true, "If Cetavolver was kicked with its {1}{R} kicker, it enters the battlefield with two +1/+1 counters on it and with first strike.",
|
||||
new KickedCostCondition("{1}{R}"), true, "If Cetavolver was kicked with its {1}{R} kicker, it enters the battlefield with two +1/+1 counters on it and with first strike.",
|
||||
"{this} enters the battlefield with two +1/+1 counters on it and with first strike");
|
||||
((EntersBattlefieldEffect)ability1.getEffects().get(0)).addEffect(new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.WhileOnBattlefield));
|
||||
this.addAbility(ability1);
|
||||
|
||||
// If Cetavolver was kicked with its {G} kicker, it enters the battlefield with a +1/+1 counter on it and with trample.
|
||||
EntersBattlefieldAbility ability2 = new EntersBattlefieldAbility(
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(1),false), new KickedCostCondition(kicker2), true,
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(1),false), new KickedCostCondition("{G}"), true,
|
||||
"If Cetavolver was kicked with its {G} kicker, it enters the battlefield with a +1/+1 counter on it and with trample.",
|
||||
"{this} enters the battlefield with a +1/+1 counter on it and with trample");
|
||||
((EntersBattlefieldEffect)ability2.getEffects().get(0)).addEffect(new GainAbilitySourceEffect(TrampleAbility.getInstance(), Duration.WhileOnBattlefield));
|
||||
|
|
|
@ -38,7 +38,6 @@ import mage.abilities.common.EntersBattlefieldAbility;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.condition.common.KickedCostCondition;
|
||||
import mage.abilities.costs.common.PayLifeCost;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.effects.EntersBattlefieldEffect;
|
||||
import mage.abilities.effects.common.RegenerateSourceEffect;
|
||||
import mage.abilities.effects.common.continious.GainAbilitySourceEffect;
|
||||
|
@ -63,23 +62,21 @@ public class Degavolver extends CardImpl<Degavolver> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Kicker {1}{B} and/or {R} (You may pay an additional {1}{B} and/or {R} as you cast this spell.)
|
||||
KickerManaCost kicker1 = new KickerManaCost("{1}{B}");
|
||||
KickerManaCost kicker2 = new KickerManaCost("{R}");
|
||||
KickerAbility kickerAbility = new KickerAbility(kicker1);
|
||||
kickerAbility.addKickerManaCost(kicker2);
|
||||
KickerAbility kickerAbility = new KickerAbility("{1}{B}");
|
||||
kickerAbility.addKickerCost("{R}");
|
||||
this.addAbility(kickerAbility);
|
||||
|
||||
// If Degavolver was kicked with its {1}{B} kicker, it enters the battlefield with two +1/+1 counters on it and with "Pay 3 life: Regenerate Degavolver."
|
||||
EntersBattlefieldAbility ability1 = new EntersBattlefieldAbility(
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(2),false),
|
||||
new KickedCostCondition(kicker1), true, "If Degavolver was kicked with its {1}{B} kicker, it enters the battlefield with two +1/+1 counters on it and with \"Pay 3 life: Regenerate Degavolver.\"",
|
||||
new KickedCostCondition("{1}{B}"), true, "If Degavolver was kicked with its {1}{B} kicker, it enters the battlefield with two +1/+1 counters on it and with \"Pay 3 life: Regenerate Degavolver.\"",
|
||||
"{this} enters the battlefield with two +1/+1 counters on it and with \"Pay 3 life: Regenerate Degavolver.\"");
|
||||
((EntersBattlefieldEffect)ability1.getEffects().get(0)).addEffect(new GainAbilitySourceEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new PayLifeCost(3)), Constants.Duration.WhileOnBattlefield));
|
||||
this.addAbility(ability1);
|
||||
|
||||
// If Degavolver was kicked with its {R} kicker, it enters the battlefield with a +1/+1 counter on it and with first strike.
|
||||
EntersBattlefieldAbility ability2 = new EntersBattlefieldAbility(
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(1),false), new KickedCostCondition(kicker2), true,
|
||||
new AddCountersSourceEffect(CounterType.P1P1.createInstance(1),false), new KickedCostCondition("{R}"), true,
|
||||
"If Degavolver was kicked with its {R} kicker, it enters the battlefield with a +1/+1 counter on it and with first strike.",
|
||||
"{this} enters the battlefield with a +1/+1 counter on it and with first strike");
|
||||
((EntersBattlefieldEffect)ability2.getEffects().get(0)).addEffect(new GainAbilitySourceEffect(FirstStrikeAbility.getInstance(), Duration.WhileOnBattlefield));
|
||||
|
|
|
@ -35,12 +35,13 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.cards.Card;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterLandPermanent;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
||||
|
@ -58,7 +59,7 @@ public class DesolationAngel extends CardImpl<DesolationAngel> {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// Kicker (You may pay an additional as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{W}{W}")));
|
||||
this.addAbility(new KickerAbility("{W}{W}"));
|
||||
|
||||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
@ -90,26 +91,13 @@ class DesolationAngelEntersBattlefieldEffect extends OneShotEffect<DesolationAng
|
|||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
Card p = game.getCard(source.getSourceId());
|
||||
|
||||
boolean kicked = false;
|
||||
if (p != null) {
|
||||
for (Object cost : p.getSpellAbility().getOptionalCosts()) {
|
||||
if (cost instanceof KickerManaCost) {
|
||||
if (((KickerManaCost) cost).isPaid()) {
|
||||
kicked = true;
|
||||
}
|
||||
}
|
||||
boolean kicked = KickedCondition.getInstance().apply(game, source);
|
||||
for (Permanent permanent : game.getBattlefield().getAllActivePermanents(new FilterLandPermanent(),game)) {
|
||||
if ((!kicked && permanent.getControllerId() == source.getControllerId())
|
||||
|| kicked) {
|
||||
permanent.destroy(source.getSourceId(), game, false);
|
||||
}
|
||||
}
|
||||
|
||||
for (Permanent permanent : game.getBattlefield().getAllActivePermanents()) {
|
||||
if (permanent.getCardType().contains(CardType.LAND)) {
|
||||
if ((!kicked && permanent.getControllerId() == source.getControllerId()) || kicked) {
|
||||
permanent.destroy(source.getSourceId(), game, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -114,8 +114,8 @@ class CavernOfSoulsEffect extends OneShotEffect<CavernOfSoulsEffect> {
|
|||
game.debugMessage("player canceled choosing type. retrying.");
|
||||
}
|
||||
game.informPlayers(permanent.getName() + ": " + player.getName() + " has chosen " + typeChoice.getChoice());
|
||||
game.getState().setValue(permanent.getId() + "_type", typeChoice.getChoice());
|
||||
permanent.addInfo("chosen type", "<i>Chosen type: " + typeChoice.getChoice() + "</i>");
|
||||
game.getState().setValue(permanent.getId() + "_type", typeChoice.getChoice().toString());
|
||||
permanent.addInfo("chosen type", "<i>Chosen type: " + typeChoice.getChoice().toString() + "</i>");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.ConvokeAbility;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
@ -55,7 +54,7 @@ public class KavuPrimarch extends CardImpl<KavuPrimarch> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Kicker {4} (You may pay an additional {4} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{4}")));
|
||||
this.addAbility(new KickerAbility("{4}"));
|
||||
|
||||
// Convoke (Each creature you tap while casting this spell reduces its cost by {1} or by one mana of that creature's color.)
|
||||
this.addAbility(new ConvokeAbility());
|
||||
|
|
|
@ -36,7 +36,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.RegenerateSourceEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
|
@ -62,7 +61,7 @@ public class UrborgSkeleton extends CardImpl<UrborgSkeleton> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Kicker {3} (You may pay an additional {3} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{3}")));
|
||||
this.addAbility(new KickerAbility("{3}"));
|
||||
|
||||
// {B}: Regenerate Urborg Skeleton.
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new RegenerateSourceEffect(), new ManaCostsImpl("{B}")));
|
||||
|
|
|
@ -34,7 +34,6 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.effects.ReplacementEffectImpl;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -55,7 +54,7 @@ public class OrimsChant extends CardImpl<OrimsChant> {
|
|||
this.color.setWhite(true);
|
||||
|
||||
// Kicker {W} (You may pay an additional {W} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{W}")));
|
||||
this.addAbility(new KickerAbility("{W}"));
|
||||
|
||||
// Target player can't cast spells this turn.
|
||||
this.getSpellAbility().addTarget(new TargetPlayer());
|
||||
|
|
|
@ -32,11 +32,10 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
|
||||
|
@ -56,7 +55,7 @@ public class ApexHawks extends CardImpl<ApexHawks> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Multikicker (You may pay an additional {1}{W} any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}{W}")));
|
||||
this.addAbility(new MultikickerAbility("{1}{W}"));
|
||||
|
||||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
|
|
@ -35,11 +35,10 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.DiscardTargetEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.target.common.TargetOpponent;
|
||||
|
||||
|
@ -59,7 +58,7 @@ public class BloodhuskRitualist extends CardImpl<BloodhuskRitualist> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Multikicker (You may pay an additional {B} any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{B}")));
|
||||
this.addAbility(new MultikickerAbility("{B}"));
|
||||
|
||||
// When Bloodhusk Ritualist enters the battlefield, target opponent discards a card for each time it was kicked.
|
||||
Ability ability = new ConditionalTriggeredAbility(
|
||||
|
|
|
@ -33,10 +33,9 @@ import mage.Constants.Outcome;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.SpellAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.Permanent;
|
||||
|
@ -56,7 +55,7 @@ public class CometStorm extends CardImpl<CometStorm> {
|
|||
this.color.setRed(true);
|
||||
|
||||
// Multikicker {1}
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}")));
|
||||
this.addAbility(new MultikickerAbility("{1}"));
|
||||
|
||||
// Choose target creature or player, then choose another target creature or player for each time Comet Storm was kicked. Comet Storm deals X damage to each of them.
|
||||
this.getSpellAbility().addEffect(new CometStormEffect());
|
||||
|
|
|
@ -34,11 +34,10 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.DynamicValue;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.game.Game;
|
||||
import mage.players.Player;
|
||||
|
@ -61,7 +60,7 @@ public class DeathforgeShaman extends CardImpl<DeathforgeShaman> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Multikicker {R}
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{R}")));
|
||||
this.addAbility(new MultikickerAbility("{R}"));
|
||||
|
||||
// When Deathforge Shaman enters the battlefield, it deals damage to target player equal to twice the number of times it was kicked.
|
||||
Ability ability = new EntersBattlefieldTriggeredAbility(new DeathforgeShamanEffect());
|
||||
|
|
|
@ -32,11 +32,10 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.IslandwalkAbility;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
|
||||
|
@ -57,7 +56,7 @@ public class EnclaveElite extends CardImpl<EnclaveElite> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Multikicker (You may pay an additional any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}{U}")));
|
||||
this.addAbility(new MultikickerAbility("{1}{U}"));
|
||||
|
||||
// Islandwalk
|
||||
this.addAbility(new IslandwalkAbility());
|
||||
|
|
|
@ -33,11 +33,10 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.Mana;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.CountersCount;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.abilities.mana.DynamicManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
|
@ -57,7 +56,7 @@ public class EverflowingChalice extends CardImpl<EverflowingChalice> {
|
|||
this.expansionSetCode = "WWK";
|
||||
|
||||
// Multikicker {2} (You may pay an additional {2} any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{2}")));
|
||||
this.addAbility(new MultikickerAbility("{2}"));
|
||||
|
||||
// Everflowing Chalice enters the battlefield with a charge counter on it for each time it was kicked.
|
||||
this.addAbility(new EntersBattlefieldAbility(
|
||||
|
|
|
@ -32,10 +32,9 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
|
||||
|
@ -55,7 +54,7 @@ public class GnarlidPack extends CardImpl<GnarlidPack> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Multikicker (You may pay an additional any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}{G}")));
|
||||
this.addAbility(new MultikickerAbility("{1}{G}"));
|
||||
|
||||
// Gnarlid Pack enters the battlefield with a +1/+1 counter on it for each time it was kicked.
|
||||
this.addAbility(new EntersBattlefieldAbility(
|
||||
|
|
|
@ -35,12 +35,11 @@ import mage.Constants.TargetController;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.CountersCount;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.continious.BoostAllEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
|
@ -75,7 +74,7 @@ public class JoragaWarcaller extends CardImpl<JoragaWarcaller> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Multikicker {1}{G}
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}{G}")));
|
||||
this.addAbility(new MultikickerAbility("{1}{G}"));
|
||||
|
||||
// Joraga Warcaller enters the battlefield with a +1/+1 counter on it for each time it was kicked.
|
||||
this.addAbility(new EntersBattlefieldAbility(
|
||||
|
|
|
@ -32,11 +32,10 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.GainLifeEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
/**
|
||||
|
@ -55,7 +54,7 @@ public class LightkeeperOfEmeria extends CardImpl<LightkeeperOfEmeria> {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// Multikicker (You may pay an additional {W} any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{W}")));
|
||||
this.addAbility(new MultikickerAbility("{W}"));
|
||||
|
||||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
|
|
@ -36,12 +36,11 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect;
|
||||
import mage.abilities.effects.common.continious.BoostAllEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.common.FilterCreaturePermanent;
|
||||
|
@ -72,7 +71,7 @@ public class MarshalsAnthem extends CardImpl<MarshalsAnthem> {
|
|||
this.color.setWhite(true);
|
||||
|
||||
// Multikicker {1}{W}
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}{W}")));
|
||||
this.addAbility(new MultikickerAbility("{1}{W}"));
|
||||
|
||||
// Creatures you control get +1/+1.
|
||||
this.addAbility(new SimpleStaticAbility(Constants.Zone.BATTLEFIELD, new BoostAllEffect(1, 1, Constants.Duration.WhileOnBattlefield, filter, false)));
|
||||
|
|
|
@ -32,10 +32,9 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.abilities.keyword.SwampwalkAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
|
@ -57,7 +56,7 @@ public class QuagVampires extends CardImpl<QuagVampires> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Multikicker (You may pay an additional {1}{B} any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}{B}")));
|
||||
this.addAbility(new MultikickerAbility("{1}{B}"));
|
||||
|
||||
// Swampwalk
|
||||
this.addAbility(new SwampwalkAbility());
|
||||
|
|
|
@ -32,11 +32,10 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
|
||||
|
@ -56,7 +55,7 @@ public class SkitterOfLizards extends CardImpl<SkitterOfLizards> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Multikicker (You may pay an additional {1}{R} any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}{R}")));
|
||||
this.addAbility(new MultikickerAbility("{1}{R}"));
|
||||
|
||||
// Haste
|
||||
this.addAbility(HasteAbility.getInstance());
|
||||
|
|
|
@ -33,11 +33,9 @@ import mage.Constants.Outcome;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.SpellAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersTargetEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.Counter;
|
||||
import mage.counters.CounterType;
|
||||
|
@ -59,7 +57,7 @@ public class StrengthOfTheTajuru extends CardImpl<StrengthOfTheTajuru> {
|
|||
|
||||
|
||||
// Multikicker (You may pay an additional {1} any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{1}")));
|
||||
this.addAbility(new MultikickerAbility("{1}"));
|
||||
|
||||
// Choose target creature, then choose another target creature for each time Strength of the Tajuru was kicked. Put X +1/+1 counters on each of them.
|
||||
this.getSpellAbility().addEffect(new StrengthOfTheTajuruAddCountersTargetEffect());
|
||||
|
|
|
@ -35,12 +35,11 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.continious.GainAbilityTargetEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.game.Game;
|
||||
import mage.target.common.TargetCreaturePermanent;
|
||||
|
@ -61,7 +60,7 @@ public class VoyagerDrake extends CardImpl<VoyagerDrake> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Multikicker {U}
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{U}")));
|
||||
this.addAbility(new MultikickerAbility("{U}"));
|
||||
|
||||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
|
|
@ -33,10 +33,9 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.costs.mana.MultikickerManaCost;
|
||||
import mage.abilities.dynamicvalue.common.MultikickerCount;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.MultikickerAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.game.permanent.token.WolfToken;
|
||||
|
||||
|
@ -55,7 +54,7 @@ public class WolfbriarElemental extends CardImpl<WolfbriarElemental> {
|
|||
this.toughness = new MageInt(4);
|
||||
|
||||
// Multikicker (You may pay an additional {G} any number of times as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new MultikickerManaCost("{G}")));
|
||||
this.addAbility(new MultikickerAbility("{G}"));
|
||||
|
||||
// When Wolfbriar Elemental enters the battlefield, put a 2/2 green Wolf creature token onto the battlefield for each time it was kicked.
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new WolfToken(), new MultikickerCount())));
|
||||
|
|
|
@ -28,21 +28,20 @@
|
|||
|
||||
package mage.sets.zendikar;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
import mage.abilities.keyword.UnblockableAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
||||
/**
|
||||
* @author nantuko, BetaSteward_at_googlemail.com
|
||||
|
@ -63,7 +62,7 @@ public class AetherFigment extends CardImpl<AetherFigment> {
|
|||
this.addAbility(new UnblockableAbility());
|
||||
|
||||
// Kicker {3}
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{3}")));
|
||||
this.addAbility(new KickerAbility("{3}"));
|
||||
|
||||
// If AEther Figment was kicked, it enters the battlefield with two +1/+1 counters on it
|
||||
Ability ability = new EntersBattlefieldAbility(new ConditionalOneShotEffect(new AddCountersSourceEffect(CounterType.P1P1.createInstance(2)), KickedCondition.getInstance(), ""), staticText);
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.Duration;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalContinousEffect;
|
||||
import mage.abilities.dynamicvalue.DynamicValue;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
|
@ -58,7 +57,7 @@ public class BoldDefense extends CardImpl<BoldDefense> {
|
|||
this.expansionSetCode = "ZEN";
|
||||
this.color.setWhite(true);
|
||||
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{3}{W}")));
|
||||
this.addAbility(new KickerAbility("{3}{W}"));
|
||||
|
||||
DynamicValue dn = new BoldDefensePTCount();
|
||||
this.getSpellAbility().addEffect(new BoostControlledEffect(dn, dn, Duration.EndOfTurn));
|
||||
|
|
|
@ -32,7 +32,6 @@ import java.util.UUID;
|
|||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
@ -50,7 +49,7 @@ public class BurstLightning extends CardImpl<BurstLightning> {
|
|||
this.expansionSetCode = "ZEN";
|
||||
this.color.setRed(true);
|
||||
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{4}")));
|
||||
this.addAbility(new KickerAbility("{4}"));
|
||||
|
||||
this.getSpellAbility().addTarget(new TargetCreatureOrPlayer());
|
||||
this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new DamageTargetEffect(4),
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.common.CreateTokenEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
@ -51,7 +50,7 @@ public class ConquerorsPledge extends CardImpl<ConquerorsPledge> {
|
|||
this.expansionSetCode = "ZEN";
|
||||
this.color.setWhite(true);
|
||||
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{6}")));
|
||||
this.addAbility(new KickerAbility("{6}"));
|
||||
|
||||
this.getSpellAbility().addEffect(new ConditionalOneShotEffect(new CreateTokenEffect(new KorSoldierToken(), 12),
|
||||
new CreateTokenEffect(new KorSoldierToken(), 6), KickedCondition.getInstance(),
|
||||
|
|
|
@ -36,7 +36,6 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.DelayedTriggeredAbility;
|
||||
import mage.abilities.common.delayed.AtEndOfTurnDelayedTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalContinousEffect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.ExileTargetEffect;
|
||||
|
@ -59,7 +58,7 @@ public class ElementalAppeal extends CardImpl<ElementalAppeal> {
|
|||
this.color.setRed(true);
|
||||
|
||||
// Kicker {5}
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{5}")));
|
||||
this.addAbility(new KickerAbility("{5}"));
|
||||
|
||||
// Put a 7/1 red Elemental creature token with trample and haste onto the battlefield. Exile it at the beginning of the next end step.
|
||||
this.getSpellAbility().addEffect(new ElementalAppealEffect());
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.MageInt;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.SacrificeEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -67,7 +66,7 @@ public class GatekeeperOfMalakir extends CardImpl<GatekeeperOfMalakir> {
|
|||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{B}")));
|
||||
this.addAbility(new KickerAbility("{B}"));
|
||||
|
||||
|
||||
EntersBattlefieldTriggeredAbility ability =
|
||||
|
|
|
@ -40,7 +40,6 @@ import mage.abilities.StaticAbility;
|
|||
import mage.abilities.TriggeredAbilityImpl;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.AttachEffect;
|
||||
import mage.abilities.effects.common.continious.GainAbilityAttachedEffect;
|
||||
|
@ -74,7 +73,7 @@ public class Gigantiform extends CardImpl<Gigantiform> {
|
|||
this.color.setGreen(true);
|
||||
|
||||
// Kicker {4}
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{4}")));
|
||||
this.addAbility(new KickerAbility("{4}"));
|
||||
|
||||
// Enchant creature
|
||||
TargetPermanent auraTarget = new TargetCreaturePermanent();
|
||||
|
|
|
@ -34,7 +34,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.continious.BoostControlledEffect;
|
||||
import mage.abilities.effects.common.continious.GainAbilityControlledEffect;
|
||||
|
@ -59,7 +58,7 @@ public class GoblinBushwhacker extends CardImpl<GoblinBushwhacker> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Kicker {R} (You may pay an additional {R} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{R}")));
|
||||
this.addAbility(new KickerAbility("{R}"));
|
||||
|
||||
|
||||
// When Goblin Bushwhacker enters the battlefield, if it was kicked, creatures you control get +1/+0 and gain haste until end of turn.
|
||||
|
|
|
@ -34,7 +34,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.DestroyTargetEffect;
|
||||
import mage.abilities.keyword.HasteAbility;
|
||||
|
@ -58,7 +57,7 @@ public class GoblinRuinblaster extends CardImpl<GoblinRuinblaster> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
// Kicker {R} (You may pay an additional {R} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{R}")));
|
||||
this.addAbility(new KickerAbility("{R}"));
|
||||
|
||||
|
||||
// Haste
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.DestroyTargetEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
|
@ -57,7 +56,7 @@ public class HeartstabberMosquito extends CardImpl<HeartstabberMosquito> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Kicker {2}{B} (You may pay an additional {2}{B} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{2}{B}")));
|
||||
this.addAbility(new KickerAbility("{2}{B}"));
|
||||
|
||||
|
||||
// Flying
|
||||
|
|
|
@ -32,7 +32,6 @@ import java.util.UUID;
|
|||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.common.DrawCardControllerEffect;
|
||||
import mage.abilities.effects.common.ReturnToHandTargetEffect;
|
||||
|
@ -52,7 +51,7 @@ public class IntoTheRoil extends CardImpl<IntoTheRoil> {
|
|||
this.color.setBlue(true);
|
||||
|
||||
// Kicker {1}{U} (You may pay an additional {1}{U} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{1}{U}")));
|
||||
this.addAbility(new KickerAbility("{1}{U}"));
|
||||
|
||||
// Return target nonland permanent to its owner's hand. If Into the Roil was kicked, draw a card.
|
||||
this.getSpellAbility().addEffect(new ReturnToHandTargetEffect());
|
||||
|
|
|
@ -34,7 +34,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.continious.GainAbilityTargetEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
|
@ -58,7 +57,7 @@ public class KorAeronaut extends CardImpl<KorAeronaut> {
|
|||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{1}{W}")));
|
||||
this.addAbility(new KickerAbility("{1}{W}"));
|
||||
|
||||
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
|
|
@ -34,7 +34,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.DestroyTargetEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
@ -67,7 +66,7 @@ public class KorSanctifiers extends CardImpl<KorSanctifiers> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Kicker {W} (You may pay an additional {W} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{W}")));
|
||||
this.addAbility(new KickerAbility("{W}"));
|
||||
|
||||
|
||||
// When Kor Sanctifiers enters the battlefield, if it was kicked, destroy target artifact or enchantment.
|
||||
|
|
|
@ -30,7 +30,6 @@ package mage.sets.zendikar;
|
|||
import mage.Constants.*;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalContinousEffect;
|
||||
import mage.abilities.effects.ContinuousEffectImpl;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -58,7 +57,7 @@ public class MarshCasualties extends CardImpl<MarshCasualties> {
|
|||
this.color.setBlack(true);
|
||||
|
||||
// Kicker {3}
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{3}")));
|
||||
this.addAbility(new KickerAbility("{3}"));
|
||||
|
||||
// Creatures target player controls get -1/-1 until end of turn. If Marsh Casualties was kicked, those creatures get -2/-2 until end of turn instead.
|
||||
this.getSpellAbility().addEffect(new ConditionalContinousEffect(
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.DestroyTargetEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
@ -66,7 +65,7 @@ public class MoldShambler extends CardImpl<MoldShambler> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Kicker {1}{G} (You may pay an additional {1}{G} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{1}{G}")));
|
||||
this.addAbility(new KickerAbility("{1}{G}"));
|
||||
|
||||
// When Mold Shambler enters the battlefield, if it was kicked, destroy target noncreature permanent.
|
||||
EntersBattlefieldTriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new DestroyTargetEffect(), false);
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.DestroyTargetEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
|
@ -66,7 +65,7 @@ public class OranRiefRecluse extends CardImpl<OranRiefRecluse> {
|
|||
this.toughness = new MageInt(3);
|
||||
|
||||
// Kicker {2}{G} (You may pay an additional {2}{G} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{2}{G}")));
|
||||
this.addAbility(new KickerAbility("{2}{G}"));
|
||||
|
||||
// Reach (This creature can block creatures with flying.)
|
||||
this.addAbility(ReachAbility.getInstance());
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.Outcome;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
@ -57,7 +56,7 @@ public class RiteOfReplication extends CardImpl<RiteOfReplication> {
|
|||
this.color.setBlue(true);
|
||||
|
||||
// Kicker {5}
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{5}")));
|
||||
this.addAbility(new KickerAbility("{5}"));
|
||||
|
||||
// Put a token that's a copy of target creature onto the battlefield. If Rite of Replication was kicked, put five of those tokens onto the battlefield instead.
|
||||
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
|
||||
|
|
|
@ -34,7 +34,6 @@ import mage.Constants.Outcome;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
@ -61,7 +60,7 @@ public class SadisticSacrament extends CardImpl<SadisticSacrament> {
|
|||
this.color.setBlack(true);
|
||||
|
||||
// Kicker {7}
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{7}")));
|
||||
this.addAbility(new KickerAbility("{7}"));
|
||||
|
||||
// Search target player's library for up to three cards, exile them, then that player shuffles his or her library.
|
||||
// If Sadistic Sacrament was kicked, instead search that player's library for up to fifteen cards, exile them, then that player shuffles his or her library.
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.TapTargetEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
|
@ -61,7 +60,7 @@ public class TempestOwl extends CardImpl<TempestOwl> {
|
|||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// Kicker {4}{U}
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{4}{U}")));
|
||||
this.addAbility(new KickerAbility("{4}{U}"));
|
||||
|
||||
// When Tempest Owl enters the battlefield, if it was kicked, tap up to three target permanents.
|
||||
EntersBattlefieldTriggeredAbility ability = new EntersBattlefieldTriggeredAbility(new TapTargetEffect(), false);
|
||||
|
|
|
@ -33,7 +33,6 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalTriggeredAbility;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
import mage.abilities.keyword.KickerAbility;
|
||||
|
@ -57,7 +56,7 @@ public class TorchSlinger extends CardImpl<TorchSlinger> {
|
|||
this.toughness = new MageInt(2);
|
||||
|
||||
// Kicker {1}{R} (You may pay an additional {1}{R} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{1}{R}")));
|
||||
this.addAbility(new KickerAbility("{1}{R}"));
|
||||
|
||||
|
||||
// When Torch Slinger enters the battlefield, if it was kicked, it deals 2 damage to target creature.
|
||||
|
|
|
@ -35,7 +35,6 @@ import mage.Constants.Rarity;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.SpellAbility;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalOneShotEffect;
|
||||
import mage.abilities.effects.ReplacementEffectImpl;
|
||||
import mage.abilities.effects.common.DamageTargetEffect;
|
||||
|
@ -58,7 +57,7 @@ public class UnstableFooting extends CardImpl<UnstableFooting> {
|
|||
this.color.setRed(true);
|
||||
|
||||
// Kicker {3}{R} (You may pay an additional {3}{R} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{3}{R}")));
|
||||
this.addAbility(new KickerAbility("{3}{R}"));
|
||||
|
||||
// Damage can't be prevented this turn. If Unstable Footing was kicked, it deals 5 damage to target player.
|
||||
this.getSpellAbility().addEffect(new UnstableFootingEffect());
|
||||
|
|
|
@ -32,7 +32,6 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Duration;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalContinousEffect;
|
||||
import mage.abilities.effects.ContinuousEffect;
|
||||
import mage.abilities.effects.common.continious.BoostTargetEffect;
|
||||
|
@ -55,7 +54,7 @@ public class VampiresBite extends CardImpl<VampiresBite> {
|
|||
this.color.setBlack(true);
|
||||
|
||||
// Kicker {2}{B} (You may pay an additional {2}{B} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{2}{B}")));
|
||||
this.addAbility(new KickerAbility("{2}{B}"));
|
||||
|
||||
// Target creature gets +3/+0 until end of turn. If Vampire's Bite was kicked, that creature gains lifelink until end of turn.
|
||||
this.getSpellAbility().addTarget(new TargetCreaturePermanent());
|
||||
|
|
|
@ -29,12 +29,10 @@
|
|||
package mage.sets.zendikar;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Duration;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.abilities.condition.common.KickedCondition;
|
||||
import mage.abilities.costs.mana.KickerManaCost;
|
||||
import mage.abilities.decorator.ConditionalContinousEffect;
|
||||
import mage.abilities.effects.common.continious.BoostTargetEffect;
|
||||
import mage.abilities.effects.common.continious.GainAbilityTargetEffect;
|
||||
|
@ -56,7 +54,7 @@ public class VinesOfVastwood extends CardImpl<VinesOfVastwood> {
|
|||
this.color.setGreen(true);
|
||||
|
||||
// Kicker {G} (You may pay an additional {G} as you cast this spell.)
|
||||
this.addAbility(new KickerAbility(new KickerManaCost("{G}")));
|
||||
this.addAbility(new KickerAbility("{G}"));
|
||||
|
||||
// Target creature can't be the target of spells or abilities your opponents control this turn.
|
||||
TargetCreaturePermanent target = new TargetCreaturePermanent();
|
||||
|
|
Loading…
Reference in a new issue