Implemented Nesting Dragon

This commit is contained in:
Evan Kranzler 2018-07-24 20:45:45 -04:00
parent ee361da05f
commit 41fce60eee
3 changed files with 90 additions and 0 deletions

View file

@ -0,0 +1,44 @@
package mage.cards.n;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.common.LandfallAbility;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.constants.SubType;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.game.permanent.token.NestingDragonToken;
/**
*
* @author TheElk801
*/
public final class NestingDragon extends CardImpl {
public NestingDragon(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{3}{R}{R}");
this.subtype.add(SubType.DRAGON);
this.power = new MageInt(5);
this.toughness = new MageInt(4);
// Flying
this.addAbility(FlyingAbility.getInstance());
// Landfall Whenever a land enters the battlefield under your control, create a 0/2 red Dragon Egg creature token with defender and "When this creature dies, create a 2/2 red Dragon creature token with flying and '{R}: This creature gets +1/+0 until end of turn.'"
this.addAbility(new LandfallAbility(
new CreateTokenEffect(new NestingDragonToken()), false
));
}
public NestingDragon(final NestingDragon card) {
super(card);
}
@Override
public NestingDragon copy() {
return new NestingDragon(this);
}
}

View file

@ -37,6 +37,7 @@ public final class Commander2018 extends ExpansionSet {
cards.add(new SetCardInfo("Loyal Drake", 10, Rarity.UNCOMMON, mage.cards.l.LoyalDrake.class));
cards.add(new SetCardInfo("Loyal Guardian", 31, Rarity.UNCOMMON, mage.cards.l.LoyalGuardian.class));
cards.add(new SetCardInfo("Loyal Subordinate", 16, Rarity.UNCOMMON, mage.cards.l.LoyalSubordinate.class));
cards.add(new SetCardInfo("Nesting Dragon", 24, Rarity.RARE, mage.cards.n.NestingDragon.class));
cards.add(new SetCardInfo("Rampaging Baloths", 158, Rarity.RARE, mage.cards.r.RampagingBaloths.class));
cards.add(new SetCardInfo("Retrofitter Foundry", 57, Rarity.RARE, mage.cards.r.RetrofitterFoundry.class));
cards.add(new SetCardInfo("Ruinous Path", 117, Rarity.RARE, mage.cards.r.RuinousPath.class));

View file

@ -0,0 +1,45 @@
package mage.game.permanent.token;
import mage.MageInt;
import mage.abilities.common.DiesTriggeredAbility;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.keyword.DefenderAbility;
import mage.constants.CardType;
import mage.constants.SubType;
/**
*
* @author spjspj
*/
public final class NestingDragonToken extends TokenImpl {
public NestingDragonToken() {
super(
"Dragon Egg",
"0/2 red Dragon Egg creature token with defender and "
+ "\""
+ "When this creature dies, "
+ "create a 2/2 red Dragon creature token with flying and "
+ "'{R}: This creature gets +1/+0 until end of turn.'"
+ "\""
);
cardType.add(CardType.CREATURE);
color.setRed(true);
subtype.add(SubType.DRAGON);
subtype.add(SubType.EGG);
power = new MageInt(0);
toughness = new MageInt(2);
addAbility(DefenderAbility.getInstance());
this.addAbility(new DiesTriggeredAbility(
new CreateTokenEffect(new DragonEggDragonToken()), false
));
}
public NestingDragonToken(final NestingDragonToken token) {
super(token);
}
public NestingDragonToken copy() {
return new NestingDragonToken(this);
}
}