mirror of
https://github.com/correl/mage.git
synced 2024-12-26 03:00:11 +00:00
[MID] Implemented Dennick, Pious Apprentice // Dennick, Pious Apparition (#8279)
* [MID] Implemented Dennick, Pious Apprentice // Dennick, Pious Apparition * [MID] Refactored Dennick, Pious Apprentice // Dennick, Pious Apparition * small change Co-authored-by: Evan Kranzler <theelk801@gmail.com>
This commit is contained in:
parent
cf93e5d572
commit
c610807d51
3 changed files with 110 additions and 0 deletions
53
Mage.Sets/src/mage/cards/d/DennickPiousApparition.java
Normal file
53
Mage.Sets/src/mage/cards/d/DennickPiousApparition.java
Normal file
|
@ -0,0 +1,53 @@
|
|||
package mage.cards.d;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.PutCardIntoGraveFromAnywhereAllTriggeredAbility;
|
||||
import mage.abilities.common.PutIntoGraveFromAnywhereSourceAbility;
|
||||
import mage.abilities.effects.common.ExileSourceEffect;
|
||||
import mage.abilities.effects.keyword.InvestigateEffect;
|
||||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.constants.SuperType;
|
||||
import mage.constants.TargetController;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author LePwnerer
|
||||
*/
|
||||
public final class DennickPiousApparition extends CardImpl {
|
||||
|
||||
public DennickPiousApparition(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "");
|
||||
|
||||
this.addSuperType(SuperType.LEGENDARY);
|
||||
this.subtype.add(SubType.SPIRIT);
|
||||
this.subtype.add(SubType.SOLDIER);
|
||||
this.power = new MageInt(3);
|
||||
this.toughness = new MageInt(2);
|
||||
this.color.setWhite(true);
|
||||
this.color.setBlue(true);
|
||||
this.nightCard = true;
|
||||
|
||||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
// Whenever one or more creature cards are put into graveyards from anywhere, investigate. This ability triggers only once each turn.
|
||||
this.addAbility(new PutCardIntoGraveFromAnywhereAllTriggeredAbility(new InvestigateEffect(1), false, TargetController.ANY).setTriggersOnce(true));
|
||||
|
||||
// If Dennick, Pious Apparition would be put into a graveyard from anywhere, exile it instead.
|
||||
this.addAbility(new PutIntoGraveFromAnywhereSourceAbility(new ExileSourceEffect().setText("exile it instead")));
|
||||
}
|
||||
|
||||
private DennickPiousApparition(final DennickPiousApparition card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DennickPiousApparition copy() {
|
||||
return new DennickPiousApparition(this);
|
||||
}
|
||||
}
|
55
Mage.Sets/src/mage/cards/d/DennickPiousApprentice.java
Normal file
55
Mage.Sets/src/mage/cards/d/DennickPiousApprentice.java
Normal file
|
@ -0,0 +1,55 @@
|
|||
package mage.cards.d;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.SimpleStaticAbility;
|
||||
import mage.abilities.costs.mana.ManaCostsImpl;
|
||||
import mage.abilities.effects.common.CantBeTargetedCardsGraveyardsEffect;
|
||||
import mage.abilities.keyword.DisturbAbility;
|
||||
import mage.abilities.keyword.LifelinkAbility;
|
||||
import mage.abilities.keyword.TransformAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import mage.constants.SuperType;
|
||||
import mage.constants.Zone;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author LePwnerer
|
||||
*/
|
||||
public final class DennickPiousApprentice extends CardImpl {
|
||||
|
||||
public DennickPiousApprentice(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "{W}{U}");
|
||||
|
||||
this.addSuperType(SuperType.LEGENDARY);
|
||||
this.subtype.add(SubType.HUMAN);
|
||||
this.subtype.add(SubType.SOLDIER);
|
||||
this.power = new MageInt(2);
|
||||
this.toughness = new MageInt(3);
|
||||
this.transformable = true;
|
||||
this.secondSideCardClazz = mage.cards.d.DennickPiousApparition.class;
|
||||
|
||||
// Lifelink
|
||||
this.addAbility(LifelinkAbility.getInstance());
|
||||
|
||||
// Cards in graveyards can't be the targets of spells or abilities.
|
||||
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new CantBeTargetedCardsGraveyardsEffect()));
|
||||
|
||||
// Disturb {2}{W}{U}
|
||||
this.addAbility(new TransformAbility());
|
||||
this.addAbility(new DisturbAbility(new ManaCostsImpl<>("{2}{W}{U}")));
|
||||
|
||||
}
|
||||
|
||||
private DennickPiousApprentice(final DennickPiousApprentice card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DennickPiousApprentice copy() {
|
||||
return new DennickPiousApprentice(this);
|
||||
}
|
||||
}
|
|
@ -103,6 +103,8 @@ public final class InnistradMidnightHunt extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Defend the Celestus", 182, Rarity.UNCOMMON, mage.cards.d.DefendTheCelestus.class));
|
||||
cards.add(new SetCardInfo("Defenestrate", 95, Rarity.COMMON, mage.cards.d.Defenestrate.class));
|
||||
cards.add(new SetCardInfo("Delver of Secrets", 47, Rarity.UNCOMMON, mage.cards.d.DelverOfSecrets.class));
|
||||
cards.add(new SetCardInfo("Dennick, Pious Apparition", 217, Rarity.RARE, mage.cards.d.DennickPiousApparition.class));
|
||||
cards.add(new SetCardInfo("Dennick, Pious Apprentice", 217, Rarity.RARE, mage.cards.d.DennickPiousApprentice.class));
|
||||
cards.add(new SetCardInfo("Departed Soulkeeper", 218, Rarity.UNCOMMON, mage.cards.d.DepartedSoulkeeper.class));
|
||||
cards.add(new SetCardInfo("Deserted Beach", 260, Rarity.RARE, mage.cards.d.DesertedBeach.class));
|
||||
cards.add(new SetCardInfo("Devious Cover-Up", 48, Rarity.COMMON, mage.cards.d.DeviousCoverUp.class));
|
||||
|
|
Loading…
Reference in a new issue