Merge pull request #5700 from jmharmon/master

Implement Quirion Druid
This commit is contained in:
Oleg Agafonov 2019-04-09 08:29:11 +02:00 committed by GitHub
commit 824b492815
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 72 additions and 0 deletions

View file

@ -0,0 +1,71 @@
package mage.cards.q;
import mage.MageInt;
import mage.ObjectColor;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.common.TapSourceCost;
import mage.abilities.costs.mana.ManaCostsImpl;
import mage.abilities.effects.common.continuous.BecomesCreatureTargetEffect;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.constants.Zone;
import mage.game.permanent.token.TokenImpl;
import mage.target.common.TargetLandPermanent;
import java.util.UUID;
/**
*
* @author jmharmon
*/
public final class QuirionDruid extends CardImpl {
public QuirionDruid(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{2}{G}");
this.subtype.add(SubType.ELF);
this.subtype.add(SubType.DRUID);
this.power = new MageInt(1);
this.toughness = new MageInt(2);
// {G}, {T}: Target land becomes a 2/2 green creature thats still a land. <i>(This effect lasts indefinitely.)</i>
Ability ability = new SimpleActivatedAbility(Zone.BATTLEFIELD, new BecomesCreatureTargetEffect(new QuirionDruidToken(), false, true, Duration.Custom), new ManaCostsImpl("{G}"));
ability.addCost(new TapSourceCost());
ability.addTarget(new TargetLandPermanent());
this.addAbility(ability);
}
public QuirionDruid(final QuirionDruid card) {
super(card);
}
@Override
public QuirionDruid copy() {
return new QuirionDruid(this);
}
}
class QuirionDruidToken extends TokenImpl {
public QuirionDruidToken() {
super("", "2/2 green creature");
this.color.addColor(ObjectColor.GREEN);
this.cardType.add(CardType.CREATURE);
this.power = new MageInt(2);
this.toughness = new MageInt(2);
}
public QuirionDruidToken(final QuirionDruidToken token) {
super(token);
}
public QuirionDruidToken copy() {
return new QuirionDruidToken(this);
}
}

View file

@ -124,6 +124,7 @@ public final class Visions extends ExpansionSet {
cards.add(new SetCardInfo("Prosperity", 40, Rarity.UNCOMMON, mage.cards.p.Prosperity.class)); cards.add(new SetCardInfo("Prosperity", 40, Rarity.UNCOMMON, mage.cards.p.Prosperity.class));
cards.add(new SetCardInfo("Python", 68, Rarity.COMMON, mage.cards.p.Python.class)); cards.add(new SetCardInfo("Python", 68, Rarity.COMMON, mage.cards.p.Python.class));
cards.add(new SetCardInfo("Quicksand", 166, Rarity.UNCOMMON, mage.cards.q.Quicksand.class)); cards.add(new SetCardInfo("Quicksand", 166, Rarity.UNCOMMON, mage.cards.q.Quicksand.class));
cards.add(new SetCardInfo("Quirion Druid", 116, Rarity.RARE, mage.cards.q.QuirionDruid.class));
cards.add(new SetCardInfo("Quirion Ranger", 117, Rarity.COMMON, mage.cards.q.QuirionRanger.class)); cards.add(new SetCardInfo("Quirion Ranger", 117, Rarity.COMMON, mage.cards.q.QuirionRanger.class));
cards.add(new SetCardInfo("Raging Gorilla", 90, Rarity.COMMON, mage.cards.r.RagingGorilla.class)); cards.add(new SetCardInfo("Raging Gorilla", 90, Rarity.COMMON, mage.cards.r.RagingGorilla.class));
cards.add(new SetCardInfo("Rainbow Efreet", 41, Rarity.RARE, mage.cards.r.RainbowEfreet.class)); cards.add(new SetCardInfo("Rainbow Efreet", 41, Rarity.RARE, mage.cards.r.RainbowEfreet.class));