[KHM] Niko Aris

This commit is contained in:
Evan Kranzler 2021-01-10 15:24:42 -05:00
parent 6cb89b00ed
commit 01261575a8
4 changed files with 222 additions and 0 deletions

View file

@ -33,6 +33,7 @@ public enum SubType {
CARTOUCHE("Cartouche", SubTypeSet.EnchantmentType),
CURSE("Curse", SubTypeSet.EnchantmentType),
SAGA("Saga", SubTypeSet.EnchantmentType),
SHARD("Shard", SubTypeSet.EnchantmentType),
SHRINE("Shrine", SubTypeSet.EnchantmentType),
// 205.3g: Artifacts have their own unique set of subtypes; these subtypes are called artifact types.
CLUE("Clue", SubTypeSet.ArtifactType),
@ -415,6 +416,7 @@ public enum SubType {
LUKKA("Lukka", SubTypeSet.PlaneswalkerType),
NAHIRI("Nahiri", SubTypeSet.PlaneswalkerType),
NARSET("Narset", SubTypeSet.PlaneswalkerType),
NIKO("Niko", SubTypeSet.PlaneswalkerType),
NISSA("Nissa", SubTypeSet.PlaneswalkerType),
NIXILIS("Nixilis", SubTypeSet.PlaneswalkerType),
OBI_WAN("Obi-Wan", SubTypeSet.PlaneswalkerType, true), // Star Wars

View file

@ -0,0 +1,39 @@
package mage.game.permanent.token;
import mage.abilities.Ability;
import mage.abilities.common.SimpleActivatedAbility;
import mage.abilities.costs.common.SacrificeSourceCost;
import mage.abilities.costs.mana.GenericManaCost;
import mage.abilities.effects.common.DrawCardSourceControllerEffect;
import mage.abilities.effects.keyword.ScryEffect;
import mage.constants.CardType;
import mage.constants.SubType;
/**
* @author TheElk801
*/
public final class ShardToken extends TokenImpl {
public ShardToken() {
super("Shard", "Shard token");
cardType.add(CardType.ENCHANTMENT);
subtype.add(SubType.SHARD);
// {2}, Sacrifice this enchantment: Scry 1, then draw a card.
Ability ability = new SimpleActivatedAbility(new ScryEffect(1), new GenericManaCost(2));
ability.addEffect(new DrawCardSourceControllerEffect(1).concatBy(", then"));
SacrificeSourceCost cost = new SacrificeSourceCost();
cost.setText("Sacrifice this enchantment");
ability.addCost(cost);
this.addAbility(ability);
}
public ShardToken(final ShardToken token) {
super(token);
}
public ShardToken copy() {
return new ShardToken(this);
}
}