[MIC] Implemented Curse of the Restless Dead

This commit is contained in:
Evan Kranzler 2021-09-20 20:34:19 -04:00
parent c54e9dd012
commit f3eef7eafd
2 changed files with 62 additions and 0 deletions

View file

@ -0,0 +1,61 @@
package mage.cards.c;
import mage.abilities.Ability;
import mage.abilities.common.EntersBattlefieldAllTriggeredAbility;
import mage.abilities.effects.common.AttachEffect;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.keyword.EnchantAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.SubType;
import mage.filter.FilterPermanent;
import mage.filter.common.FilterLandPermanent;
import mage.filter.predicate.permanent.EnchantPlayerControlsPredicate;
import mage.game.permanent.token.ZombieDecayedToken;
import mage.target.TargetPlayer;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class CurseOfTheRestlessDead extends CardImpl {
private static final FilterPermanent filter = new FilterLandPermanent();
static {
filter.add(EnchantPlayerControlsPredicate.instance);
}
public CurseOfTheRestlessDead(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{2}{B}");
this.subtype.add(SubType.AURA);
this.subtype.add(SubType.CURSE);
// Enchant player
TargetPlayer auraTarget = new TargetPlayer();
this.getSpellAbility().addTarget(auraTarget);
this.getSpellAbility().addEffect(new AttachEffect(Outcome.BoostCreature));
Ability ability = new EnchantAbility(auraTarget.getTargetName());
this.addAbility(ability);
// Whenever a land enters the battlefield under enchanted player's control, you create a 2/2 black Zombie creature token with decayed.
this.addAbility(new EntersBattlefieldAllTriggeredAbility(
new CreateTokenEffect(new ZombieDecayedToken()),
filter, "Whenever a land enters the battlefield under enchanted player's control, " +
"you create a 2/2 black Zombie creature token with decayed."
));
}
private CurseOfTheRestlessDead(final CurseOfTheRestlessDead card) {
super(card);
}
@Override
public CurseOfTheRestlessDead copy() {
return new CurseOfTheRestlessDead(this);
}
}

View file

@ -50,6 +50,7 @@ public final class MidnightHuntCommander extends ExpansionSet {
cards.add(new SetCardInfo("Crowded Crypt", 17, Rarity.RARE, mage.cards.c.CrowdedCrypt.class));
cards.add(new SetCardInfo("Curse of Clinging Webs", 25, Rarity.RARE, mage.cards.c.CurseOfClingingWebs.class));
cards.add(new SetCardInfo("Curse of Conformity", 6, Rarity.RARE, mage.cards.c.CurseOfConformity.class));
cards.add(new SetCardInfo("Curse of the Restless Dead", 18, Rarity.RARE, mage.cards.c.CurseOfTheRestlessDead.class));
cards.add(new SetCardInfo("Custodi Soulbinders", 83, Rarity.RARE, mage.cards.c.CustodiSoulbinders.class));
cards.add(new SetCardInfo("Dark Salvation", 110, Rarity.RARE, mage.cards.d.DarkSalvation.class));
cards.add(new SetCardInfo("Darkwater Catacombs", 171, Rarity.RARE, mage.cards.d.DarkwaterCatacombs.class));