Implemented Harmonious Archon

This commit is contained in:
Evan Kranzler 2019-09-11 20:03:34 -04:00
parent d13a46bbf0
commit 3d4613aa8a
2 changed files with 60 additions and 0 deletions

View file

@ -0,0 +1,59 @@
package mage.cards.h;
import mage.MageInt;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.continuous.SetPowerToughnessAllEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.SubType;
import mage.filter.common.FilterCreaturePermanent;
import mage.filter.predicate.Predicates;
import mage.filter.predicate.mageobject.SubtypePredicate;
import mage.game.permanent.token.HumanToken;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class HarmoniousArchon extends CardImpl {
private static final FilterCreaturePermanent filter = new FilterCreaturePermanent("non-Archon creatures");
static {
filter.add(Predicates.not(new SubtypePredicate(SubType.ARCHON)));
}
public HarmoniousArchon(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{4}{W}{W}");
this.subtype.add(SubType.ARCHON);
this.power = new MageInt(4);
this.toughness = new MageInt(5);
// Flying
this.addAbility(FlyingAbility.getInstance());
// Non-Archon creatures have base power and toughness 3/3.
this.addAbility(new SimpleStaticAbility(new SetPowerToughnessAllEffect(
3, 3, Duration.WhileOnBattlefield, filter, true
)));
// When Harmonious Archon enters the battlefield, create two 1/1 white Human creature tokens.
this.addAbility(new EntersBattlefieldTriggeredAbility(new CreateTokenEffect(new HumanToken(), 2)));
}
private HarmoniousArchon(final HarmoniousArchon card) {
super(card);
}
@Override
public HarmoniousArchon copy() {
return new HarmoniousArchon(this);
}
}

View file

@ -75,6 +75,7 @@ public final class ThroneOfEldraine extends ExpansionSet {
cards.add(new SetCardInfo("Gingerbrute", 219, Rarity.COMMON, mage.cards.g.Gingerbrute.class));
cards.add(new SetCardInfo("Gluttonous Troll", 327, Rarity.RARE, mage.cards.g.GluttonousTroll.class));
cards.add(new SetCardInfo("Golden Egg", 220, Rarity.COMMON, mage.cards.g.GoldenEgg.class));
cards.add(new SetCardInfo("Harmonious Archon", 17, Rarity.MYTHIC, mage.cards.h.HarmoniousArchon.class));
cards.add(new SetCardInfo("Heraldic Banner", 222, Rarity.UNCOMMON, mage.cards.h.HeraldicBanner.class));
cards.add(new SetCardInfo("Hypnotic Sprite", 49, Rarity.UNCOMMON, mage.cards.h.HypnoticSprite.class));
cards.add(new SetCardInfo("Inquisitive Puppet", 223, Rarity.UNCOMMON, mage.cards.i.InquisitivePuppet.class));