mirror of
https://github.com/correl/mage.git
synced 2024-12-25 03:00:15 +00:00
now use manaability child for adding mana of any color, some refactoring and switch to use new ability for that
This commit is contained in:
parent
b707d11aa4
commit
01b43b0d87
48 changed files with 181 additions and 186 deletions
|
@ -35,7 +35,7 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.Mana;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
/**
|
||||
|
@ -53,7 +53,7 @@ public class AkkiRockspeaker extends CardImpl<AkkiRockspeaker> {
|
|||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(1);
|
||||
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new ManaEffect(new Mana(Constants.ColoredManaSymbol.R))));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BasicManaEffect(new Mana(Constants.ColoredManaSymbol.R))));
|
||||
}
|
||||
|
||||
public AkkiRockspeaker(final AkkiRockspeaker card) {
|
||||
|
|
|
@ -38,7 +38,7 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.common.TapTargetCost;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.effects.common.UntapSourceEffect;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.Filter;
|
||||
|
@ -62,7 +62,7 @@ public class HonorWornShaku extends CardImpl<HonorWornShaku> {
|
|||
public HonorWornShaku(UUID ownerId) {
|
||||
super(ownerId, 254, "Honor-Worn Shaku", Rarity.UNCOMMON, new CardType[]{CardType.ARTIFACT}, "{3}");
|
||||
this.expansionSetCode = "CHK";
|
||||
this.addAbility(new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new ManaEffect(new Mana(0, 0, 0, 0, 0, 1, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new BasicManaEffect(new Mana(0, 0, 0, 0, 0, 1, 0)), new TapSourceCost()));
|
||||
Ability ability = new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new UntapSourceEffect(), new TapTargetCost(new TargetControlledPermanent(filter)));
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
@ -37,6 +37,7 @@ import mage.MageInt;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.mana.ColoredManaCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
/**
|
||||
|
@ -53,7 +54,7 @@ public class OrochiLeafcaller extends CardImpl<OrochiLeafcaller> {
|
|||
this.color.setGreen(true);
|
||||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(1);
|
||||
this.addAbility(new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new ColoredManaCost(Constants.ColoredManaSymbol.G)));
|
||||
this.addAbility(new AnyColorManaAbility(new ColoredManaCost(Constants.ColoredManaSymbol.G)));
|
||||
}
|
||||
|
||||
public OrochiLeafcaller (final OrochiLeafcaller card) {
|
||||
|
|
|
@ -38,7 +38,7 @@ import mage.Mana;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.effects.common.continious.BoostControlledEffect;
|
||||
import mage.abilities.effects.common.continious.GainAbilityControlledEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -68,7 +68,7 @@ public class SachiDaughterOfSeshiro extends CardImpl<SachiDaughterOfSeshiro> {
|
|||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(3);
|
||||
this.addAbility(new SimpleStaticAbility(Constants.Zone.BATTLEFIELD, new BoostControlledEffect(0, 1, Constants.Duration.WhileOnBattlefield, snakeFilter, true)));
|
||||
this.addAbility(new SimpleStaticAbility(Constants.Zone.BATTLEFIELD, new GainAbilityControlledEffect(new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new ManaEffect(new Mana(0, 2, 0, 0, 0, 0, 0)), new TapSourceCost()), Constants.Duration.WhileOnBattlefield, shamanFilter, false)));
|
||||
this.addAbility(new SimpleStaticAbility(Constants.Zone.BATTLEFIELD, new GainAbilityControlledEffect(new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new BasicManaEffect(new Mana(0, 2, 0, 0, 0, 0, 0)), new TapSourceCost()), Constants.Duration.WhileOnBattlefield, shamanFilter, false)));
|
||||
}
|
||||
|
||||
public SachiDaughterOfSeshiro(final SachiDaughterOfSeshiro card) {
|
||||
|
|
|
@ -35,7 +35,7 @@ import mage.MageInt;
|
|||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
|
@ -74,7 +74,7 @@ public class KnotvineMystic extends CardImpl<KnotvineMystic>{
|
|||
class KnotvineMysticManaAbility extends BasicManaAbility<KnotvineMysticManaAbility> {
|
||||
|
||||
public KnotvineMysticManaAbility() {
|
||||
super(new ManaEffect(new Mana(1, 1, 0, 1, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(1, 1, 0, 1, 0, 0, 0)));
|
||||
this.netMana.setGreen(1);
|
||||
this.netMana.setRed(1);
|
||||
this.netMana.setWhite(1);
|
||||
|
|
|
@ -30,17 +30,15 @@ package mage.sets.conflux;
|
|||
import java.util.UUID;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.Constants.Zone;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author North
|
||||
* @author North, Loki
|
||||
*/
|
||||
public class ManaCylix extends CardImpl<ManaCylix> {
|
||||
|
||||
|
@ -48,8 +46,7 @@ public class ManaCylix extends CardImpl<ManaCylix> {
|
|||
super(ownerId, 138, "Mana Cylix", Rarity.COMMON, new CardType[]{CardType.ARTIFACT}, "{1}");
|
||||
this.expansionSetCode = "CON";
|
||||
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new GenericManaCost(1));
|
||||
ability.addChoice(new ChoiceColor());
|
||||
Ability ability = new AnyColorManaAbility(new GenericManaCost(1));
|
||||
ability.addCost(new TapSourceCost());
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
@ -31,16 +31,12 @@ package mage.sets.conflux;
|
|||
import java.util.UUID;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.Constants.Zone;
|
||||
import mage.abilities.common.EntersBattlefieldTappedAbility;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.effects.common.SacrificeSourceUnlessPaysEffect;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -54,9 +50,7 @@ public class RuptureSpire extends CardImpl<RuptureSpire> {
|
|||
|
||||
this.addAbility(new EntersBattlefieldTappedAbility());
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new SacrificeSourceUnlessPaysEffect(new ManaCostsImpl("{1}")), false));
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new TapSourceCost());
|
||||
ability.addChoice(new ChoiceColor());
|
||||
this.addAbility(ability);
|
||||
this.addAbility(new AnyColorManaAbility());
|
||||
}
|
||||
|
||||
public RuptureSpire (final RuptureSpire card) {
|
||||
|
|
|
@ -29,13 +29,9 @@
|
|||
package mage.sets.darksteel;
|
||||
|
||||
import mage.Constants;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.keyword.IndestructibleAbility;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
|
@ -49,9 +45,7 @@ public class DarksteelIngot extends CardImpl<DarksteelIngot> {
|
|||
super(ownerId, 112, "Darksteel Ingot", Constants.Rarity.COMMON, new Constants.CardType[]{Constants.CardType.ARTIFACT}, "{3}");
|
||||
this.expansionSetCode = "DST";
|
||||
this.addAbility(IndestructibleAbility.getInstance());
|
||||
Ability ability = new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new TapSourceCost());
|
||||
ability.addChoice(new ChoiceColor());
|
||||
this.addAbility(ability);
|
||||
this.addAbility(new AnyColorManaAbility());
|
||||
}
|
||||
|
||||
public DarksteelIngot(final DarksteelIngot card) {
|
||||
|
|
|
@ -38,7 +38,7 @@ import mage.Mana;
|
|||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.common.SacrificeTargetCost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.Filter;
|
||||
|
@ -84,7 +84,7 @@ public class KrarkClanStoker extends CardImpl<KrarkClanStoker> {
|
|||
class KrarkClanStokerAbility extends BasicManaAbility<KrarkClanStokerAbility> {
|
||||
|
||||
public KrarkClanStokerAbility() {
|
||||
super(new ManaEffect(new Mana(2, 0, 0, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(2, 0, 0, 0, 0, 0, 0)));
|
||||
this.netMana.setRed(2);
|
||||
}
|
||||
|
||||
|
|
|
@ -37,12 +37,11 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.RemoveCountersSourceCost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.counters.CounterType;
|
||||
import mage.counters.common.ChargeCounter;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -55,7 +54,7 @@ public class MirrodinsCore extends CardImpl<MirrodinsCore> {
|
|||
this.expansionSetCode = "DST";
|
||||
this.addAbility(new ColorlessManaAbility());
|
||||
this.addAbility(new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new AddCountersSourceEffect(CounterType.CHARGE.createInstance()), new TapSourceCost()));
|
||||
Ability ability = new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new TapSourceCost());
|
||||
Ability ability = new AnyColorManaAbility();
|
||||
ability.addCost(new RemoveCountersSourceCost(CounterType.CHARGE.createInstance()));
|
||||
this.addAbility(ability);
|
||||
|
||||
|
|
|
@ -35,7 +35,7 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.Mana;
|
||||
import mage.abilities.common.PutIntoGraveFromBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
/**
|
||||
|
@ -49,7 +49,7 @@ public class MyrMoonvessel extends CardImpl<MyrMoonvessel> {
|
|||
this.subtype.add("Myr");
|
||||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(1);
|
||||
this.addAbility(new PutIntoGraveFromBattlefieldTriggeredAbility(new ManaEffect(new Mana(0, 0, 0, 0, 0, 1, 0))));
|
||||
this.addAbility(new PutIntoGraveFromBattlefieldTriggeredAbility(new BasicManaEffect(new Mana(0, 0, 0, 0, 0, 1, 0))));
|
||||
}
|
||||
|
||||
public MyrMoonvessel(final MyrMoonvessel card) {
|
||||
|
|
|
@ -33,9 +33,7 @@ import java.util.UUID;
|
|||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
|
@ -65,7 +63,7 @@ public class UrGolemsEye extends CardImpl<UrGolemsEye> {
|
|||
class UrGolemsEyeAbility extends BasicManaAbility<UrGolemsEyeAbility> {
|
||||
|
||||
public UrGolemsEyeAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 0, 0, 0, 2, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 0, 0, 0, 2, 0)));
|
||||
this.netMana.setColorless(2);
|
||||
}
|
||||
|
||||
|
|
|
@ -30,20 +30,14 @@ package mage.sets.darksteel;
|
|||
|
||||
import java.util.UUID;
|
||||
|
||||
import mage.Constants;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
/**
|
||||
* @author Loki
|
||||
|
@ -58,9 +52,8 @@ public class ViridianAcolyte extends CardImpl<ViridianAcolyte> {
|
|||
this.color.setGreen(true);
|
||||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(1);
|
||||
Ability ability = new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new GenericManaCost(1));
|
||||
Ability ability = new AnyColorManaAbility(new GenericManaCost(1));
|
||||
ability.addCost(new TapSourceCost());
|
||||
ability.addChoice(new ChoiceColor());
|
||||
this.addAbility(ability);
|
||||
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.Mana;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -66,7 +66,7 @@ public class CascadeBluffs extends CardImpl<CascadeBluffs> {
|
|||
class CascadeBluffsFirstManaAbility extends BasicManaAbility<CascadeBluffsFirstManaAbility> {
|
||||
|
||||
public CascadeBluffsFirstManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 2, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 2, 0, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{U/R}"));
|
||||
this.netMana.setBlue(2);
|
||||
}
|
||||
|
@ -84,7 +84,7 @@ class CascadeBluffsFirstManaAbility extends BasicManaAbility<CascadeBluffsFirstM
|
|||
class CascadeBluffsSecondManaAbility extends BasicManaAbility<CascadeBluffsSecondManaAbility> {
|
||||
|
||||
public CascadeBluffsSecondManaAbility() {
|
||||
super(new ManaEffect(new Mana(1, 0, 1, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(1, 0, 1, 0, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{U/R}"));
|
||||
this.netMana.setBlue(1);
|
||||
this.netMana.setRed(1);
|
||||
|
@ -103,7 +103,7 @@ class CascadeBluffsSecondManaAbility extends BasicManaAbility<CascadeBluffsSecon
|
|||
class CascadeBluffsThirdManaAbility extends BasicManaAbility<CascadeBluffsThirdManaAbility> {
|
||||
|
||||
public CascadeBluffsThirdManaAbility() {
|
||||
super(new ManaEffect(new Mana(2, 0, 0, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(2, 0, 0, 0, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{U/R}"));
|
||||
this.netMana.setRed(2);
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.Mana;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -67,7 +67,7 @@ public class FetidHeath extends CardImpl<FetidHeath> {
|
|||
class FetidHeathFirstManaAbility extends BasicManaAbility<FetidHeathFirstManaAbility> {
|
||||
|
||||
public FetidHeathFirstManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 0, 2, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 0, 2, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{W/B}"));
|
||||
this.netMana.setWhite(2);
|
||||
}
|
||||
|
@ -85,7 +85,7 @@ class FetidHeathFirstManaAbility extends BasicManaAbility<FetidHeathFirstManaAbi
|
|||
class FetidHeathSecondManaAbility extends BasicManaAbility<FetidHeathSecondManaAbility> {
|
||||
|
||||
public FetidHeathSecondManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 0, 1, 1, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 0, 1, 1, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{W/B}"));
|
||||
this.netMana.setBlack(1);
|
||||
this.netMana.setWhite(1);
|
||||
|
@ -104,7 +104,7 @@ class FetidHeathSecondManaAbility extends BasicManaAbility<FetidHeathSecondManaA
|
|||
class FetidHeathThirdManaAbility extends BasicManaAbility<FetidHeathThirdManaAbility> {
|
||||
|
||||
public FetidHeathThirdManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 0, 0, 2, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 0, 0, 2, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{W/B}"));
|
||||
this.netMana.setBlack(2);
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.Mana;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -67,7 +67,7 @@ public class FloodedGrove extends CardImpl<FloodedGrove> {
|
|||
class FloodedGroveFirstManaAbility extends BasicManaAbility<FloodedGroveFirstManaAbility> {
|
||||
|
||||
public FloodedGroveFirstManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 2, 0, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 2, 0, 0, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{G/U}"));
|
||||
this.netMana.setGreen(2);
|
||||
}
|
||||
|
@ -85,7 +85,7 @@ class FloodedGroveFirstManaAbility extends BasicManaAbility<FloodedGroveFirstMan
|
|||
class FloodedGroveSecondManaAbility extends BasicManaAbility<FloodedGroveSecondManaAbility> {
|
||||
|
||||
public FloodedGroveSecondManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 1, 1, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 1, 1, 0, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{G/U}"));
|
||||
this.netMana.setGreen(1);
|
||||
this.netMana.setBlue(1);
|
||||
|
@ -104,7 +104,7 @@ class FloodedGroveSecondManaAbility extends BasicManaAbility<FloodedGroveSecondM
|
|||
class FloodedGroveThirdManaAbility extends BasicManaAbility<FloodedGroveThirdManaAbility> {
|
||||
|
||||
public FloodedGroveThirdManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 2, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 2, 0, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{G/U}"));
|
||||
this.netMana.setBlue(2);
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.Mana;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -66,7 +66,7 @@ public class RuggedPrairie extends CardImpl<RuggedPrairie> {
|
|||
class RuggedPrairieFirstManaAbility extends BasicManaAbility<RuggedPrairieFirstManaAbility> {
|
||||
|
||||
public RuggedPrairieFirstManaAbility() {
|
||||
super(new ManaEffect(new Mana(2, 0, 0, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(2, 0, 0, 0, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{R/W}"));
|
||||
this.netMana.setRed(2);
|
||||
}
|
||||
|
@ -84,7 +84,7 @@ class RuggedPrairieFirstManaAbility extends BasicManaAbility<RuggedPrairieFirstM
|
|||
class RuggedPrairieSecondManaAbility extends BasicManaAbility<RuggedPrairieSecondManaAbility> {
|
||||
|
||||
public RuggedPrairieSecondManaAbility() {
|
||||
super(new ManaEffect(new Mana(1, 0, 0, 1, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(1, 0, 0, 1, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{R/W}"));
|
||||
this.netMana.setRed(1);
|
||||
this.netMana.setWhite(1);
|
||||
|
@ -103,7 +103,7 @@ class RuggedPrairieSecondManaAbility extends BasicManaAbility<RuggedPrairieSecon
|
|||
class RuggedPrairieThirdManaAbility extends BasicManaAbility<RuggedPrairieThirdManaAbility> {
|
||||
|
||||
public RuggedPrairieThirdManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 0, 2, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 0, 2, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{R/W}"));
|
||||
this.netMana.setWhite(2);
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.Mana;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -67,7 +67,7 @@ public class TwilightMire extends CardImpl<TwilightMire> {
|
|||
class TwilightMireFirstManaAbility extends BasicManaAbility<TwilightMireFirstManaAbility> {
|
||||
|
||||
public TwilightMireFirstManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 0, 0, 2, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 0, 0, 2, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{B/G}"));
|
||||
this.netMana.setBlack(2);
|
||||
}
|
||||
|
@ -85,7 +85,7 @@ class TwilightMireFirstManaAbility extends BasicManaAbility<TwilightMireFirstMan
|
|||
class TwilightMireSecondManaAbility extends BasicManaAbility<TwilightMireSecondManaAbility> {
|
||||
|
||||
public TwilightMireSecondManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 1, 0, 0, 1, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 1, 0, 0, 1, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{B/G}"));
|
||||
this.netMana.setBlack(1);
|
||||
this.netMana.setGreen(1);
|
||||
|
@ -104,7 +104,7 @@ class TwilightMireSecondManaAbility extends BasicManaAbility<TwilightMireSecondM
|
|||
class TwilightMireThirdManaAbility extends BasicManaAbility<TwilightMireThirdManaAbility> {
|
||||
|
||||
public TwilightMireThirdManaAbility() {
|
||||
super(new ManaEffect(new Mana(0, 2, 0, 0, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 2, 0, 0, 0, 0, 0)));
|
||||
this.addCost(new ManaCostsImpl("{B/G}"));
|
||||
this.netMana.setGreen(2);
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ import java.util.UUID;
|
|||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
/**
|
||||
|
@ -45,7 +45,7 @@ public class PyreticRitual extends CardImpl<PyreticRitual> {
|
|||
super(ownerId, 153, "Pyretic Ritual", Rarity.COMMON, new CardType[]{CardType.INSTANT}, "{1}{R}");
|
||||
this.expansionSetCode = "M11";
|
||||
this.color.setRed(true);
|
||||
this.getSpellAbility().addEffect(new ManaEffect(Mana.RedMana(3)));
|
||||
this.getSpellAbility().addEffect(new BasicManaEffect(Mana.RedMana(3)));
|
||||
}
|
||||
|
||||
public PyreticRitual(final PyreticRitual card) {
|
||||
|
|
|
@ -30,14 +30,10 @@ package mage.sets.magic2012;
|
|||
|
||||
import java.util.UUID;
|
||||
|
||||
import mage.Constants;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -48,9 +44,7 @@ public class Manalith extends CardImpl<Manalith> {
|
|||
public Manalith (UUID ownerId) {
|
||||
super(ownerId, 212, "Manalith", Rarity.COMMON, new CardType[]{CardType.ARTIFACT}, "{3}");
|
||||
this.expansionSetCode = "M12";
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Constants.Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new TapSourceCost());
|
||||
ability.addChoice(new ChoiceColor());
|
||||
this.addAbility(ability);
|
||||
this.addAbility(new AnyColorManaAbility());
|
||||
}
|
||||
|
||||
public Manalith (final Manalith card) {
|
||||
|
|
|
@ -30,22 +30,18 @@ package mage.sets.mirrodinbesieged;
|
|||
import java.util.UUID;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.Constants.Zone;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldAbility;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.RemoveCountersSourceCost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.effects.common.TapSourceEffect;
|
||||
import mage.abilities.effects.common.counter.AddCountersSourceEffect;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.choices.ChoiceColor;
|
||||
import mage.counters.CounterType;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author North
|
||||
* @author North, Loki
|
||||
*/
|
||||
public class SphereOfTheSuns extends CardImpl<SphereOfTheSuns> {
|
||||
|
||||
|
@ -59,8 +55,7 @@ public class SphereOfTheSuns extends CardImpl<SphereOfTheSuns> {
|
|||
this.addAbility(ability);
|
||||
|
||||
RemoveCountersSourceCost removeCounterCost = new RemoveCountersSourceCost(CounterType.CHARGE.getName(), 1);
|
||||
ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new TapSourceCost());
|
||||
ability.addChoice(new ChoiceColor());
|
||||
ability = new AnyColorManaAbility();
|
||||
ability.addCost(removeCounterCost);
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
@ -30,17 +30,13 @@ package mage.sets.newphyrexia;
|
|||
import java.util.UUID;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.Constants.Zone;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author North
|
||||
* @author North, Loki
|
||||
*/
|
||||
public class AlloyMyr extends CardImpl<AlloyMyr> {
|
||||
|
||||
|
@ -52,9 +48,7 @@ public class AlloyMyr extends CardImpl<AlloyMyr> {
|
|||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new TapSourceCost());
|
||||
ability.addChoice(new ChoiceColor());
|
||||
this.addAbility(ability);
|
||||
this.addAbility(new AnyColorManaAbility());
|
||||
}
|
||||
|
||||
public AlloyMyr(final AlloyMyr card) {
|
||||
|
|
|
@ -33,7 +33,7 @@ import mage.Constants.Rarity;
|
|||
import mage.MageInt;
|
||||
import mage.Mana;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
/**
|
||||
|
@ -52,7 +52,7 @@ public class PriestOfUrabrask extends CardImpl<PriestOfUrabrask> {
|
|||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(1);
|
||||
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new ManaEffect(Mana.RedMana(3))));
|
||||
this.addAbility(new EntersBattlefieldTriggeredAbility(new BasicManaEffect(Mana.RedMana(3))));
|
||||
}
|
||||
|
||||
public PriestOfUrabrask(final PriestOfUrabrask card) {
|
||||
|
|
|
@ -36,7 +36,7 @@ import mage.Constants.Zone;
|
|||
import mage.Mana;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
|
@ -64,7 +64,7 @@ public class BorosSignet extends CardImpl<BorosSignet> {
|
|||
|
||||
class BorosSignetAbility extends BasicManaAbility<BorosSignetAbility> {
|
||||
public BorosSignetAbility() {
|
||||
super(new ManaEffect(new Mana(1, 0, 0, 1, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(1, 0, 0, 1, 0, 0, 0)));
|
||||
this.addCost(new GenericManaCost(1));
|
||||
this.netMana.setRed(1);
|
||||
this.netMana.setWhite(1);
|
||||
|
|
|
@ -36,7 +36,7 @@ import mage.Constants.Zone;
|
|||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.abilities.mana.ManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -67,7 +67,7 @@ public class DimirSignet extends CardImpl<DimirSignet> {
|
|||
|
||||
class DimirSignetAbility extends BasicManaAbility<DimirSignetAbility> {
|
||||
public DimirSignetAbility() {
|
||||
super(new ManaEffect(new Mana(0, 0, 1, 0, 1, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 0, 1, 0, 1, 0, 0)));
|
||||
this.netMana.setBlue(1);
|
||||
this.netMana.setBlack(1);
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@ import mage.Constants.Rarity;
|
|||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
|
@ -65,7 +65,7 @@ public class GolgariSignet extends CardImpl<GolgariSignet> {
|
|||
class GolgariSignetAbility extends BasicManaAbility<GolgariSignetAbility> {
|
||||
|
||||
public GolgariSignetAbility() {
|
||||
super(new ManaEffect(new Mana(0, 1, 0, 0, 1, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 1, 0, 0, 1, 0, 0)));
|
||||
this.netMana.setGreen(1);
|
||||
this.netMana.setBlack(1);
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ import mage.Constants.Rarity;
|
|||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
|
@ -66,7 +66,7 @@ public class SelesnyaSignet extends CardImpl<SelesnyaSignet> {
|
|||
class SelesnyaSignetAbility extends BasicManaAbility<SelesnyaSignetAbility> {
|
||||
|
||||
public SelesnyaSignetAbility() {
|
||||
super(new ManaEffect(new Mana(0, 1, 0, 1, 0, 0, 0)));
|
||||
super(new BasicManaEffect(new Mana(0, 1, 0, 1, 0, 0, 0)));
|
||||
this.netMana.setGreen(1);
|
||||
this.netMana.setWhite(1);
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ import mage.abilities.costs.common.SacrificeSourceCost;
|
|||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.GenericManaCost;
|
||||
import mage.abilities.effects.common.DrawCardControllerEffect;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
/**
|
||||
|
@ -50,7 +50,7 @@ public class DreamstoneHedron extends CardImpl<DreamstoneHedron> {
|
|||
super(ownerId, 216, "Dreamstone Hedron", Rarity.UNCOMMON, new CardType[]{CardType.ARTIFACT}, "{6}");
|
||||
this.expansionSetCode = "ROE";
|
||||
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ManaEffect(Mana.ColorlessMana(3)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BasicManaEffect(Mana.ColorlessMana(3)), new TapSourceCost()));
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD,
|
||||
new DrawCardControllerEffect(3),
|
||||
new GenericManaCost(3));
|
||||
|
|
|
@ -32,7 +32,7 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageObject;
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.abilities.mana.ColorlessManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -71,7 +71,7 @@ class EldraziTempleManaAbility extends BasicManaAbility<EldraziTempleManaAbility
|
|||
+ "<b>(Mage Tip: This ability can only be activated when an Eldrazi spell or ability is on the stack.)</b>";
|
||||
|
||||
EldraziTempleManaAbility ( ) {
|
||||
super(new ManaEffect(Mana.ColorlessMana(2)));
|
||||
super(new BasicManaEffect(Mana.ColorlessMana(2)));
|
||||
this.netMana.setColorless(2);
|
||||
}
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@ import mage.abilities.common.SimpleStaticAbility;
|
|||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.continious.GainAbilityControlledEffect;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.keyword.LevelAbility;
|
||||
import mage.abilities.keyword.LevelUpAbility;
|
||||
import mage.abilities.mana.SimpleManaAbility;
|
||||
|
@ -75,13 +75,13 @@ public class JoragaTreespeaker extends LevelerCard<JoragaTreespeaker> {
|
|||
this.addAbility(new LevelUpAbility(new ManaCostsImpl("{1}{G}")));
|
||||
|
||||
Abilities<Ability> abilities1 = new AbilitiesImpl<Ability>();
|
||||
abilities1.add(new SimpleManaAbility(Zone.BATTLEFIELD, new ManaEffect(Mana.GreenMana(2)), new TapSourceCost()));
|
||||
abilities1.add(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(Mana.GreenMana(2)), new TapSourceCost()));
|
||||
this.getLevels().add(new LevelAbility(1, 4, abilities1, 1, 2));
|
||||
|
||||
Abilities<Ability> abilities2 = new AbilitiesImpl<Ability>();
|
||||
abilities2.add(new SimpleStaticAbility(Zone.BATTLEFIELD,
|
||||
new GainAbilityControlledEffect(new SimpleActivatedAbility(Zone.BATTLEFIELD,
|
||||
new ManaEffect(Mana.GreenMana(2)),
|
||||
new BasicManaEffect(Mana.GreenMana(2)),
|
||||
new TapSourceCost()),
|
||||
Duration.WhileOnBattlefield, filter)));
|
||||
this.getLevels().add(new LevelAbility(5, -1, abilities2, 1, 4));
|
||||
|
|
|
@ -46,7 +46,7 @@ import mage.abilities.common.SimpleStaticAbility;
|
|||
import mage.abilities.costs.common.TapTargetCost;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.ContinuousEffectImpl;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.effects.common.continious.BoostControlledEffect;
|
||||
import mage.abilities.mana.ManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
@ -152,7 +152,7 @@ class GrandArchitectManaAbility extends ManaAbility<GrandArchitectManaAbility> {
|
|||
}
|
||||
|
||||
GrandArchitectManaAbility ( ) {
|
||||
super(Zone.BATTLEFIELD, new ManaEffect(Mana.ColorlessMana(2)), new TapTargetCost(new TargetControlledCreaturePermanent(1, 1, filter, true)));
|
||||
super(Zone.BATTLEFIELD, new BasicManaEffect(Mana.ColorlessMana(2)), new TapTargetCost(new TargetControlledCreaturePermanent(1, 1, filter, true)));
|
||||
this.netMana.setColorless(2);
|
||||
}
|
||||
|
||||
|
|
|
@ -30,19 +30,16 @@ package mage.sets.scarsofmirrodin;
|
|||
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.costs.common.MetalcraftCost;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
import java.util.UUID;
|
||||
import mage.Constants.Zone;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
* @author BetaSteward_at_googlemail.com, Loki
|
||||
*/
|
||||
public class MoxOpal extends CardImpl<MoxOpal> {
|
||||
|
||||
|
@ -51,8 +48,7 @@ public class MoxOpal extends CardImpl<MoxOpal> {
|
|||
this.supertype.add("Legendary");
|
||||
this.expansionSetCode = "SOM";
|
||||
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new TapSourceCost());
|
||||
ability.addChoice(new ChoiceColor());
|
||||
Ability ability = new AnyColorManaAbility();
|
||||
ability.addCost(new MetalcraftCost());
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ import mage.Constants.CardType;
|
|||
import mage.Constants.Rarity;
|
||||
import mage.MageInt;
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.BasicManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
|
@ -66,7 +66,7 @@ public class PalladiumMyr extends CardImpl<PalladiumMyr> {
|
|||
class PalladiumMyrAbility extends BasicManaAbility<PalladiumMyrAbility> {
|
||||
|
||||
public PalladiumMyrAbility() {
|
||||
super(new ManaEffect(Mana.ColorlessMana(2)));
|
||||
super(new BasicManaEffect(Mana.ColorlessMana(2)));
|
||||
this.netMana.setColorless(2);
|
||||
}
|
||||
|
||||
|
|
|
@ -31,18 +31,14 @@ package mage.sets.tenth;
|
|||
import java.util.UUID;
|
||||
import mage.Constants.CardType;
|
||||
import mage.Constants.Rarity;
|
||||
import mage.Constants.Zone;
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.abilities.mana.AnyColorManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
* @author BetaSteward_at_googlemail.com, Loki
|
||||
*/
|
||||
public class BirdsOfParadise extends CardImpl<BirdsOfParadise> {
|
||||
|
||||
|
@ -56,9 +52,7 @@ public class BirdsOfParadise extends CardImpl<BirdsOfParadise> {
|
|||
this.toughness = new MageInt(1);
|
||||
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
SimpleActivatedAbility ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), new TapSourceCost());
|
||||
ability.addChoice(new ChoiceColor());
|
||||
this.addAbility(ability);
|
||||
this.addAbility(new AnyColorManaAbility());
|
||||
}
|
||||
|
||||
public BirdsOfParadise(final BirdsOfParadise card) {
|
||||
|
|
|
@ -35,7 +35,7 @@ import mage.MageInt;
|
|||
import mage.Mana;
|
||||
import mage.abilities.common.SimpleActivatedAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.cards.CardImpl;
|
||||
|
||||
/**
|
||||
|
@ -54,7 +54,7 @@ public class GreenweaverDruid extends CardImpl<GreenweaverDruid> {
|
|||
this.power = new MageInt(1);
|
||||
this.toughness = new MageInt(1);
|
||||
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new ManaEffect(Mana.GreenMana(2)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleActivatedAbility(Zone.BATTLEFIELD, new BasicManaEffect(Mana.GreenMana(2)), new TapSourceCost()));
|
||||
}
|
||||
|
||||
public GreenweaverDruid(final GreenweaverDruid card) {
|
||||
|
|
|
@ -38,7 +38,7 @@ import mage.abilities.Ability;
|
|||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.OneShotEffect;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.SimpleManaAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.filter.common.FilterControlledPermanent;
|
||||
|
@ -68,11 +68,11 @@ public class KhalniGem extends CardImpl<KhalniGem> {
|
|||
Target target = new TargetControlledPermanent(2, 2, filter, false);
|
||||
etbAbility.addTarget(target);
|
||||
this.addAbility(etbAbility);
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new ManaEffect(new Mana(2, 0, 0, 0, 0, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new ManaEffect(new Mana(0, 2, 0, 0, 0, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new ManaEffect(new Mana(0, 0, 2, 0, 0, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new ManaEffect(new Mana(0, 0, 0, 2, 0, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new ManaEffect(new Mana(0, 0, 0, 0, 2, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(new Mana(2, 0, 0, 0, 0, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(new Mana(0, 2, 0, 0, 0, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(new Mana(0, 0, 2, 0, 0, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(new Mana(0, 0, 0, 2, 0, 0, 0)), new TapSourceCost()));
|
||||
this.addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(new Mana(0, 0, 0, 0, 2, 0, 0)), new TapSourceCost()));
|
||||
}
|
||||
|
||||
public KhalniGem (final KhalniGem card) {
|
||||
|
|
|
@ -40,10 +40,10 @@ import mage.players.Player;
|
|||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
*/
|
||||
public class AddManaOfAnyColorEffect extends OneShotEffect<AddManaOfAnyColorEffect> {
|
||||
public class AddManaOfAnyColorEffect extends ManaEffect<AddManaOfAnyColorEffect> {
|
||||
|
||||
public AddManaOfAnyColorEffect() {
|
||||
super(Outcome.PutManaInPool);
|
||||
super();
|
||||
}
|
||||
|
||||
public AddManaOfAnyColorEffect(final AddManaOfAnyColorEffect effect) {
|
||||
|
|
41
Mage/src/mage/abilities/effects/common/BasicManaEffect.java
Normal file
41
Mage/src/mage/abilities/effects/common/BasicManaEffect.java
Normal file
|
@ -0,0 +1,41 @@
|
|||
package mage.abilities.effects.common;
|
||||
|
||||
import mage.Constants;
|
||||
import mage.Mana;
|
||||
import mage.abilities.Ability;
|
||||
import mage.game.Game;
|
||||
|
||||
public class BasicManaEffect extends ManaEffect<BasicManaEffect> {
|
||||
protected Mana mana;
|
||||
|
||||
public BasicManaEffect(Mana mana) {
|
||||
super();
|
||||
this.mana = mana;
|
||||
}
|
||||
|
||||
public BasicManaEffect(final BasicManaEffect effect) {
|
||||
super(effect);
|
||||
this.mana = effect.mana.copy();
|
||||
}
|
||||
|
||||
@Override
|
||||
public BasicManaEffect copy() {
|
||||
return new BasicManaEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
game.getPlayer(source.getControllerId()).getManaPool().changeMana(mana);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Add " + mana.toString() + " to your mana pool";
|
||||
}
|
||||
|
||||
public Mana getMana() {
|
||||
return mana;
|
||||
}
|
||||
}
|
|
@ -37,7 +37,7 @@ import mage.game.Game;
|
|||
*
|
||||
* @author North
|
||||
*/
|
||||
public class DynamicManaEffect extends ManaEffect {
|
||||
public class DynamicManaEffect extends BasicManaEffect {
|
||||
|
||||
private Mana computedMana;
|
||||
private DynamicValue amount;
|
||||
|
|
|
@ -38,37 +38,14 @@ import mage.game.Game;
|
|||
*
|
||||
* @author BetaSteward_at_googlemail.com
|
||||
*/
|
||||
public class ManaEffect extends OneShotEffect<ManaEffect> {
|
||||
public abstract class ManaEffect<T extends ManaEffect<T>> extends OneShotEffect<T> {
|
||||
|
||||
protected Mana mana;
|
||||
|
||||
public ManaEffect(Mana mana) {
|
||||
public ManaEffect() {
|
||||
super(Outcome.PutManaInPool);
|
||||
this.mana = mana;
|
||||
}
|
||||
|
||||
public ManaEffect(final ManaEffect effect) {
|
||||
super(effect);
|
||||
this.mana = effect.mana.copy();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ManaEffect copy() {
|
||||
return new ManaEffect(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
game.getPlayer(source.getControllerId()).getManaPool().changeMana(mana);
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getText(Ability source) {
|
||||
return "Add " + mana.toString() + " to your mana pool";
|
||||
}
|
||||
|
||||
public Mana getMana() {
|
||||
return mana;
|
||||
}
|
||||
}
|
||||
|
|
27
Mage/src/mage/abilities/mana/AnyColorManaAbility.java
Normal file
27
Mage/src/mage/abilities/mana/AnyColorManaAbility.java
Normal file
|
@ -0,0 +1,27 @@
|
|||
package mage.abilities.mana;
|
||||
|
||||
import mage.Constants;
|
||||
import mage.abilities.costs.Cost;
|
||||
import mage.abilities.costs.common.TapSourceCost;
|
||||
import mage.abilities.effects.common.AddManaOfAnyColorEffect;
|
||||
import mage.choices.ChoiceColor;
|
||||
|
||||
public class AnyColorManaAbility extends ManaAbility<AnyColorManaAbility> {
|
||||
public AnyColorManaAbility() {
|
||||
this(new TapSourceCost());
|
||||
}
|
||||
|
||||
public AnyColorManaAbility(Cost cost) {
|
||||
super(Constants.Zone.BATTLEFIELD, new AddManaOfAnyColorEffect(), cost);
|
||||
this.addChoice(new ChoiceColor());
|
||||
}
|
||||
|
||||
public AnyColorManaAbility(final AnyColorManaAbility ability) {
|
||||
super(ability);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnyColorManaAbility copy() {
|
||||
return new AnyColorManaAbility(this);
|
||||
}
|
||||
}
|
|
@ -29,7 +29,7 @@
|
|||
package mage.abilities.mana;
|
||||
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -38,7 +38,7 @@ import mage.abilities.effects.common.ManaEffect;
|
|||
public class BlackManaAbility extends BasicManaAbility<BlackManaAbility> {
|
||||
|
||||
public BlackManaAbility() {
|
||||
super(new ManaEffect(Mana.BlackMana));
|
||||
super(new BasicManaEffect(Mana.BlackMana));
|
||||
this.netMana.setBlack(1);
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
package mage.abilities.mana;
|
||||
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -38,7 +38,7 @@ import mage.abilities.effects.common.ManaEffect;
|
|||
public class BlueManaAbility extends BasicManaAbility<BlueManaAbility> {
|
||||
|
||||
public BlueManaAbility() {
|
||||
super(new ManaEffect(Mana.BlueMana));
|
||||
super(new BasicManaEffect(Mana.BlueMana));
|
||||
this.netMana.setBlue(1);
|
||||
}
|
||||
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
package mage.abilities.mana;
|
||||
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
|
||||
/**
|
||||
|
@ -38,7 +39,7 @@ import mage.abilities.effects.common.ManaEffect;
|
|||
public class ColorlessManaAbility extends BasicManaAbility<ColorlessManaAbility> {
|
||||
|
||||
public ColorlessManaAbility() {
|
||||
super(new ManaEffect(Mana.ColorlessMana));
|
||||
super(new BasicManaEffect(Mana.ColorlessMana));
|
||||
this.netMana.setColorless(1);
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
package mage.abilities.mana;
|
||||
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -38,7 +38,7 @@ import mage.abilities.effects.common.ManaEffect;
|
|||
public class GreenManaAbility extends BasicManaAbility<GreenManaAbility> {
|
||||
|
||||
public GreenManaAbility() {
|
||||
super(new ManaEffect(Mana.GreenMana));
|
||||
super(new BasicManaEffect(Mana.GreenMana));
|
||||
this.netMana.setGreen(1);
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
package mage.abilities.mana;
|
||||
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -38,7 +38,7 @@ import mage.abilities.effects.common.ManaEffect;
|
|||
public class RedManaAbility extends BasicManaAbility<RedManaAbility> {
|
||||
|
||||
public RedManaAbility() {
|
||||
super(new ManaEffect(Mana.RedMana));
|
||||
super(new BasicManaEffect(Mana.RedMana));
|
||||
this.netMana.setRed(1);
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
package mage.abilities.mana;
|
||||
|
||||
import mage.Mana;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -38,7 +38,7 @@ import mage.abilities.effects.common.ManaEffect;
|
|||
public class WhiteManaAbility extends BasicManaAbility<WhiteManaAbility> {
|
||||
|
||||
public WhiteManaAbility() {
|
||||
super(new ManaEffect(Mana.WhiteMana));
|
||||
super(new BasicManaEffect(Mana.WhiteMana));
|
||||
this.netMana.setWhite(1);
|
||||
}
|
||||
|
||||
|
|
|
@ -33,7 +33,7 @@ import mage.Constants.Zone;
|
|||
import mage.MageInt;
|
||||
import mage.Mana;
|
||||
import mage.abilities.costs.common.SacrificeSourceCost;
|
||||
import mage.abilities.effects.common.ManaEffect;
|
||||
import mage.abilities.effects.common.BasicManaEffect;
|
||||
import mage.abilities.mana.SimpleManaAbility;
|
||||
|
||||
/**
|
||||
|
@ -49,7 +49,7 @@ public class EldraziSpawnToken extends Token {
|
|||
subtype.add("Spawn");
|
||||
power = new MageInt(0);
|
||||
toughness = new MageInt(1);
|
||||
addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new ManaEffect(Mana.ColorlessMana), new SacrificeSourceCost()));
|
||||
addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, new BasicManaEffect(Mana.ColorlessMana), new SacrificeSourceCost()));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue