mirror of
https://github.com/magefree/mage.git
synced 2026-01-26 21:29:17 -08:00
[LCI] Implement Visage of Dread / Dread Osseosaur
This commit is contained in:
parent
d08c61c2ad
commit
fc51543bab
3 changed files with 95 additions and 0 deletions
47
Mage.Sets/src/mage/cards/d/DreadOsseosaur.java
Normal file
47
Mage.Sets/src/mage/cards/d/DreadOsseosaur.java
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
package mage.cards.d;
|
||||
|
||||
import mage.MageInt;
|
||||
import mage.abilities.common.EntersBattlefieldOrAttacksSourceTriggeredAbility;
|
||||
import mage.abilities.effects.common.MillCardsControllerEffect;
|
||||
import mage.abilities.keyword.MenaceAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class DreadOsseosaur extends CardImpl {
|
||||
|
||||
public DreadOsseosaur(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.CREATURE}, "");
|
||||
|
||||
this.subtype.add(SubType.DINOSAUR);
|
||||
this.subtype.add(SubType.SKELETON);
|
||||
this.subtype.add(SubType.HORROR);
|
||||
this.power = new MageInt(5);
|
||||
this.toughness = new MageInt(4);
|
||||
this.nightCard = true;
|
||||
this.color.setBlack(true);
|
||||
|
||||
// Menace
|
||||
this.addAbility(new MenaceAbility());
|
||||
|
||||
// Whenever Dread Osseosaur enters the battlefield or attacks, you may mill two cards.
|
||||
this.addAbility(new EntersBattlefieldOrAttacksSourceTriggeredAbility(
|
||||
new MillCardsControllerEffect(2), true
|
||||
));
|
||||
}
|
||||
|
||||
private DreadOsseosaur(final DreadOsseosaur card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DreadOsseosaur copy() {
|
||||
return new DreadOsseosaur(this);
|
||||
}
|
||||
}
|
||||
46
Mage.Sets/src/mage/cards/v/VisageOfDread.java
Normal file
46
Mage.Sets/src/mage/cards/v/VisageOfDread.java
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
package mage.cards.v;
|
||||
|
||||
import mage.abilities.Ability;
|
||||
import mage.abilities.common.EntersBattlefieldTriggeredAbility;
|
||||
import mage.abilities.effects.common.discard.DiscardCardYouChooseTargetEffect;
|
||||
import mage.abilities.keyword.CraftAbility;
|
||||
import mage.cards.CardImpl;
|
||||
import mage.cards.CardSetInfo;
|
||||
import mage.constants.CardType;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.common.TargetOpponent;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
public final class VisageOfDread extends CardImpl {
|
||||
|
||||
public VisageOfDread(UUID ownerId, CardSetInfo setInfo) {
|
||||
super(ownerId, setInfo, new CardType[]{CardType.ARTIFACT}, "{1}{B}");
|
||||
this.secondSideCardClazz = mage.cards.d.DreadOsseosaur.class;
|
||||
|
||||
// When Visage of Dread enters the battlefield, target opponent reveals their hand. You choose an artifact or creature card from it. That player discards that card.
|
||||
Ability ability = new EntersBattlefieldTriggeredAbility(
|
||||
new DiscardCardYouChooseTargetEffect(StaticFilters.FILTER_CARD_ARTIFACT_OR_CREATURE)
|
||||
);
|
||||
ability.addTarget(new TargetOpponent());
|
||||
this.addAbility(ability);
|
||||
|
||||
// Craft with two creatures {5}{B}
|
||||
this.addAbility(new CraftAbility(
|
||||
"{5}{B}", "creatures", "other creatures you control and/or " +
|
||||
"creature cards in your graveyard", 2, 2, CardType.CREATURE.getPredicate()
|
||||
));
|
||||
}
|
||||
|
||||
private VisageOfDread(final VisageOfDread card) {
|
||||
super(card);
|
||||
}
|
||||
|
||||
@Override
|
||||
public VisageOfDread copy() {
|
||||
return new VisageOfDread(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -97,6 +97,7 @@ public final class TheLostCavernsOfIxalan extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Dire Flail", 145, Rarity.RARE, mage.cards.d.DireFlail.class));
|
||||
cards.add(new SetCardInfo("Disruptor Wanderglyph", 253, Rarity.COMMON, mage.cards.d.DisruptorWanderglyph.class));
|
||||
cards.add(new SetCardInfo("Dowsing Device", 146, Rarity.UNCOMMON, mage.cards.d.DowsingDevice.class));
|
||||
cards.add(new SetCardInfo("Dread Osseosaur", 129, Rarity.UNCOMMON, mage.cards.d.DreadOsseosaur.class));
|
||||
cards.add(new SetCardInfo("Dreadmaw's Ire", 147, Rarity.UNCOMMON, mage.cards.d.DreadmawsIre.class));
|
||||
cards.add(new SetCardInfo("Dusk Rose Reliquary", 10, Rarity.UNCOMMON, mage.cards.d.DuskRoseReliquary.class));
|
||||
cards.add(new SetCardInfo("Earthshaker Dreadmaw", 183, Rarity.UNCOMMON, mage.cards.e.EarthshakerDreadmaw.class));
|
||||
|
|
@ -293,6 +294,7 @@ public final class TheLostCavernsOfIxalan extends ExpansionSet {
|
|||
cards.add(new SetCardInfo("Uchbenbak, the Great Mistake", 242, Rarity.UNCOMMON, mage.cards.u.UchbenbakTheGreatMistake.class));
|
||||
cards.add(new SetCardInfo("Unlucky Drop", 82, Rarity.COMMON, mage.cards.u.UnluckyDrop.class));
|
||||
cards.add(new SetCardInfo("Vanguard of the Rose", 42, Rarity.UNCOMMON, mage.cards.v.VanguardOfTheRose.class));
|
||||
cards.add(new SetCardInfo("Visage of Dread", 129, Rarity.UNCOMMON, mage.cards.v.VisageOfDread.class));
|
||||
cards.add(new SetCardInfo("Vito's Inquisitor", 130, Rarity.COMMON, mage.cards.v.VitosInquisitor.class));
|
||||
cards.add(new SetCardInfo("Vito, Fanatic of Aclazotz", 243, Rarity.MYTHIC, mage.cards.v.VitoFanaticOfAclazotz.class));
|
||||
cards.add(new SetCardInfo("Volatile Fault", 286, Rarity.UNCOMMON, mage.cards.v.VolatileFault.class));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue