[MKM] Implement Soul Enervation

This commit is contained in:
theelk801 2024-01-25 11:03:39 -05:00
parent d86696098b
commit d0d8234fdc
2 changed files with 51 additions and 0 deletions

View file

@ -0,0 +1,50 @@
package mage.cards.s;
import mage.abilities.Ability;
import mage.abilities.common.CardsLeaveGraveyardTriggeredAbility;
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
import mage.abilities.effects.common.GainLifeEffect;
import mage.abilities.effects.common.LoseLifeOpponentsEffect;
import mage.abilities.effects.common.continuous.BoostTargetEffect;
import mage.abilities.keyword.FlashAbility;
import mage.cards.CardImpl;
import mage.cards.CardSetInfo;
import mage.constants.CardType;
import mage.filter.StaticFilters;
import mage.target.common.TargetCreaturePermanent;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class SoulEnervation extends CardImpl {
public SoulEnervation(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, new CardType[]{CardType.ENCHANTMENT}, "{3}{B}");
// Flash
this.addAbility(FlashAbility.getInstance());
// When Soul Enervation enters the battlefield, target creature gets -4/-4 until end of turn.
Ability ability = new EntersBattlefieldTriggeredAbility(new BoostTargetEffect(-4, -4));
ability.addTarget(new TargetCreaturePermanent());
this.addAbility(ability);
// Whenever one or more creature cards leave your graveyard, each opponent loses 1 life and you gain 1 life.
ability = new CardsLeaveGraveyardTriggeredAbility(
new LoseLifeOpponentsEffect(1), StaticFilters.FILTER_CARD_CREATURES
);
ability.addEffect(new GainLifeEffect(1).concatBy("and"));
this.addAbility(ability);
}
private SoulEnervation(final SoulEnervation card) {
super(card);
}
@Override
public SoulEnervation copy() {
return new SoulEnervation(this);
}
}

View file

@ -123,6 +123,7 @@ public final class MurdersAtKarlovManor extends ExpansionSet {
cards.add(new SetCardInfo("Shock", 144, Rarity.COMMON, mage.cards.s.Shock.class));
cards.add(new SetCardInfo("Slime Against Humanity", 177, Rarity.COMMON, mage.cards.s.SlimeAgainstHumanity.class));
cards.add(new SetCardInfo("Snarling Gorehound", 105, Rarity.COMMON, mage.cards.s.SnarlingGorehound.class));
cards.add(new SetCardInfo("Soul Enervation", 106, Rarity.UNCOMMON, mage.cards.s.SoulEnervation.class));
cards.add(new SetCardInfo("Steamcore Scholar", 71, Rarity.RARE, mage.cards.s.SteamcoreScholar.class));
cards.add(new SetCardInfo("Sumala Sentry", 233, Rarity.UNCOMMON, mage.cards.s.SumalaSentry.class));
cards.add(new SetCardInfo("Swamp", 274, Rarity.LAND, mage.cards.basiclands.Swamp.class, FULL_ART_BFZ_VARIOUS));