mirror of
https://github.com/correl/mage.git
synced 2025-01-11 11:05:23 +00:00
CreateTokenEffect already adds the article
don't want to end up with "a a 3/3 colorless Golem" and also fixed fix tapped token rules text, which has changed
This commit is contained in:
parent
296e0a9a49
commit
813c8cdd8a
79 changed files with 142 additions and 148 deletions
|
@ -65,7 +65,7 @@ public class AngelsTomb extends CardImpl {
|
|||
class AngelTombToken extends Token {
|
||||
|
||||
public AngelTombToken() {
|
||||
super("", "a 3/3 white Angel artifact creature with flying");
|
||||
super("", "3/3 white Angel artifact creature with flying");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setWhite(true);
|
||||
|
|
|
@ -71,7 +71,7 @@ public class AtarkaMonument extends CardImpl {
|
|||
|
||||
private class AtarkaMonumentToken extends Token {
|
||||
AtarkaMonumentToken() {
|
||||
super("", "a 4/4 red and green Dragon artifact creature with flying");
|
||||
super("", "4/4 red and green Dragon artifact creature with flying");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setRed(true);
|
||||
|
|
|
@ -70,7 +70,7 @@ public class AzoriusKeyrune extends CardImpl {
|
|||
|
||||
private class AzoriusKeyruneToken extends Token {
|
||||
AzoriusKeyruneToken() {
|
||||
super("", "a 2/2 white and blue Bird artifact creature with flying");
|
||||
super("", "2/2 white and blue Bird artifact creature with flying");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setWhite(true);
|
||||
|
|
|
@ -126,7 +126,7 @@ class BaruFistOfKrosaEffect extends OneShotEffect {
|
|||
class BaruFistOfKrosaToken extends Token {
|
||||
|
||||
BaruFistOfKrosaToken(int xValue) {
|
||||
super("Wurm", "a X/X green Wurm creature token, where X is the number of lands you control");
|
||||
super("Wurm", "X/X green Wurm creature token, where X is the number of lands you control");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setGreen(true);
|
||||
subtype.add("Wurm");
|
||||
|
|
|
@ -62,7 +62,7 @@ public class BloodlineKeeper extends CardImpl {
|
|||
}
|
||||
|
||||
public BloodlineKeeper(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.CREATURE},"{2}{B}{B}");
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{B}{B}");
|
||||
this.subtype.add("Vampire");
|
||||
|
||||
this.power = new MageInt(3);
|
||||
|
@ -92,15 +92,16 @@ public class BloodlineKeeper extends CardImpl {
|
|||
return new BloodlineKeeper(this);
|
||||
}
|
||||
|
||||
class VampireToken extends Token {
|
||||
VampireToken() {
|
||||
super("Vampire", "a 2/2 black Vampire creature token with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlack(true);
|
||||
subtype.add("Vampire");
|
||||
power = new MageInt(2);
|
||||
toughness = new MageInt(2);
|
||||
addAbility(FlyingAbility.getInstance());
|
||||
}
|
||||
}
|
||||
|
||||
class VampireToken extends Token {
|
||||
VampireToken() {
|
||||
super("Vampire", "2/2 black Vampire creature token with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlack(true);
|
||||
subtype.add("Vampire");
|
||||
power = new MageInt(2);
|
||||
toughness = new MageInt(2);
|
||||
addAbility(FlyingAbility.getInstance());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -139,7 +139,7 @@ class DokaiWeaverofLifeToken extends Token {
|
|||
final static FilterControlledPermanent filterLands = new FilterControlledLandPermanent("lands you control");
|
||||
|
||||
DokaiWeaverofLifeToken() {
|
||||
super("Elemental", "a X/X green Elemental creature token, where X is the number of lands you control");
|
||||
super("Elemental", "X/X green Elemental creature token, where X is the number of lands you control");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setGreen(true);
|
||||
subtype.add("Elemental");
|
||||
|
|
|
@ -47,7 +47,7 @@ public class CallOfTheNightwing extends CardImpl {
|
|||
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{2}{U}{B}");
|
||||
|
||||
|
||||
// Create a 1/1/ blue and black Horror creature token with flying.
|
||||
// Create a 1/1 blue and black Horror creature token with flying.
|
||||
this.getSpellAbility().addEffect(new CreateTokenEffect(new NightwingHorrorToken(),1));
|
||||
|
||||
// Cipher (Then you may exile this spell card encoded on a creature you control. Whenever that creature deals combat damage to a player, its controller may cast a copy of the encoded card without paying its mana cost.)
|
||||
|
@ -67,7 +67,7 @@ public class CallOfTheNightwing extends CardImpl {
|
|||
|
||||
class NightwingHorrorToken extends Token {
|
||||
NightwingHorrorToken() {
|
||||
super("Horror", "a 1/1/ blue and black Horror creature token with flying");
|
||||
super("Horror", "1/1 blue and black Horror creature token with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
this.color.setBlue(true);
|
||||
this.color.setBlack(true);
|
||||
|
|
|
@ -40,12 +40,11 @@ import mage.game.permanent.token.Token;
|
|||
/**
|
||||
*
|
||||
* @author jeffwadsworth
|
||||
|
||||
*/
|
||||
public class CallTheSkybreaker extends CardImpl {
|
||||
|
||||
public CallTheSkybreaker(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.SORCERY},"{5}{U/R}{U/R}");
|
||||
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{5}{U/R}{U/R}");
|
||||
|
||||
// Create a 5/5 blue and red Elemental creature token with flying.
|
||||
this.getSpellAbility().addEffect(new CreateTokenEffect(new ElementalToken()));
|
||||
|
@ -64,20 +63,20 @@ public class CallTheSkybreaker extends CardImpl {
|
|||
return new CallTheSkybreaker(this);
|
||||
}
|
||||
|
||||
class ElementalToken extends Token {
|
||||
}
|
||||
|
||||
public ElementalToken() {
|
||||
super("Elemental", "a 5/5 blue and red Elemental creature token with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlue(true);
|
||||
color.setRed(true);
|
||||
subtype.add("Elemental");
|
||||
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("EMA")) {
|
||||
setTokenType(2);
|
||||
}
|
||||
power = new MageInt(5);
|
||||
toughness = new MageInt(5);
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
class ElementalToken extends Token {
|
||||
public ElementalToken() {
|
||||
super("Elemental", "5/5 blue and red Elemental creature token with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlue(true);
|
||||
color.setRed(true);
|
||||
subtype.add("Elemental");
|
||||
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("EMA")) {
|
||||
setTokenType(2);
|
||||
}
|
||||
power = new MageInt(5);
|
||||
toughness = new MageInt(5);
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -71,7 +71,7 @@ public class ChimericIdol extends CardImpl {
|
|||
class ChimericIdolToken extends Token {
|
||||
|
||||
public ChimericIdolToken() {
|
||||
super("Turtle", "a 3/3 Turtle artifact creature token");
|
||||
super("Turtle", "3/3 Turtle artifact creature token");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add("Turtle");
|
||||
|
|
|
@ -56,7 +56,7 @@ public class Corpseweft extends CardImpl {
|
|||
public Corpseweft(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}");
|
||||
|
||||
// {1}{B}, Exile one or more creature cards from your graveyard: Create an X/X black Zombie Horror creature token tapped, where X is twice the number of cards exiled this way.
|
||||
// {1}{B}, Exile one or more creature cards from your graveyard: Create a tapped X/X black Zombie Horror creature token, where X is twice the number of cards exiled this way.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CorpseweftEffect(), new ManaCostsImpl("{1}{B}"));
|
||||
ability.addCost(new ExileFromGraveCost(new TargetCardInYourGraveyard(1, Integer.MAX_VALUE, new FilterCreatureCard("creature cards from your graveyard"))));
|
||||
this.addAbility(ability);
|
||||
|
@ -76,7 +76,7 @@ class CorpseweftEffect extends OneShotEffect {
|
|||
|
||||
public CorpseweftEffect() {
|
||||
super(Outcome.Benefit);
|
||||
this.staticText = "create an X/X black Zombie Horror creature token tapped, where X is twice the number of cards exiled this way";
|
||||
this.staticText = "create a tapped X/X black Zombie Horror creature token, where X is twice the number of cards exiled this way";
|
||||
}
|
||||
|
||||
public CorpseweftEffect(final CorpseweftEffect effect) {
|
||||
|
@ -110,7 +110,7 @@ class CorpseweftEffect extends OneShotEffect {
|
|||
class CorpseweftZombieToken extends Token {
|
||||
|
||||
public CorpseweftZombieToken(int power, int toughness) {
|
||||
super("Zombie Horror", "an X/X black Zombie Horror creature token tapped, where X is twice the number of cards exiled this way");
|
||||
super("Zombie Horror", "X/X black Zombie Horror creature token, where X is twice the number of cards exiled this way");
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add("Zombie");
|
||||
subtype.add("Horror");
|
||||
|
|
|
@ -67,7 +67,7 @@ public class CurseOfShallowGraves extends CardImpl {
|
|||
this.getSpellAbility().addEffect(new AttachEffect(Outcome.Detriment));
|
||||
this.addAbility(new EnchantAbility(auraTarget.getTargetName()));
|
||||
|
||||
// Whenever a player attacks enchanted player with one or more creatures, that attacking player may create a 2/2 black Zombie creature token tapped.
|
||||
// Whenever a player attacks enchanted player with one or more creatures, that attacking player may create a tapped 2/2 black Zombie creature token.
|
||||
this.addAbility(new CurseOfShallowTriggeredAbility());
|
||||
}
|
||||
|
||||
|
@ -116,7 +116,7 @@ class CurseOfShallowTriggeredAbility extends TriggeredAbilityImpl {
|
|||
|
||||
@Override
|
||||
public String getRule() {
|
||||
return "Whenever a player attacks enchanted player with one or more creatures, that attacking player may create a 2/2 black Zombie creature token tapped.";
|
||||
return "Whenever a player attacks enchanted player with one or more creatures, that attacking player may create a tapped 2/2 black Zombie creature token.";
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -130,7 +130,7 @@ class CurseOfShallowEffect extends OneShotEffect {
|
|||
|
||||
public CurseOfShallowEffect() {
|
||||
super(Outcome.Benefit);
|
||||
this.staticText = "that attacking player may create a 2/2 black Zombie creature token tapped";
|
||||
this.staticText = "that attacking player may create a tapped 2/2 black Zombie creature token";
|
||||
}
|
||||
|
||||
public CurseOfShallowEffect(final CurseOfShallowEffect effect) {
|
||||
|
@ -145,7 +145,7 @@ class CurseOfShallowEffect extends OneShotEffect {
|
|||
@Override
|
||||
public boolean apply(Game game, Ability source) {
|
||||
Player attacker = game.getPlayer(this.getTargetPointer().getFirst(game, source));
|
||||
if (attacker != null && attacker.chooseUse(outcome, "create a 2/2 black Zombie creature token tapped?", source, game)) {
|
||||
if (attacker != null && attacker.chooseUse(outcome, "create a tapped 2/2 black Zombie creature token?", source, game)) {
|
||||
Effect effect = new CreateTokenTargetEffect(new ZombieToken(), new StaticValue(1), true, false);
|
||||
effect.setTargetPointer(targetPointer);
|
||||
return effect.apply(game, source);
|
||||
|
|
|
@ -65,7 +65,7 @@ public class DaxossTorment extends CardImpl {
|
|||
class DaxossTormentToken extends Token {
|
||||
|
||||
public DaxossTormentToken() {
|
||||
super("", "a 5/5 Demon creature with flying and haste");
|
||||
super("", "5/5 Demon creature with flying and haste");
|
||||
cardType.add(CardType.CREATURE);
|
||||
|
||||
subtype.add("Demon");
|
||||
|
|
|
@ -69,7 +69,7 @@ public class DiregrafColossus extends CardImpl {
|
|||
// Diregraf Colossus enters the battlefield with a +1/+1 counter on it for each Zombie card in your graveyard.
|
||||
this.addAbility(new EntersBattlefieldAbility(new DiregrafColossusEffect(), "with a +1/+1 counter on it for each Zombie card in your graveyard"));
|
||||
|
||||
// Whenever you cast a Zombie spell, create a 2/2 black Zombie creature token tapped.
|
||||
// Whenever you cast a Zombie spell, create a tapped 2/2 black Zombie creature token.
|
||||
this.addAbility(new SpellCastControllerTriggeredAbility(new CreateTokenEffect(new ZombieToken(), 1, true, false), filter, false));
|
||||
|
||||
}
|
||||
|
|
|
@ -67,7 +67,7 @@ public class DranasChosen extends CardImpl {
|
|||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(2);
|
||||
|
||||
// <i>Cohort</i> — {T}, Tap an untapped Ally you control: Create a 2/2 black Zombie creature token tapped.
|
||||
// <i>Cohort</i> — {T}, Tap an untapped Ally you control: Create a tapped 2/2 black Zombie creature token.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new CreateTokenEffect(new ZombieToken(), 1, true, false), new TapSourceCost());
|
||||
ability.addCost(new TapTargetCost(new TargetControlledPermanent(filter)));
|
||||
ability.setAbilityWord(AbilityWord.COHORT);
|
||||
|
|
|
@ -51,7 +51,7 @@ public class DreadSummons extends CardImpl {
|
|||
public DreadSummons(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.SORCERY}, "{X}{B}{B}");
|
||||
|
||||
// Each player puts the top X cards of his or her library into his or her graveyard. For each creature card put into a graveyard this way, you create a 2/2 black Zombie creature token tapped.
|
||||
// Each player puts the top X cards of his or her library into his or her graveyard. For each creature card put into a graveyard this way, you create a tapped 2/2 black Zombie creature token.
|
||||
getSpellAbility().addEffect(new DreadSummonsEffect());
|
||||
}
|
||||
|
||||
|
@ -69,7 +69,7 @@ class DreadSummonsEffect extends OneShotEffect {
|
|||
|
||||
public DreadSummonsEffect() {
|
||||
super(Outcome.PutCreatureInPlay);
|
||||
this.staticText = "Each player puts the top X cards of his or her library into his or her graveyard. For each creature card put into a graveyard this way, you create a 2/2 black Zombie creature token tapped";
|
||||
this.staticText = "Each player puts the top X cards of his or her library into his or her graveyard. For each creature card put into a graveyard this way, you create a tapped 2/2 black Zombie creature token";
|
||||
}
|
||||
|
||||
public DreadSummonsEffect(final DreadSummonsEffect effect) {
|
||||
|
|
|
@ -71,7 +71,7 @@ public class DromokaMonument extends CardImpl {
|
|||
|
||||
private class DromokaMonumentToken extends Token {
|
||||
DromokaMonumentToken() {
|
||||
super("", "a 4/4 green and white Dragon artifact creature with flying");
|
||||
super("", "4/4 green and white Dragon artifact creature with flying");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setGreen(true);
|
||||
|
|
|
@ -68,7 +68,7 @@ public class FaerieConclave extends CardImpl {
|
|||
|
||||
class FaerieConclaveToken extends Token {
|
||||
FaerieConclaveToken() {
|
||||
super("Faerie", "a 2/1 blue Faerie creature with flying");
|
||||
super("Faerie", "2/1 blue Faerie creature with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
this.subtype.add("Faerie");
|
||||
color.setBlue(true);
|
||||
|
|
|
@ -72,7 +72,7 @@ public class ForbiddingWatchtower extends CardImpl {
|
|||
|
||||
class ForbiddingWatchtowerToken extends Token {
|
||||
ForbiddingWatchtowerToken() {
|
||||
super("Soldier", "a 1/5 white Soldier creature");
|
||||
super("Soldier", "1/5 white Soldier creature");
|
||||
cardType.add(CardType.CREATURE);
|
||||
this.subtype.add("Soldier");
|
||||
color.setWhite(true);
|
||||
|
|
|
@ -71,7 +71,7 @@ public class GhituEncampment extends CardImpl {
|
|||
class GhituEncampmentToken extends Token {
|
||||
|
||||
public GhituEncampmentToken() {
|
||||
super("Warrior", "a 2/1 red Warrior creature with first strike");
|
||||
super("Warrior", "2/1 red Warrior creature with first strike");
|
||||
cardType.add(CardType.CREATURE);
|
||||
this.subtype.add("Warrior");
|
||||
|
||||
|
|
|
@ -85,7 +85,7 @@ public class GlintHawkIdol extends CardImpl {
|
|||
|
||||
class GlintHawkIdolToken extends Token {
|
||||
GlintHawkIdolToken() {
|
||||
super("", "a 2/2 Bird artifact creature with flying");
|
||||
super("", "2/2 Bird artifact creature with flying");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add("Bird");
|
||||
|
|
|
@ -70,7 +70,7 @@ public class Godsire extends CardImpl {
|
|||
|
||||
class BeastToken extends Token {
|
||||
BeastToken() {
|
||||
super("Beast", "an 8/8 Beast creature token that's red, green, and white");
|
||||
super("Beast", "8/8 Beast creature token that's red, green, and white");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setGreen(true);
|
||||
color.setWhite(true);
|
||||
|
|
|
@ -70,7 +70,7 @@ public class GolgariKeyrune extends CardImpl {
|
|||
|
||||
private class GolgariKeyruneToken extends Token {
|
||||
GolgariKeyruneToken() {
|
||||
super("", "a 2/2 black and green Insect artifact creature with deathtouch");
|
||||
super("", "2/2 black and green Insect artifact creature with deathtouch");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setGreen(true);
|
||||
|
|
|
@ -86,7 +86,7 @@ public class GroveOfTheGuardian extends CardImpl {
|
|||
private class ElementalToken extends Token {
|
||||
|
||||
ElementalToken() {
|
||||
super("Elemental", "an 8/8 green and white Elemental creature token with vigilance");
|
||||
super("Elemental", "8/8 green and white Elemental creature token with vigilance");
|
||||
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setGreen(true);
|
||||
|
|
|
@ -71,7 +71,7 @@ public class GuardianIdol extends CardImpl {
|
|||
class GuardianIdolGolemToken extends Token {
|
||||
|
||||
public GuardianIdolGolemToken() {
|
||||
super("Golem", "a 2/2 Golem artifact creature token");
|
||||
super("Golem", "2/2 Golem artifact creature token");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add("Golem");
|
||||
|
|
|
@ -79,7 +79,7 @@ public class HiddenAncients extends CardImpl {
|
|||
class HiddenAncientsTreefolk extends Token {
|
||||
|
||||
public HiddenAncientsTreefolk() {
|
||||
super("Treefolk", "a 5/5 Treefolk creature");
|
||||
super("Treefolk", "5/5 Treefolk creature");
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add("Treefolk");
|
||||
power = new MageInt(5);
|
||||
|
|
|
@ -79,7 +79,7 @@ public class HiddenGibbons extends CardImpl {
|
|||
class HiddenGibbonsApe extends Token {
|
||||
|
||||
public HiddenGibbonsApe() {
|
||||
super("Ape", "a 4/4 Ape creature");
|
||||
super("Ape", "4/4 Ape creature");
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add("Ape");
|
||||
power = new MageInt(4);
|
||||
|
|
|
@ -73,7 +73,7 @@ public class HiddenGuerrillas extends CardImpl {
|
|||
class HiddenGuerrillasSoldier extends Token {
|
||||
|
||||
public HiddenGuerrillasSoldier() {
|
||||
super("Soldier", "a 5/3 Soldier creature with trample");
|
||||
super("Soldier", "5/3 Soldier creature with trample");
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add("Soldier");
|
||||
power = new MageInt(5);
|
||||
|
|
|
@ -81,7 +81,7 @@ public class HiddenSpider extends CardImpl {
|
|||
class HiddenSpiderToken extends Token {
|
||||
|
||||
public HiddenSpiderToken() {
|
||||
super("Spider", "a 3/5 Spider creature with reach");
|
||||
super("Spider", "3/5 Spider creature with reach");
|
||||
cardType.add(CardType.CREATURE);
|
||||
subtype.add("Spider");
|
||||
power = new MageInt(3);
|
||||
|
|
|
@ -73,7 +73,7 @@ public class HuntedLammasu extends CardImpl {
|
|||
|
||||
class HorrorToken extends Token {
|
||||
HorrorToken() {
|
||||
super("Horror", "a 4/4 black Horror creature token");
|
||||
super("Horror", "4/4 black Horror creature token");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlack(true);
|
||||
subtype.add("Horror");
|
||||
|
|
|
@ -74,7 +74,7 @@ public class InkmothNexus extends CardImpl {
|
|||
|
||||
class InkmothNexusToken extends Token {
|
||||
public InkmothNexusToken() {
|
||||
super("Blinkmoth", "a 1/1 Blinkmoth artifact creature with flying and infect");
|
||||
super("Blinkmoth", "1/1 Blinkmoth artifact creature with flying and infect");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
this.subtype.add("Blinkmoth");
|
||||
|
|
|
@ -104,7 +104,7 @@ public class IzzetKeyrune extends CardImpl {
|
|||
|
||||
private class IzzetKeyruneToken extends Token {
|
||||
IzzetKeyruneToken() {
|
||||
super("", "a 2/1 blue and red Elemental artifact creature");
|
||||
super("", "2/1 blue and red Elemental artifact creature");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlue(true);
|
||||
|
|
|
@ -82,7 +82,7 @@ public class JabbaTheHutt extends CardImpl {
|
|||
ability.addTarget(new TargetCreaturePermanent());
|
||||
this.addAbility(ability);
|
||||
|
||||
// {R},{T}: Create a 4/4 red Hunter creature token tapped. It fights another target creature an opponent control with a bounty counter on it. Activate this ability only any time you could cast a sorcery.
|
||||
// {R},{T}: Create a tapped 4/4 red Hunter creature token. It fights another target creature an opponent control with a bounty counter on it. Activate this ability only any time you could cast a sorcery.
|
||||
ability = new ActivateAsSorceryActivatedAbility(Zone.BATTLEFIELD, new JabbaTheHuttEffect(), new ManaCostsImpl("R"));
|
||||
ability.addCost(new TapSourceCost());
|
||||
ability.addTarget(new TargetOpponentsCreaturePermanent(filter));
|
||||
|
@ -114,7 +114,7 @@ class JabbaTheHuttEffect extends OneShotEffect {
|
|||
|
||||
public JabbaTheHuttEffect() {
|
||||
super(Outcome.PutCreatureInPlay);
|
||||
this.staticText = "Create a 4/4 red Hunter creature token tapped. It fights another target creature an opponent control with a bounty counter on it";
|
||||
this.staticText = "Create a tapped 4/4 red Hunter creature token. It fights another target creature an opponent control with a bounty counter on it";
|
||||
}
|
||||
|
||||
public JabbaTheHuttEffect(final JabbaTheHuttEffect effect) {
|
||||
|
|
|
@ -71,7 +71,7 @@ public class KolaghanMonument extends CardImpl {
|
|||
|
||||
private class KolaghanMonumentToken extends Token {
|
||||
KolaghanMonumentToken() {
|
||||
super("", "a 4/4 black and red Dragon artifact creature with flying");
|
||||
super("", "4/4 black and red Dragon artifact creature with flying");
|
||||
cardType.add(CardType.ARTIFACT);
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlack(true);
|
||||
|
|
|
@ -91,7 +91,7 @@ public class LichLordOfUnx extends CardImpl {
|
|||
|
||||
class ZombieWizardToken extends Token {
|
||||
ZombieWizardToken() {
|
||||
super("Zombie Wizard", "a 1/1 blue and black Zombie Wizard creature token");
|
||||
super("Zombie Wizard", "1/1 blue and black Zombie Wizard creature token");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlue(true);
|
||||
color.setBlack(true);
|
||||
|
|
|
@ -192,7 +192,7 @@ class LiegeOfTheTangleEffect extends ContinuousEffectImpl {
|
|||
class AwakeningLandToken extends Token {
|
||||
|
||||
public AwakeningLandToken() {
|
||||
super("", "an 8/8 green Elemental creature");
|
||||
super("", "8/8 green Elemental creature");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setGreen(true);
|
||||
subtype.add("Elemental");
|
||||
|
|
|
@ -54,7 +54,7 @@ public class LilianasReaver extends CardImpl {
|
|||
|
||||
// Deathtouch
|
||||
this.addAbility(DeathtouchAbility.getInstance());
|
||||
// Whenever Liliana's Reaver deals combat damage to a player, that player discards a card and you create a 2/2 black Zombie creature token tapped.
|
||||
// Whenever Liliana's Reaver deals combat damage to a player, that player discards a card and you create a tapped 2/2 black Zombie creature token.
|
||||
|
||||
Ability ability = new DealsCombatDamageToAPlayerTriggeredAbility(new DiscardTargetEffect(1), false, true);
|
||||
ability.addEffect(new CreateTokenEffect(new ZombieToken(), 1, true, false));
|
||||
|
|
|
@ -83,16 +83,16 @@ public class LordOfLineage extends CardImpl {
|
|||
public LordOfLineage copy() {
|
||||
return new LordOfLineage(this);
|
||||
}
|
||||
}
|
||||
|
||||
class VampireToken extends Token {
|
||||
VampireToken() {
|
||||
super("Vampire", "a 2/2 black Vampire creature token with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlack(true);
|
||||
subtype.add("Vampire");
|
||||
power = new MageInt(2);
|
||||
toughness = new MageInt(2);
|
||||
addAbility(FlyingAbility.getInstance());
|
||||
}
|
||||
class VampireToken extends Token {
|
||||
VampireToken() {
|
||||
super("Vampire", "2/2 black Vampire creature token with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlack(true);
|
||||
subtype.add("Vampire");
|
||||
power = new MageInt(2);
|
||||
toughness = new MageInt(2);
|
||||
addAbility(FlyingAbility.getInstance());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -82,7 +82,7 @@ public class MelokuTheCloudedMirror extends CardImpl {
|
|||
|
||||
class MelokuTheCloudedMirrorToken extends Token {
|
||||
MelokuTheCloudedMirrorToken() {
|
||||
super("Illusion", "a 1/1 blue Illusion creature token with flying");
|
||||
super("Illusion", "1/1 blue Illusion creature token with flying");
|
||||
cardType.add(CardType.CREATURE);
|
||||
color.setBlue(true);
|
||||
subtype.add("Illusion");
|
||||
|
|
|
@ -42,7 +42,6 @@ import mage.cards.CardSetInfo;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.Outcome;
|
||||
import mage.constants.Zone;
|
||||
import mage.filter.FilterCard;
|
||||
import mage.filter.common.FilterCreatureCard;
|
||||
import mage.game.Game;
|
||||
import mage.game.permanent.token.ZombieToken;
|
||||
|
@ -54,15 +53,13 @@ import mage.target.common.TargetCardInHand;
|
|||
*/
|
||||
public class NecromancersStockpile extends CardImpl {
|
||||
|
||||
private final FilterCard filter = new FilterCreatureCard();
|
||||
|
||||
public NecromancersStockpile(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId,setInfo,new CardType[]{CardType.ENCHANTMENT},"{1}{B}");
|
||||
|
||||
// {1}{B}, Discard a creature card: Draw a card.
|
||||
// If the discarded card was a Zombie card, create a 2/2 black Zombie creature token tapped.
|
||||
// If the discarded card was a Zombie card, create a tapped 2/2 black Zombie creature token.
|
||||
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new DrawCardSourceControllerEffect(1), new ManaCostsImpl("{1}{B}"));
|
||||
ability.addCost(new NecromancersStockpileDiscardTargetCost(new TargetCardInHand(filter)));
|
||||
ability.addCost(new NecromancersStockpileDiscardTargetCost(new TargetCardInHand(new FilterCreatureCard())));
|
||||
ability.addEffect(new NecromancersStockpilePutTokenEffect());
|
||||
this.addAbility(ability);
|
||||
}
|
||||
|
@ -128,7 +125,7 @@ class NecromancersStockpilePutTokenEffect extends OneShotEffect {
|
|||
|
||||
NecromancersStockpilePutTokenEffect() {
|
||||
super(Outcome.Neutral);
|
||||
staticText = "If the discarded card was a Zombie card, create a 2/2 black Zombie creature token tapped";
|
||||
staticText = "If the discarded card was a Zombie card, create a tapped 2/2 black Zombie creature token";
|
||||
}
|
||||
|
||||
NecromancersStockpilePutTokenEffect(final NecromancersStockpilePutTokenEffect effect) {
|
||||
|
|
|
@ -55,7 +55,7 @@ public class NullCaller extends CardImpl {
|
|||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(4);
|
||||
|
||||