[DSK] Implement Defiled Crypt // Cadaver Lab

This commit is contained in:
theelk801 2025-12-07 14:47:32 -05:00
parent 520c3a36e5
commit 1901058a73
2 changed files with 45 additions and 0 deletions

View file

@ -0,0 +1,44 @@
package mage.cards.d;
import mage.abilities.Ability;
import mage.abilities.common.CardsLeaveGraveyardTriggeredAbility;
import mage.abilities.common.UnlockThisDoorTriggeredAbility;
import mage.abilities.effects.common.CreateTokenEffect;
import mage.abilities.effects.common.ReturnFromGraveyardToHandTargetEffect;
import mage.cards.CardSetInfo;
import mage.cards.RoomCard;
import mage.filter.StaticFilters;
import mage.game.permanent.token.HorrorEnchantmentCreatureToken;
import mage.target.common.TargetCardInYourGraveyard;
import java.util.UUID;
/**
* @author TheElk801
*/
public final class DefiledCryptCadaverLab extends RoomCard {
public DefiledCryptCadaverLab(UUID ownerId, CardSetInfo setInfo) {
super(ownerId, setInfo, "{3}{B}", "{B}");
// Defiled Crypt
// Whenever one or more cards leave your graveyard, create a 2/2 black Horror enchantment creature token. This ability triggers only once each turn.
this.getLeftHalfCard().addAbility(new CardsLeaveGraveyardTriggeredAbility(
new CreateTokenEffect(new HorrorEnchantmentCreatureToken())
).setTriggersLimitEachTurn(1));
// Cadaver Lab
// When you unlock this door, return target creature card from your graveyard to your hand.
Ability ability = new UnlockThisDoorTriggeredAbility(new ReturnFromGraveyardToHandTargetEffect(), false, false);
ability.addTarget(new TargetCardInYourGraveyard(StaticFilters.FILTER_CARD_CREATURE_YOUR_GRAVEYARD));
this.getRightHalfCard().addAbility(ability);
}
private DefiledCryptCadaverLab(final DefiledCryptCadaverLab card) {
super(card);
}
@Override
public DefiledCryptCadaverLab copy() {
return new DefiledCryptCadaverLab(this);
}
}

View file

@ -73,6 +73,7 @@ public final class DuskmournHouseOfHorror extends ExpansionSet {
cards.add(new SetCardInfo("Dazzling Theater // Prop Room", 3, Rarity.RARE, mage.cards.d.DazzlingTheaterPropRoom.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Dazzling Theater // Prop Room", 334, Rarity.RARE, mage.cards.d.DazzlingTheaterPropRoom.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Defiant Survivor", 175, Rarity.UNCOMMON, mage.cards.d.DefiantSurvivor.class));
cards.add(new SetCardInfo("Defiled Crypt // Cadaver Lab", 91, Rarity.UNCOMMON, mage.cards.d.DefiledCryptCadaverLab.class));
cards.add(new SetCardInfo("Demonic Counsel", 310, Rarity.RARE, mage.cards.d.DemonicCounsel.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Demonic Counsel", 92, Rarity.RARE, mage.cards.d.DemonicCounsel.class, NON_FULL_USE_VARIOUS));
cards.add(new SetCardInfo("Dissection Tools", 245, Rarity.RARE, mage.cards.d.DissectionTools.class, NON_FULL_USE_VARIOUS));